OpenGTA/util/sound_mixer.h
2018-09-23 10:57:34 +05:00

35 lines
690 B
C++
Executable File

#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> MixerHolder;
}
#endif