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/agos | |
| 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/agos')
| -rw-r--r-- | engines/agos/agos.cpp | 2 | ||||
| -rw-r--r-- | engines/agos/midi.cpp | 4 | ||||
| -rw-r--r-- | engines/agos/midi.h | 11 |
3 files changed, 2 insertions, 15 deletions
diff --git a/engines/agos/agos.cpp b/engines/agos/agos.cpp index 574031d047..7b6d4cf3e3 100644 --- a/engines/agos/agos.cpp +++ b/engines/agos/agos.cpp @@ -571,7 +571,7 @@ Common::Error AGOSEngine::init() { int ret = _midi.open(); if (ret) - warning("MIDI Player init failed: \"%s\"", _midi.getErrorName (ret)); + warning("MIDI Player init failed: \"%s\"", MidiDriver::getErrorName (ret)); _midi.setVolume(ConfMan.getInt("music_volume"), ConfMan.getInt("sfx_volume")); diff --git a/engines/agos/midi.cpp b/engines/agos/midi.cpp index bbc0181b11..d76aa42ddc 100644 --- a/engines/agos/midi.cpp +++ b/engines/agos/midi.cpp @@ -84,10 +84,6 @@ int MidiPlayer::open() { return 0; } -bool MidiPlayer::isOpen() const { - return _driver && _driver->isOpen(); -} - void MidiPlayer::close() { stop(); // _system->lockMutex(_mutex); diff --git a/engines/agos/midi.h b/engines/agos/midi.h index c27c5a7973..01456d784e 100644 --- a/engines/agos/midi.h +++ b/engines/agos/midi.h @@ -55,7 +55,7 @@ struct MusicInfo { } }; -class MidiPlayer : public MidiDriver { +class MidiPlayer : public MidiDriver_BASE { protected: Common::Mutex _mutex; MidiDriver *_driver; @@ -115,20 +115,11 @@ public: public: // MidiDriver interface implementation int open(); - bool isOpen() const; void close(); void send(uint32 b); void metaEvent(byte type, byte *data, uint16 length); void setPassThrough(bool b) { _passThrough = b; } - - // Timing functions - MidiDriver now operates timers - void setTimerCallback(void *timer_param, void (*timer_proc) (void *)) { } - uint32 getBaseTempo() { return _driver ? _driver->getBaseTempo() : 0; } - - // Channel allocation functions - MidiChannel *allocateChannel() { return 0; } - MidiChannel *getPercussionChannel() { return 0; } }; } // End of namespace AGOS |
