LMMS
Loading...
Searching...
No Matches
Spc_Emu Class Reference

#include <Spc_Emu.h>

Inheritance diagram for Spc_Emu:
Music_Emu Gme_File

Classes

struct  header_t

Public Types

enum  { native_sample_rate = 32000 }
enum  { header_size = 0x100 }
Public Types inherited from Music_Emu
typedef short sample_t
typedef gme_equalizer_t equalizer_t
Public Types inherited from Gme_File
enum  { max_field_ = 255 }

Public Member Functions

header_t constheader () const
void disable_surround (bool disable=true)
blargg_err_t load (header_t const &h, Data_Reader &in)
byte consttrailer () const
long trailer_size () const
 Spc_Emu ()
 ~Spc_Emu ()
Public Member Functions inherited from Music_Emu
blargg_err_t set_sample_rate (long sample_rate)
virtual blargg_err_t set_multi_channel (bool is_enabled)
blargg_err_t start_track (int)
blargg_err_t play (long count, sample_t *buf)
long sample_rate () const
int current_track () const
int voice_count () const
const char ** voice_names () const
bool multi_channel () const
long tell () const
long tell_samples () const
blargg_err_t seek (long msec)
blargg_err_t seek_samples (long n)
blargg_err_t skip (long n)
bool track_ended () const
void set_fade (long start_msec, long length_msec=8000)
void ignore_silence (bool disable=true)
blargg_err_t track_info (track_info_t *out) const
void set_tempo (double)
void mute_voice (int index, bool mute=true)
void mute_voices (int mask)
void set_gain (double)
virtual void set_buffer (Multi_Buffer *)
void enable_accuracy (bool enable=true)
equalizer_t constequalizer () const
void set_equalizer (equalizer_t const &)
 Music_Emu ()
 ~Music_Emu ()
blargg_err_t track_info (track_info_t *out, int track) const
Public Member Functions inherited from Gme_File
blargg_err_t load_file (const char *path)
blargg_err_t load (Data_Reader &)
blargg_err_t load_mem (void const *data, long size)
blargg_err_t load_m3u (const char *path)
blargg_err_t load_m3u (Data_Reader &in)
void clear_playlist ()
gme_type_t type () const
const char * warning ()
int track_count () const
blargg_err_t track_info (track_info_t *out, int track) const
void set_user_data (void *p)
voiduser_data () const
void set_user_cleanup (gme_user_cleanup_t func)
int error_count () const
 Gme_File ()
virtual ~Gme_File ()
blargg_err_t remap_track_ (int *track_io) const

Static Public Member Functions

static gme_type_t static_type ()
Static Public Member Functions inherited from Music_Emu
static const equalizer_t make_equalizer (double treble, double bass)
Static Public Member Functions inherited from Gme_File
static void copy_field_ (char *out, const char *in)
static void copy_field_ (char *out, const char *in, int len)

Protected Member Functions

blargg_err_t load_mem_ (byte const *, long)
blargg_err_t track_info_ (track_info_t *, int track) const
blargg_err_t set_sample_rate_ (long)
blargg_err_t start_track_ (int)
blargg_err_t play_ (long, sample_t *)
blargg_err_t skip_ (long)
void mute_voices_ (int)
void set_tempo_ (double)
void enable_accuracy_ (bool)
Protected Member Functions inherited from Music_Emu
void set_max_initial_silence (int n)
void set_silence_lookahead (int n)
void set_voice_count (int n)
void set_voice_names (const char *const *names)
void set_track_ended ()
double gain () const
double tempo () const
void remute_voices ()
blargg_err_t set_multi_channel_ (bool is_enabled)
virtual void set_equalizer_ (equalizer_t const &)
virtual void unload ()
virtual void pre_load ()
virtual void post_load_ ()
Protected Member Functions inherited from Gme_File
void set_track_count (int n)
void set_warning (const char *s)
void set_type (gme_type_t t)
blargg_err_t load_remaining_ (void const *header, long header_size, Data_Reader &remaining)
virtual blargg_err_t load_ (Data_Reader &)
virtual void clear_playlist_ ()

Private Member Functions

blargg_err_t play_and_filter (long count, sample_t out[])

Private Attributes

byte constfile_data
long file_size
Fir_Resampler< 24 > resampler
SPC_Filter filter
Snes_Spc apu

Additional Inherited Members

Public Attributes inherited from Gme_File
BLARGG_DISABLE_NOTHROW typedef uint8_t byte
Static Public Attributes inherited from Music_Emu
static equalizer_t const tv_eq

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
header_size 

◆ anonymous enum

anonymous enum
Enumerator
native_sample_rate 

Constructor & Destructor Documentation

◆ Spc_Emu()

Spc_Emu::Spc_Emu ( )

◆ ~Spc_Emu()

Spc_Emu::~Spc_Emu ( )

Member Function Documentation

◆ disable_surround()

void Spc_Emu::disable_surround ( bool disable = true)
inline

◆ enable_accuracy_()

void Spc_Emu::enable_accuracy_ ( bool b)
protectedvirtual

Reimplemented from Music_Emu.

◆ header()

header_t const & Spc_Emu::header ( ) const
inline

◆ load()

blargg_err_t Spc_Emu::load ( header_t const & h,
Data_Reader & in )
inline

◆ load_mem_()

blargg_err_t Spc_Emu::load_mem_ ( byte const * in,
long size )
protectedvirtual

Reimplemented from Gme_File.

◆ mute_voices_()

void Spc_Emu::mute_voices_ ( int m)
protectedvirtual

Implements Music_Emu.

◆ play_()

blargg_err_t Spc_Emu::play_ ( long count,
sample_t * out )
protectedvirtual

Implements Music_Emu.

◆ play_and_filter()

blargg_err_t Spc_Emu::play_and_filter ( long count,
sample_t out[] )
private

◆ set_sample_rate_()

blargg_err_t Spc_Emu::set_sample_rate_ ( long sample_rate)
protectedvirtual

Implements Music_Emu.

◆ set_tempo_()

void Spc_Emu::set_tempo_ ( double t)
protectedvirtual

Implements Music_Emu.

◆ skip_()

blargg_err_t Spc_Emu::skip_ ( long count)
protectedvirtual

Reimplemented from Music_Emu.

◆ start_track_()

blargg_err_t Spc_Emu::start_track_ ( int track)
protectedvirtual

Implements Music_Emu.

◆ static_type()

gme_type_t Spc_Emu::static_type ( )
inlinestatic

◆ track_info_()

blargg_err_t Spc_Emu::track_info_ ( track_info_t * out,
int track ) const
protectedvirtual

Implements Gme_File.

◆ trailer()

byte const * Spc_Emu::trailer ( ) const

◆ trailer_size()

long Spc_Emu::trailer_size ( ) const

Member Data Documentation

◆ apu

Snes_Spc Spc_Emu::apu
private

◆ file_data

byte const* Spc_Emu::file_data
private

◆ file_size

long Spc_Emu::file_size
private

◆ filter

SPC_Filter Spc_Emu::filter
private

◆ resampler

Fir_Resampler<24> Spc_Emu::resampler
private

The documentation for this class was generated from the following files: