ScummVM API documentation
AGOS::SfxParser_Accolade Class Referenceabstract
Inheritance diagram for AGOS::SfxParser_Accolade:
AGOS::SfxParser_Accolade_AdLib AGOS::SfxParser_Accolade_MT32

Classes

struct  SfxData
 
struct  SfxSlot
 

Public Member Functions

void load (Common::SeekableReadStream *in, int32 size)
 
virtual void setMidiDriver (MidiDriver_Multisource *driver)=0
 
void setTimerRate (uint32 rate)
 
void play (uint8 sfxNumber)
 
void stopAll ()
 
void pauseAll (bool paused)
 
void onTimer ()
 

Static Public Member Functions

static void timerCallback (void *data)
 

Static Public Attributes

static const byte INSTRUMENT_SIZE_MT32 = 0xF9
 
static const uint16 SCRIPT_TIMER_FREQUENCY = 292
 
static const uint16 SCRIPT_TIMER_RATE = 1000000 / SCRIPT_TIMER_FREQUENCY
 

Protected Member Functions

void stop (SfxSlot *sfxSlot)
 
void processOpCode (SfxSlot *sfxSlot, byte opCode)
 
virtual byte getNumberOfSfxSources ()=0
 
virtual void readInstrument (SfxData *sfxData, Common::SeekableReadStream *in)=0
 
virtual bool loadInstrument (SfxSlot *sfxSlot)=0
 
virtual void changeInstrument (SfxSlot *sfxSlot)
 
virtual void noteOn (SfxSlot *sfxSlot)
 
virtual void noteOff (SfxSlot *sfxSlot)
 
virtual void updateNote (SfxSlot *sfxSlot)
 

Protected Attributes

Common::Mutex _mutex
 
MidiDriver_Multisource_driver
 
uint32 _timerRate
 
SfxData_sfxData
 
uint16 _numSfx
 
SfxSlot _sfxSlots [4]
 
int8 _sourceAllocations [4]
 
bool _paused
 

Static Protected Attributes

static const byte INSTRUMENT_SIZE_ADLIB = 0x09
 
static const byte MAX_SCRIPT_SIZE = 0x30
 
static const byte OPL2_NUM_SOURCES = 2
 
static const byte OPL3_NUM_SOURCES = 4
 

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