diff options
| author | Max Horn | 2011-03-23 15:23:26 +0100 |
|---|---|---|
| committer | Max Horn | 2011-03-23 15:25:47 +0100 |
| commit | 29847ea42da3e597d3496972c80ce49bea76da20 (patch) | |
| tree | 654596bc11032f28d9b2a776571fdb7623ceb5c6 /engines/draci | |
| parent | c70c8864f131bfe42437b05d03f77ab198f59247 (diff) | |
| download | scummvm-rg350-29847ea42da3e597d3496972c80ce49bea76da20.tar.gz scummvm-rg350-29847ea42da3e597d3496972c80ce49bea76da20.tar.bz2 scummvm-rg350-29847ea42da3e597d3496972c80ce49bea76da20.zip | |
AUDIO: Change several fake MidiDrivers to MidiDriver_BASE subclasses
Many engines follow the advice in audio/midiparser.h and create a
"pseudo-MidiDriver" subclass. But MidiParser really only needs a tiny
subset of the MidiDriver capabilities, namely those found in
MidiDriver_BASE. So we try to subclass from that whenever possible; this
allows us to remove many stub methods, and enables further future
simplifications.
Diffstat (limited to 'engines/draci')
| -rw-r--r-- | engines/draci/music.cpp | 6 | ||||
| -rw-r--r-- | engines/draci/music.h | 10 |
2 files changed, 2 insertions, 14 deletions
diff --git a/engines/draci/music.cpp b/engines/draci/music.cpp index cc1cd6d3fb..b56e10518b 100644 --- a/engines/draci/music.cpp +++ b/engines/draci/music.cpp @@ -97,10 +97,6 @@ int MusicPlayer::open() { return 0; } -bool MusicPlayer::isOpen() const { - return _driver && _driver->isOpen(); -} - void MusicPlayer::close() { stop(); if (_driver) { @@ -198,7 +194,7 @@ void MusicPlayer::playSMF(int track, bool loop) { MidiParser *parser = _smfParser; parser->setTrack(0); parser->setMidiDriver(this); - parser->setTimerRate(getBaseTempo()); + parser->setTimerRate(_driver->getBaseTempo()); parser->property(MidiParser::mpCenterPitchWheelOnUnload, 1); _parser = parser; diff --git a/engines/draci/music.h b/engines/draci/music.h index 0d15fdaf1b..80d25016dc 100644 --- a/engines/draci/music.h +++ b/engines/draci/music.h @@ -36,7 +36,7 @@ namespace Draci { // Taken from MADE, which took it from SAGA. -class MusicPlayer : public MidiDriver { +class MusicPlayer : public MidiDriver_BASE { public: MusicPlayer(MidiDriver *driver, const char *pathMask); ~MusicPlayer(); @@ -61,19 +61,11 @@ public: // MidiDriver interface implementation int open(); - bool isOpen() const; void close(); void send(uint32 b); void metaEvent(byte type, byte *data, uint16 length); - void setTimerCallback(void *timerParam, void (*timerProc)(void *)) { } - uint32 getBaseTempo() { return _driver ? _driver->getBaseTempo() : 0; } - - //Channel allocation functions - MidiChannel *allocateChannel() { return 0; } - MidiChannel *getPercussionChannel() { return 0; } - MidiParser *_parser; Common::Mutex _mutex; |
