LMMS
Loading...
Searching...
No Matches
Music_Emu Struct Referenceabstract

#include <Music_Emu.h>

Inheritance diagram for Music_Emu:
Gme_File Classic_Emu Gme_Info_ Gym_Emu Spc_Emu Ay_Emu Gbs_Emu Hes_Emu Kss_Emu Nsf_Emu Sap_Emu Vgm_Emu_Impl Ay_File Gbs_File Gym_File Hes_File Kss_File Nsf_File Nsfe_File Sap_File Spc_File Vgm_File

Public Types

typedef short sample_t
typedef gme_equalizer_t equalizer_t
Public Types inherited from Gme_File
enum  { max_field_ = 255 }

Public Member Functions

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 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)

Static Public Attributes

static equalizer_t const tv_eq

Protected Member Functions

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 blargg_err_t set_sample_rate_ (long sample_rate)=0
virtual void set_equalizer_ (equalizer_t const &)
virtual void enable_accuracy_ (bool)
virtual void mute_voices_ (int mask)=0
virtual void set_tempo_ (double)=0
virtual blargg_err_t start_track_ (int)=0
virtual blargg_err_t play_ (long count, sample_t *out)=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_ ()

Private Types

enum  { buf_size = 2048 }

Private Member Functions

int out_channels () const
blargg_long msec_to_samples (blargg_long msec) const
void clear_track_vars ()
void end_track_if_error (blargg_err_t)
void handle_fade (long count, sample_t *out)
void fill_buf ()
void emu_play (long count, sample_t *out)

Private Attributes

equalizer_t equalizer_
int max_initial_silence
const char ** voice_names_
int voice_count_
int mute_mask_
double tempo_
double gain_
bool multi_channel_
long sample_rate_
int current_track_
blargg_long out_time
blargg_long emu_time
bool emu_track_ended_
volatile bool track_ended_
blargg_long fade_start
int fade_step
int silence_lookahead
bool ignore_silence_
long silence_time
long silence_count
long buf_remain
blargg_vector< sample_tbuf
Multi_Buffereffects_buffer

Friends

Music_Emugme_internal_new_emu_ (gme_type_t type, int rate, bool multi_channel)
void gme_set_stereo_depth (Music_Emu *me, double depth)

Additional Inherited Members

Public Attributes inherited from Gme_File
BLARGG_DISABLE_NOTHROW typedef uint8_t byte

Member Typedef Documentation

◆ equalizer_t

◆ sample_t

typedef short Music_Emu::sample_t

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
buf_size 

Constructor & Destructor Documentation

◆ Music_Emu()

Music_Emu::Music_Emu ( )

◆ ~Music_Emu()

Music_Emu::~Music_Emu ( )

Member Function Documentation

◆ clear_track_vars()

void Music_Emu::clear_track_vars ( )
private

◆ current_track()

int Music_Emu::current_track ( ) const
inline

◆ emu_play()

void Music_Emu::emu_play ( long count,
sample_t * out )
private

◆ enable_accuracy()

void Music_Emu::enable_accuracy ( bool enable = true)
inline

◆ enable_accuracy_()

virtual void Music_Emu::enable_accuracy_ ( bool )
inlineprotectedvirtual

Reimplemented in Gme_Info_, and Spc_Emu.

◆ end_track_if_error()

void Music_Emu::end_track_if_error ( blargg_err_t err)
private

◆ equalizer()

const Music_Emu::equalizer_t & Music_Emu::equalizer ( ) const
inline

◆ fill_buf()

void Music_Emu::fill_buf ( )
private

◆ gain()

double Music_Emu::gain ( ) const
inlineprotected

◆ handle_fade()

void Music_Emu::handle_fade ( long count,
sample_t * out )
private

◆ ignore_silence()

void Music_Emu::ignore_silence ( bool disable = true)
inline

◆ make_equalizer()

const equalizer_t Music_Emu::make_equalizer ( double treble,
double bass )
inlinestatic

◆ msec_to_samples()

blargg_long Music_Emu::msec_to_samples ( blargg_long msec) const
private

◆ multi_channel()

bool Music_Emu::multi_channel ( ) const

◆ mute_voice()

void Music_Emu::mute_voice ( int index,
bool mute = true )

◆ mute_voices()

void Music_Emu::mute_voices ( int mask)

◆ mute_voices_()

void Music_Emu::mute_voices_ ( int mask)
inlineprotectedpure virtual

Implemented in Classic_Emu, Gme_Info_, Gym_Emu, Spc_Emu, and Vgm_Emu.

◆ out_channels()

int Music_Emu::out_channels ( ) const
inlineprivate

◆ play()

blargg_err_t Music_Emu::play ( long count,
sample_t * buf )

◆ play_()

virtual blargg_err_t Music_Emu::play_ ( long count,
sample_t * out )
protectedpure virtual

Implemented in Classic_Emu, Gme_Info_, Gym_Emu, Spc_Emu, and Vgm_Emu.

◆ post_load_()

void Music_Emu::post_load_ ( )
protectedvirtual

Reimplemented from Gme_File.

Reimplemented in Gme_Info_.

◆ pre_load()

void Music_Emu::pre_load ( )
protectedvirtual

Reimplemented from Gme_File.

Reimplemented in Gme_Info_.

◆ remute_voices()

void Music_Emu::remute_voices ( )
inlineprotected

◆ sample_rate()

long Music_Emu::sample_rate ( ) const
inline

◆ seek()

blargg_err_t Music_Emu::seek ( long msec)

