aboutsummaryrefslogtreecommitdiff
path: root/audio/midiparser.h
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2013-09-20 23:05:37 +0200
committerWillem Jan Palenstijn2013-09-21 00:22:56 +0200
commit6c5a5cd8e90fcaafae6fd6f409fde04b29fa7e7a (patch)
treecda8e7888fba18127f6eb30ffe792243174fd11a /audio/midiparser.h
parent995d689ef355ce465f3647270a33ccf08802754e (diff)
downloadscummvm-rg350-6c5a5cd8e90fcaafae6fd6f409fde04b29fa7e7a.tar.gz
scummvm-rg350-6c5a5cd8e90fcaafae6fd6f409fde04b29fa7e7a.tar.bz2
scummvm-rg350-6c5a5cd8e90fcaafae6fd6f409fde04b29fa7e7a.zip
AUDIO: Split event processing from MidiParser::onTimer
This is to prepare for overriding more of this functionality in SCI.
Diffstat (limited to 'audio/midiparser.h')
-rw-r--r--audio/midiparser.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/audio/midiparser.h b/audio/midiparser.h
index bb9749b97f..4470d7d980 100644
--- a/audio/midiparser.h
+++ b/audio/midiparser.h
@@ -105,8 +105,8 @@ struct EventInfo {
///< will occur, and the MidiParser will have to generate one itself.
///< For all other events, this value should always be zero.
- byte channel() { return event & 0x0F; } ///< Separates the MIDI channel from the event.
- byte command() { return event >> 4; } ///< Separates the command code from the event.
+ byte channel() const { return event & 0x0F; } ///< Separates the MIDI channel from the event.
+ byte command() const { return event >> 4; } ///< Separates the command code from the event.
};
/**
@@ -293,6 +293,7 @@ protected:
virtual void resetTracking();
virtual void allNotesOff();
virtual void parseNextEvent(EventInfo &info) = 0;
+ virtual bool processEvent(const EventInfo &info);
void activeNote(byte channel, byte note, bool active);
void hangingNote(byte channel, byte note, uint32 ticksLeft, bool recycle = true);