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

#include <Vgm_Emu_Impl.h>

Inheritance diagram for Vgm_Emu_Impl:
Classic_Emu Dual_Resampler Music_Emu Gme_File Vgm_Emu

Public Types

typedef Classic_Emu::sample_t sample_t
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 }

Protected Types

enum  { stereo = 2 }
enum  { fm_time_bits = 12 }
enum  { blip_time_bits = 12 }
typedef int vgm_time_t
typedef int fm_time_t
Protected Types inherited from Classic_Emu
enum  { wave_type = 0x100 , noise_type = 0x200 , mixed_type = wave_type | noise_type }

Protected Member Functions

fm_time_t to_fm_time (vgm_time_t) const
blip_time_t to_blip_time (vgm_time_t) const
void update_fm_rates (long *ym2413_rate, long *ym2612_rate) const
blip_time_t run_commands (vgm_time_t)
int play_frame (blip_time_t blip_time, int sample_count, sample_t *buf)
void write_pcm (vgm_time_t, int amp)
Protected Member Functions inherited from Classic_Emu
void set_voice_types (int const *t)
blargg_err_t setup_buffer (long clock_rate)
long clock_rate () const
void change_clock_rate (long)
virtual void set_voice (int index, Blip_Buffer *center, Blip_Buffer *left, Blip_Buffer *right)=0
virtual void update_eq (blip_eq_t const &)=0
virtual blargg_err_t start_track_ (int track)=0
virtual blargg_err_t run_clocks (blip_time_t &time_io, int msec)=0
blargg_err_t set_sample_rate_ (long sample_rate)
void mute_voices_ (int)
void set_equalizer_ (equalizer_t const &)
blargg_err_t play_ (long, sample_t *)
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 enable_accuracy_ (bool)
virtual void set_tempo_ (double)=0
virtual blargg_err_t skip_ (long count)
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 blargg_err_t load_mem_ (byte const *data, long size)
virtual blargg_err_t track_info_ (track_info_t *out, int track) const =0
virtual void clear_playlist_ ()

Protected Attributes

long fm_time_offset
int fm_time_factor
int blip_time_factor
byte constdata
byte constloop_begin
byte constdata_end
vgm_time_t vgm_time
byte constpos
byte constpcm_data
byte constpcm_pos
int dac_amp
int dac_disabled
Ym_Emu< Ym2612_Emuym2612
Ym_Emu< Ym2413_Emuym2413
Blip_Buffer blip_buf
Sms_Apu psg
Blip_Synth< blip_med_quality, 1 > dac_synth

Friends

class Vgm_Emu

Additional Inherited Members

Public Member Functions inherited from Classic_Emu
 Classic_Emu ()
 ~Classic_Emu ()
void set_buffer (Multi_Buffer *)
blargg_err_t set_multi_channel (bool is_enabled) override
Public Member Functions inherited from Music_Emu
blargg_err_t set_sample_rate (long sample_rate)
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)
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 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)
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
Private Types inherited from Dual_Resampler
typedef short dsample_t
Private Member Functions inherited from Dual_Resampler
 Dual_Resampler ()
virtual ~Dual_Resampler ()
double setup (double oversample, double rolloff, double gain)
blargg_err_t reset (int max_pairs)
void resize (int pairs_per_frame)
void clear ()
void dual_play (long count, dsample_t *out, Blip_Buffer &)

Member Typedef Documentation

◆ fm_time_t

typedef int Vgm_Emu_Impl::fm_time_t
protected

◆ sample_t

◆ vgm_time_t

typedef int Vgm_Emu_Impl::vgm_time_t
protected

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
fm_time_bits 

◆ anonymous enum

anonymous enum
protected
Enumerator
stereo 

◆ anonymous enum

anonymous enum
protected
Enumerator
blip_time_bits 

Member Function Documentation

◆ play_frame()

int Vgm_Emu_Impl::play_frame ( blip_time_t blip_time,
int sample_count,
sample_t * buf )
protectedvirtual

Implements Dual_Resampler.

◆ run_commands()

blip_time_t Vgm_Emu_Impl::run_commands ( vgm_time_t end_time)
protected

◆ to_blip_time()

blip_time_t Vgm_Emu_Impl::to_blip_time ( vgm_time_t t) const
inlineprotected

◆ to_fm_time()

Vgm_Emu_Impl::fm_time_t Vgm_Emu_Impl::to_fm_time ( vgm_time_t t) const
inlineprotected

◆ update_fm_rates()

void Vgm_Emu_Impl::update_fm_rates ( long * ym2413_rate,
long * ym2612_rate ) const
protected

◆ write_pcm()

void Vgm_Emu_Impl::write_pcm ( vgm_time_t vgm_time,
int amp )
protected

◆ Vgm_Emu

friend class Vgm_Emu
friend

Member Data Documentation

◆ blip_buf

Blip_Buffer Vgm_Emu_Impl::blip_buf
protected

◆ blip_time_factor

int Vgm_Emu_Impl::blip_time_factor
protected

◆ dac_amp

int Vgm_Emu_Impl::dac_amp
protected

◆ dac_disabled

int Vgm_Emu_Impl::dac_disabled
protected

◆ dac_synth

Blip_Synth<blip_med_quality,1> Vgm_Emu_Impl::dac_synth
protected

◆ data

byte const* Vgm_Emu_Impl::data
protected

◆ data_end

byte const* Vgm_Emu_Impl::data_end
protected

◆ fm_time_factor

int Vgm_Emu_Impl::fm_time_factor
protected

◆ fm_time_offset

long Vgm_Emu_Impl::fm_time_offset
protected

◆ loop_begin

byte const* Vgm_Emu_Impl::loop_begin
protected

◆ pcm_data

byte const* Vgm_Emu_Impl::pcm_data
protected

◆ pcm_pos

byte const* Vgm_Emu_Impl::pcm_pos
protected

◆ pos

byte const* Vgm_Emu_Impl::pos
protected

◆ psg

Sms_Apu Vgm_Emu_Impl::psg
protected

◆ vgm_time

vgm_time_t Vgm_Emu_Impl::vgm_time
protected

◆ ym2413

Ym_Emu<Ym2413_Emu> Vgm_Emu_Impl::ym2413
protected

◆ ym2612

Ym_Emu<Ym2612_Emu> Vgm_Emu_Impl::ym2612
protected

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