aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/sound.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/tsage/sound.h')
-rw-r--r--engines/tsage/sound.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/engines/tsage/sound.h b/engines/tsage/sound.h
index a495344038..a1843545a9 100644
--- a/engines/tsage/sound.h
+++ b/engines/tsage/sound.h
@@ -28,6 +28,7 @@
#include "common/scummsys.h"
#include "tsage/saveload.h"
+#include "tsage/core.h"
namespace tSage {
@@ -44,6 +45,48 @@ public:
void loadNotifierProc(bool postFlag);
};
+class Sound: public EventHandler {
+public:
+
+};
+
+class ASound: public Sound {
+public:
+ Sound _sound;
+ Action *_action;
+ int _field280;
+
+ ASound();
+ virtual void synchronise(Serialiser &s);
+ virtual void dispatch();
+
+ void play(int soundNum, Action *action = NULL, int volume = 127);
+ void stop();
+ void prime(int v, Action *action = NULL);
+ void unPrime();
+ void go();
+ void hault(void);
+ int getSoundNum() const;
+ bool isPlaying() const;
+ bool isPaused() const;
+ bool isMuted() const;
+ void pause();
+ void mute();
+ void fadeIn();
+ void fadeOut(EventHandler *evtHandler);
+ void fade(int v1, int v2, int v3, int v4, EventHandler *evtHandler);
+ void setTimeIndex(uint32 timeIndex);
+ uint32 getTimeIndex() const;
+ void setPri(int v);
+ void setLoop(bool flag);
+ int getPri() const;
+ bool getLoop();
+ void setVolume(int volume);
+ int getVol() const;
+ void holdAt(int v);
+ void release();
+};
+
} // End of namespace tSage
#endif