Subversion Repositories AndroidProjects

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
244 chris 1
#ifndef __SOUNDMANAGER_H__
2
#define __SOUNDMANAGER_H__
3
 
4
#include <windows.h>
5
#include "Common.h"
6
 
7
namespace Sexy
8
{
9
 
10
class SoundInstance;
11
 
12
#define MAX_SOURCE_SOUNDS       256
13
#define MAX_CHANNELS            32
14
 
15
class SoundManager
16
{
17
public:
18
        SoundManager() {}
19
        virtual ~SoundManager() {}
20
 
21
        virtual bool                    Initialized() = NULL;
22
 
23
        virtual bool                    LoadSound(unsigned int theSfxID, const std::string& theFilename) = NULL;
24
        virtual int                             LoadSound(const std::string& theFilename) = NULL;
25
        virtual void                    ReleaseSound(unsigned int theSfxID) = NULL;
26
 
27
        virtual void                    SetVolume(double theVolume) = NULL;
28
        virtual bool                    SetBaseVolume(unsigned int theSfxID, double theBaseVolume) = NULL;
29
        virtual bool                    SetBasePan(unsigned int theSfxID, int theBasePan) = NULL;      
30
 
31
        virtual SoundInstance*  GetSoundInstance(unsigned int theSfxID) = NULL;
32
 
33
        virtual void                    ReleaseSounds() = NULL;
34
        virtual void                    ReleaseChannels() = NULL;
35
 
36
        virtual double                  GetMasterVolume() = NULL;
37
        virtual void                    SetMasterVolume(double theVolume) = NULL;
38
 
39
        virtual void                    Flush() = NULL;
40
        virtual void                    SetCooperativeWindow(HWND theHWnd, bool isWindowed) = NULL;
41
        virtual void                    StopAllSounds() = NULL;
42
        virtual int                             GetFreeSoundId() = NULL;
43
        virtual int                             GetNumSounds() = NULL;
44
 
45
};
46
 
47
 
48
}
49
 
50
#endif //__SOUNDMANAGER_H__