aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/sound.h
diff options
context:
space:
mode:
authorJohannes Schickel2006-05-17 18:07:02 +0000
committerJohannes Schickel2006-05-17 18:07:02 +0000
commitf7c29ccc8b001eb8d69f1e3d845c6ad04e38fc95 (patch)
tree63d94d0339eb3232b8d3d9570bcb501091f757de /engines/kyra/sound.h
parentb6b53afe269a2d640b8db33e64ecdd6f9b2f506c (diff)
downloadscummvm-rg350-f7c29ccc8b001eb8d69f1e3d845c6ad04e38fc95.tar.gz
scummvm-rg350-f7c29ccc8b001eb8d69f1e3d845c6ad04e38fc95.tar.bz2
scummvm-rg350-f7c29ccc8b001eb8d69f1e3d845c6ad04e38fc95.zip
- adds AUD file player (has still some problems with playing)
- adds a new sound class SoundDigital (only used for Kyra3) (needs more work though) svn-id: r22497
Diffstat (limited to 'engines/kyra/sound.h')
-rw-r--r--engines/kyra/sound.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/engines/kyra/sound.h b/engines/kyra/sound.h
index 28444033f5..e2d5c70a7e 100644
--- a/engines/kyra/sound.h
+++ b/engines/kyra/sound.h
@@ -25,6 +25,7 @@
#include "common/stdafx.h"
#include "common/scummsys.h"
+#include "common/file.h"
#include "sound/mididrv.h"
#include "sound/midiparser.h"
#include "sound/mixer.h"
@@ -211,6 +212,28 @@ private:
Sound *_music, *_sfx;
};
+#define SOUND_STREAMS 4
+
+class SoundDigital {
+public:
+ SoundDigital(KyraEngine *vm, Audio::Mixer *mixer);
+ ~SoundDigital();
+
+ bool init();
+
+ int playSound(Common::File *fileHandle, int channel = -1);
+ bool isPlaying(int channel);
+ void stopSound(int channel);
+private:
+ KyraEngine *_vm;
+ Audio::Mixer *_mixer;
+
+ struct Sound {
+ Common::File *fileHandle;
+ Audio::SoundHandle handle;
+ } _sounds[SOUND_STREAMS];
+};
+
} // end of namespace Kyra
#endif