#include <alc.h>
#include "math/vector.hpp"
+#include "util/currenton.hpp"
class SoundFile;
class SoundSource;
class StreamSoundSource;
class OpenALSoundSource;
-class SoundManager
+class SoundManager : public Currenton<SoundManager>
{
public:
SoundManager();
void enable_music(bool music_enabled);
void play_music(const std::string& filename, bool fade = false);
+ void pause_music(float fadetime = 0);
+ void resume_music(float fadetime = 0);
void stop_music(float fadetime = 0);
- bool is_music_enabled() { return music_enabled; }
- bool is_sound_enabled() { return sound_enabled; }
+ bool is_music_enabled() const { return music_enabled; }
+ bool is_sound_enabled() const { return sound_enabled; }
- bool is_audio_enabled() {
+ bool is_audio_enabled() const {
return device != 0 && context != 0;
}
-
+ std::string get_current_music() const {
+ return current_music;
+ }
void update();
/*