Overview | Project | Class | Tree | Deprecated | Index
| Nestopia Core API
FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## api
Class Nes::Api::Nsf

    Base
       |
       +--Nes::Api::Nsf

class Nes::Api::Nsf
extends Base

NES Sound Files interface.

Inner Classes, Typedefs, and Enums
`enum` | `Nes::Api::Nsf::Event` Event.
`typedef` | `Nes::Api::Nsf::EventCallback` Event callback prototype.
`enum` | `Nes::Api::Nsf::TuneMode` Tune mode.

Field Summary
`static Nes::Api::Nsf::EventCaller` | `eventCallback` Event callback manager.

Constructor Summary
`Nsf( T& instance )` Interface constructor.

Method Summary
`const char*` | `GetArtist() const` Returns the name of the artists.
`uint` | `GetChips() const` Returns the OR:ed chips in use.
`const char*` | `GetCopyright() const` Returns the copyright string.
`int` | `GetCurrentSong() const` Returns the current song index.
`uint` | `GetInitAddress() const` Returns the init-address.
`uint` | `GetLoadAddress() const` Returns the load-address.
`Nes::Api::Nsf::TuneMode` | `GetMode() const` Return the tune mode.
`const char*` | `GetName() const` Returns the name of the NSF.
`uint` | `GetNumSongs() const` Returns the total number of songs.
`uint` | `GetPlayAddress() const` Returns the play-address.
`int` | `GetStartingSong() const` Returns the starting song index.
`bool` | `IsPlaying() const` Checks if a song is currently being played.
`Result` | `PlaySong()` Plays current selected song.
`Result` | `SelectNextSong()` Selects the next song.
`Result` | `SelectPrevSong()` Selects the previous song.
`Result` | `SelectSong( uint song )` Selects a song.
`Result` | `StopSong()` Stops current selected song.
`bool` | `UsesBankSwitching() const` Checks if the NSF uses bank-switching.

Field Detail

### eventCallback

    public static Nes::Api::Nsf::EventCaller eventCallback;

  Event callback manager. Static object used for adding the user defined callback.

Constructor Detail

### Nsf

    public Nsf( T& instance );

  Interface constructor.

Parameters:
  `instance` - emulator instance

Method Detail

### GetArtist

    public const char* GetArtist() const throw();

  Returns the name of the artists.

Returns:
  artist names or empty string if NSF hasn't been loaded

### GetChips

    public uint GetChips() const throw();

  Returns the OR:ed chips in use.

Returns:
  OR:ed chips used

### GetCopyright

    public const char* GetCopyright() const throw();

  Returns the copyright string.

Returns:
  copyright or empty string if NSF hasn't been loaded

### GetCurrentSong

    public int GetCurrentSong() const throw();

  Returns the current song index.

Returns:
  song index or NO_SONG if NSF hasn't been loaded

### GetInitAddress

    public uint GetInitAddress() const throw();

  Returns the init-address.

Returns:
  address

### GetLoadAddress

    public uint GetLoadAddress() const throw();

  Returns the load-address.

Returns:
  address

### GetMode

    public Nes::Api::Nsf::TuneMode GetMode() const throw();

  Return the tune mode.

Returns:
  tune mode

### GetName

    public const char* GetName() const throw();

  Returns the name of the NSF.

Returns:
  name or empty string if NSF hasn't been loaded

### GetNumSongs

    public uint GetNumSongs() const throw();

  Returns the total number of songs.

Returns:
  number

### GetPlayAddress

    public uint GetPlayAddress() const throw();

  Returns the play-address.

Returns:
  address

### GetStartingSong

    public int GetStartingSong() const throw();

  Returns the starting song index.

Returns:
  song index or NO_SONG if NSF hasn't been loaded

### IsPlaying

    public bool IsPlaying() const throw();

  Checks if a song is currently being played.

Returns:
  true if playing

### PlaySong

    public Result PlaySong() throw();

  Plays current selected song.

Returns:
  result code

### SelectNextSong

    public Result SelectNextSong() throw();

  Selects the next song.

Returns:
  result code

### SelectPrevSong

    public Result SelectPrevSong() throw();

  Selects the previous song.

Returns:
  result code

### SelectSong

    public Result SelectSong( uint song ) throw();

  Selects a song.

Parameters:
  `song` - index
Returns:
  result code

### StopSong

    public Result StopSong() throw();

  Stops current selected song.

Returns:
  result code

### UsesBankSwitching

    public bool UsesBankSwitching() const throw();

  Checks if the NSF uses bank-switching.

Returns:
  true if NSF uses bank-switching

Overview | Project | Class | Tree | Deprecated | Index
| Nestopia Core API
FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD