aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/midi.h
diff options
context:
space:
mode:
authorMax Horn2011-03-23 16:14:39 +0100
committerMax Horn2011-03-23 16:49:41 +0100
commite70fd59b3505619cccb6f3280a4cf0fb57aefa97 (patch)
tree055c9719a41c4706baa4e5c4837e5fd31da95486 /engines/agos/midi.h
parent29847ea42da3e597d3496972c80ce49bea76da20 (diff)
downloadscummvm-rg350-e70fd59b3505619cccb6f3280a4cf0fb57aefa97.tar.gz
scummvm-rg350-e70fd59b3505619cccb6f3280a4cf0fb57aefa97.tar.bz2
scummvm-rg350-e70fd59b3505619cccb6f3280a4cf0fb57aefa97.zip
ENGINES: Further simplify pseudo MidiDrivers; fix some regressions
The regression affected AGOS and maybe some others; specifically, the real MidiDriver would have been deleted twice -- I previously missed that the Engine instances takes care of freeing the real MidiDriver, not the MidiPlayer wrapping it. This commit should clarify the ownership of the real MidiDriver for most pseudo MidiDrivers.
Diffstat (limited to 'engines/agos/midi.h')
-rw-r--r--engines/agos/midi.h15
1 files changed, 7 insertions, 8 deletions
diff --git a/engines/agos/midi.h b/engines/agos/midi.h
index 01456d784e..64ab14d4ee 100644
--- a/engines/agos/midi.h
+++ b/engines/agos/midi.h
@@ -97,8 +97,7 @@ public:
void loadXMIDI(Common::File *in, bool sfx = false);
void loadS1D(Common::File *in, bool sfx = false);
- void mapMT32toGM(bool map);
- void setNativeMT32(bool nativeMT32) { _nativeMT32 = nativeMT32; }
+ bool hasNativeMT32() const { return _nativeMT32; }
void setLoop(bool loop);
void startTrack(int track);
void queueTrack(int track, bool loop);
@@ -113,13 +112,13 @@ public:
void setDriver(MidiDriver *md);
public:
- // MidiDriver interface implementation
- int open();
- void close();
- void send(uint32 b);
-
- void metaEvent(byte type, byte *data, uint16 length);
+ int open(int gameType);
void setPassThrough(bool b) { _passThrough = b; }
+
+ // MidiDriver_BASE interface implementation
+ virtual void send(uint32 b);
+ virtual void metaEvent(byte type, byte *data, uint16 length);
+
};
} // End of namespace AGOS