aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/sound.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/parallaction/sound.h')
-rw-r--r--engines/parallaction/sound.h26
1 files changed, 11 insertions, 15 deletions
diff --git a/engines/parallaction/sound.h b/engines/parallaction/sound.h
index 8a5582b378..8fcfb94a9a 100644
--- a/engines/parallaction/sound.h
+++ b/engines/parallaction/sound.h
@@ -84,6 +84,14 @@ enum {
SC_PAUSE
};
+struct Channel {
+ Audio::AudioStream *stream;
+ Audio::SoundHandle handle;
+ uint32 volume;
+};
+
+
+
class SoundMan_ns : public SoundManImpl {
public:
enum {
@@ -148,13 +156,7 @@ class AmigaSoundMan_ns : public SoundMan_ns {
Audio::AudioStream *_musicStream;
Audio::SoundHandle _musicHandle;
- struct Channel {
- Audio::Voice8Header header;
- int8 *data;
- uint32 dataSize;
- bool dispose;
- Audio::SoundHandle handle;
- } _channels[NUM_SFX_CHANNELS];
+ Channel _channels[NUM_SFX_CHANNELS];
Audio::AudioStream *loadChannelData(const char *filename, Channel *ch, bool looping);
@@ -191,18 +193,12 @@ protected:
bool _musicEnabled;
bool _sfxEnabled;
+ Channel _channels[NUM_SFX_CHANNELS];
+
virtual void playMusic() = 0;
virtual void stopMusic() = 0;
virtual void pause(bool p) = 0;
- struct Channel {
- Audio::Voice8Header header;
- int8 *data;
- uint32 dataSize;
- bool dispose;
- Audio::SoundHandle handle;
- } _channels[NUM_SFX_CHANNELS];
-
public:
SoundMan_br(Parallaction_br *vm);
~SoundMan_br();