OpenGTA/util/sound_mixer.h
Anonymous Maarten 78c27f03c8 2006-12-10
2015-12-03 01:37:02 +01:00

36 lines
762 B
C++

#ifndef UTIL_SOUND_MIXER_H
#define UTIL_SOUND_MIXER_H
#include <SDL_sound.h>
#include <SDL_mixer.h>
#include "sound_device.h"
#include "Singleton.h"
namespace Audio {
class Mixer {
public:
Mixer();
~Mixer();
Audio::SoundDevice device;
int setVolume(int channel, int volume);
int setVolumeMusic();
int getVolume(int channel);
int getVolumeMusic();
void playSample(const size_t & sampleId);
void pause(int channel);
void pauseMusic();
private:
inline bool checkDeviceOK() { return (device.getStatus() ==
Audio::SoundDevice::OPEN); }
};
typedef Loki::SingletonHolder<Mixer, Loki::CreateUsingNew,
Loki::DefaultLifetime, Loki::SingleThreaded> MixerHolder;
}
#endif