diff options
Diffstat (limited to 'scumm/imuse_internal.h')
-rw-r--r-- | scumm/imuse_internal.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/scumm/imuse_internal.h b/scumm/imuse_internal.h index 0914d3a462..10f6e5a373 100644 --- a/scumm/imuse_internal.h +++ b/scumm/imuse_internal.h @@ -24,6 +24,7 @@ #include "common/scummsys.h" #include "scumm/instrument.h" +#include "scumm/saveload.h" #include "sound/mididrv.h" class MidiParser; @@ -245,7 +246,7 @@ public: void onTimer(); void removePart(Part *part); int scan(uint totrack, uint tobeat, uint totick); - int save_or_load(Serializer *ser); + void saveLoadWithSerializer(Serializer *ser); int setHook(byte cls, byte value, byte chan) { return _hook.set(cls, value, chan); } void setDetune(int detune); bool setLoop(uint count, uint tobeat, uint totick, uint frombeat, uint fromtick); @@ -271,7 +272,7 @@ public: MidiChannel *getPercussionChannel() { return 0; } }; -struct Part { +struct Part : public Serializable { int _slot; Part *_next, *_prev; MidiChannel *_mc; @@ -333,9 +334,9 @@ struct Part { void sendPitchBend(); bool clearToTransmit(); - Part() { - memset(this,0,sizeof(Part)); - } + Part(); + + void saveLoadWithSerializer(Serializer *ser); }; // WARNING: This is the internal variant of the IMUSE class. |