◆ seek_samples()

blargg_err_t Music_Emu::seek_samples ( long n)

◆ set_buffer()

virtual void Music_Emu::set_buffer ( Multi_Buffer * )
inlinevirtual

Reimplemented in Classic_Emu.

◆ set_equalizer()

void Music_Emu::set_equalizer ( equalizer_t const & eq)

◆ set_equalizer_()

virtual void Music_Emu::set_equalizer_ ( equalizer_t const & )
inlineprotectedvirtual

Reimplemented in Classic_Emu, and Gme_Info_.

◆ set_fade()

void Music_Emu::set_fade ( long start_msec,
long length_msec = 8000 )

◆ set_gain()

void Music_Emu::set_gain ( double g)
inline

◆ set_max_initial_silence()

void Music_Emu::set_max_initial_silence ( int n)
inlineprotected

◆ set_multi_channel()

blargg_err_t Music_Emu::set_multi_channel ( bool is_enabled)
virtual

Reimplemented in Classic_Emu, and Vgm_Emu.

◆ set_multi_channel_()

blargg_err_t Music_Emu::set_multi_channel_ ( bool is_enabled)
protected

◆ set_sample_rate()

blargg_err_t Music_Emu::set_sample_rate ( long sample_rate)

◆ set_sample_rate_()

virtual blargg_err_t Music_Emu::set_sample_rate_ ( long sample_rate)
protectedpure virtual

Implemented in Classic_Emu, Gme_Info_, Gym_Emu, Spc_Emu, and Vgm_Emu.

◆ set_silence_lookahead()

void Music_Emu::set_silence_lookahead ( int n)
inlineprotected

◆ set_tempo()

void Music_Emu::set_tempo ( double t)

◆ set_tempo_()

void Music_Emu::set_tempo_ ( double t)
inlineprotectedpure virtual

◆ set_track_ended()

void Music_Emu::set_track_ended ( )
inlineprotected

◆ set_voice_count()

void Music_Emu::set_voice_count ( int n)
inlineprotected

◆ set_voice_names()

void Music_Emu::set_voice_names ( const char *const * names)
inlineprotected

◆ skip()

blargg_err_t Music_Emu::skip ( long n)

◆ skip_()

blargg_err_t Music_Emu::skip_ ( long count)
protectedvirtual

Reimplemented in Spc_Emu.

◆ start_track()

blargg_err_t Music_Emu::start_track ( int track)

◆ start_track_()

blargg_err_t Music_Emu::start_track_ ( int )
inlineprotectedpure virtual

◆ tell()

long Music_Emu::tell ( ) const

◆ tell_samples()

long Music_Emu::tell_samples ( ) const

◆ tempo()

double Music_Emu::tempo ( ) const
inlineprotected

◆ track_ended()

bool Music_Emu::track_ended ( ) const
inline

◆ track_info() [1/2]

blargg_err_t Music_Emu::track_info ( track_info_t * out) const
inline

◆ track_info() [2/2]

blargg_err_t Gme_File::track_info ( track_info_t * out,
int track ) const

◆ unload()

void Music_Emu::unload ( )
protectedvirtual

Reimplemented from Gme_File.

Reimplemented in Gbs_Emu, Hes_Emu, Kss_Emu, Nsf_Emu, and Nsfe_Emu.

◆ voice_count()

int Music_Emu::voice_count ( ) const
inline

◆ voice_names()

const char ** Music_Emu::voice_names ( ) const
inline

◆ gme_internal_new_emu_

Music_Emu * gme_internal_new_emu_ ( gme_type_t type,
int rate,
bool multi_channel )
friend

◆ gme_set_stereo_depth

void gme_set_stereo_depth ( Music_Emu * me,
double depth )
friend

Member Data Documentation

◆ buf

blargg_vector<sample_t> Music_Emu::buf
private

◆ buf_remain

long Music_Emu::buf_remain
private

◆ current_track_

int Music_Emu::current_track_
private

◆ effects_buffer

Multi_Buffer* Music_Emu::effects_buffer
private

◆ emu_time

blargg_long Music_Emu::emu_time
private

◆ emu_track_ended_

bool Music_Emu::emu_track_ended_
private

◆ equalizer_

equalizer_t Music_Emu::equalizer_
private

◆ fade_start

blargg_long Music_Emu::fade_start
private

◆ fade_step

int Music_Emu::fade_step
private

◆ gain_

double Music_Emu::gain_
private

◆ ignore_silence_

bool Music_Emu::ignore_silence_
private

◆ max_initial_silence

int Music_Emu::max_initial_silence
private

◆ multi_channel_

bool Music_Emu::multi_channel_
private

◆ mute_mask_

int Music_Emu::mute_mask_
private

◆ out_time

blargg_long Music_Emu::out_time
private

◆ sample_rate_

long Music_Emu::sample_rate_
private

◆ silence_count

long Music_Emu::silence_count
private

◆ silence_lookahead

int Music_Emu::silence_lookahead
private

◆ silence_time

long Music_Emu::silence_time
private

◆ tempo_

double Music_Emu::tempo_
private

◆ track_ended_

volatile bool Music_Emu::track_ended_
private

◆ tv_eq

Music_Emu::equalizer_t const Music_Emu::tv_eq
static
Initial value:
=
static const equalizer_t make_equalizer(double treble, double bass)
Definition Music_Emu.h:115

◆ voice_count_

int Music_Emu::voice_count_
private

◆ voice_names_

const char** Music_Emu::voice_names_
private

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