|
bool | loadMusic (byte *musData, uint32 musSize) override |
|
void | unloadMusic () override |
|
| MidiParser (int8 source=-1) |
|
virtual void | property (int prop, int value) |
|
virtual int32 | determineDataSize (Common::SeekableReadStream *stream) |
|
virtual void | setMidiDriver (MidiDriver_BASE *driver) |
|
void | setTimerRate (uint32 rate) |
|
virtual void | setTempo (uint32 tempo) |
|
virtual void | onTimer () |
|
bool | isPlaying () const |
|
bool | startPlaying () |
|
void | stopPlaying () |
|
void | pausePlaying () |
|
void | resumePlaying () |
|
bool | setTrack (int track) |
|
bool | jumpToTick (uint32 tick, bool fireEvents=false, bool stopNotes=true, bool dontSendNoteOn=false) |
|
virtual bool | hasJumpIndex (uint8 index) |
|
virtual bool | jumpToIndex (uint8 index, bool stopNotes=true) |
|
uint32 | getPPQN () |
|
virtual uint32 | getTick () |
|
|
void | parseNextEvent (EventInfo &info) override |
|
virtual void | resetTracking () |
|
virtual void | allNotesOff () |
|
virtual bool | processEvent (const EventInfo &info, bool fireEvents=true) |
|
void | activeNote (byte channel, byte note, bool active) |
|
void | hangingNote (byte channel, byte note, uint32 ticksLeft, bool recycle=true) |
|
void | hangAllActiveNotes () |
|
virtual void | onTrackStart (uint8 track) |
|
virtual void | sendToDriver (uint32 b) |
|
void | sendToDriver (byte status, byte firstOp, byte secondOp) |
|
virtual void | sendMetaEventToDriver (byte type, byte *data, uint16 length) |
|
uint32 | read4high (byte *&data) |
|
uint16 | read2low (byte *&data) |
|
|
Common::Mutex | _mutex |
|
uint8 | _beats |
|
uint8 | _lastEvent |
|
byte * | _data |
|
byte * | _trackEnd |
|
uint16 | _activeNotes [128] |
| Each uint16 is a bit mask for channels that have that note on.
|
|
NoteTimer | _hangingNotes [32] |
| Used for "Smart Jump" and MIDI formats that do not include explicit Note Off events. More...
|
|
byte | _hangingNotesCount |
| Count of hanging notes, used to optimize expiration.
|
|
MidiDriver_BASE * | _driver |
| The device to which all events will be transmitted.
|
|
uint32 | _timerRate |
| The time in microseconds between onTimer() calls. Obtained from the MidiDriver.
|
|
uint32 | _ppqn |
| Pulses Per Quarter Note. (We refer to "pulses" as "ticks".)
|
|
uint32 | _tempo |
| Microseconds per quarter note.
|
|
uint32 | _psecPerTick |
| Microseconds per tick (_tempo / _ppqn).
|
|
uint32 | _sysExDelay |
| Number of microseconds until the next SysEx event can be sent.
|
|
bool | _autoLoop |
| For lightweight clients that don't provide their own flow control.
|
|
bool | _smartJump |
| Support smart expiration of hanging notes when jumping.
|
|
bool | _centerPitchWheelOnUnload |
| Center the pitch wheels when unloading a song.
|
|
bool | _sendSustainOffOnNotesOff |
| Send a sustain off on a notes off event, stopping hanging notes.
|
|
bool | _disableAllNotesOffMidiEvents |
| Don't send All Notes Off MIDI messages.
|
|
bool | _disableAutoStartPlayback |
| Do not automatically start playback after parsing MIDI data or setting the track.
|
|
byte * | _tracks [MAXIMUM_TRACKS] |
| Multi-track MIDI formats are supported, up to 120 tracks.
|
|
byte | _numTracks |
| Count of total tracks for multi-track MIDI formats. 1 for single-track formats.
|
|
byte | _activeTrack |
| Keeps track of the currently active track, in multi-track formats.
|
|
Tracker | _position |
| The current time/position in the active track.
|
|
EventInfo | _nextEvent |
|
bool | _abortParse |
| If a jump or other operation interrupts parsing, flag to abort.
|
|
bool | _jumpingToTick |
| True if currently inside jumpToTick.
|
|
bool | _doParse |
| True if the parser should be parsing; false if it should not be active.
|
|
bool | _pause |
| True if the parser has paused parsing.
|
|
int8 | _source |
|