diff options
author | Paweł Kołodziejski | 2002-09-29 07:08:31 +0000 |
---|---|---|
committer | Paweł Kołodziejski | 2002-09-29 07:08:31 +0000 |
commit | 037b08130eec9650276e1d90828157e577e54c6e (patch) | |
tree | 51c456c72e42db39ececb1c1f43b4e5fe08e18f0 /scumm/imuse.h | |
parent | 94b55db8215e709a40cc562df3d8e1540e6b5174 (diff) | |
download | scummvm-rg350-037b08130eec9650276e1d90828157e577e54c6e.tar.gz scummvm-rg350-037b08130eec9650276e1d90828157e577e54c6e.tar.bz2 scummvm-rg350-037b08130eec9650276e1d90828157e577e54c6e.zip |
framework of Imuse sound for The Dig
svn-id: r5031
Diffstat (limited to 'scumm/imuse.h')
-rw-r--r-- | scumm/imuse.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/scumm/imuse.h b/scumm/imuse.h index f265f52492..6d6650f02c 100644 --- a/scumm/imuse.h +++ b/scumm/imuse.h @@ -59,3 +59,37 @@ public: private: IMuseInternal *_imuse; // Pointer to the real imuse object }; + +#define MAX_DIGITAL_CHANNELS 10 + +class IMuseDigital { +private: + + struct channel { + int8 _volumeLeft; + int8 _volumeRight; + bool _isLoop; + uint32 _offsetEnd; + uint32 _offsetJump; + uint32 _offsetRegion; + uint32 _offset; + byte *_data; + uint32 _freq; + byte _channels; + bool _stereo; + byte _bits; + uint32 _size; + uint32 _idSound; + bool _used; + uint32 _mixerTrack; + } _channel[MAX_DIGITAL_CHANNELS]; + +public: + IMuseDigital(SoundMixer *mixer, Timer * timer); + ~IMuseDigital(); + void startSound(int sound); + void stopSound(int sound); + int32 doCommand(int a, int b, int c, int d, int e, int f, int g, int h); + int getSoundStatus(int sound); +}; + |