summaryrefslogtreecommitdiff
path: root/osframework/source/SexyAppFramework/SoundManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'osframework/source/SexyAppFramework/SoundManager.h')
-rw-r--r--osframework/source/SexyAppFramework/SoundManager.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/osframework/source/SexyAppFramework/SoundManager.h b/osframework/source/SexyAppFramework/SoundManager.h
new file mode 100644
index 0000000..3f7159e
--- /dev/null
+++ b/osframework/source/SexyAppFramework/SoundManager.h
@@ -0,0 +1,50 @@
+#ifndef __SOUNDMANAGER_H__
+#define __SOUNDMANAGER_H__
+
+#include <windows.h>
+#include "Common.h"
+
+namespace Sexy
+{
+
+class SoundInstance;
+
+#define MAX_SOURCE_SOUNDS 256
+#define MAX_CHANNELS 32
+
+class SoundManager
+{
+public:
+ SoundManager() {}
+ virtual ~SoundManager() {}
+
+ virtual bool Initialized() = NULL;
+
+ virtual bool LoadSound(unsigned int theSfxID, const std::string& theFilename) = NULL;
+ virtual int LoadSound(const std::string& theFilename) = NULL;
+ virtual void ReleaseSound(unsigned int theSfxID) = NULL;
+
+ virtual void SetVolume(double theVolume) = NULL;
+ virtual bool SetBaseVolume(unsigned int theSfxID, double theBaseVolume) = NULL;
+ virtual bool SetBasePan(unsigned int theSfxID, int theBasePan) = NULL;
+
+ virtual SoundInstance* GetSoundInstance(unsigned int theSfxID) = NULL;
+
+ virtual void ReleaseSounds() = NULL;
+ virtual void ReleaseChannels() = NULL;
+
+ virtual double GetMasterVolume() = NULL;
+ virtual void SetMasterVolume(double theVolume) = NULL;
+
+ virtual void Flush() = NULL;
+ virtual void SetCooperativeWindow(HWND theHWnd, bool isWindowed) = NULL;
+ virtual void StopAllSounds() = NULL;
+ virtual int GetFreeSoundId() = NULL;
+ virtual int GetNumSounds() = NULL;
+
+};
+
+
+}
+
+#endif //__SOUNDMANAGER_H__ \ No newline at end of file