diff options
Diffstat (limited to 'src/libjin/audio/sdl')
-rw-r--r-- | src/libjin/audio/sdl/audio.cpp | 7 | ||||
-rw-r--r-- | src/libjin/audio/sdl/audio.h | 14 |
2 files changed, 7 insertions, 14 deletions
diff --git a/src/libjin/audio/sdl/audio.cpp b/src/libjin/audio/sdl/audio.cpp index 79ca3f2..8a0fc86 100644 --- a/src/libjin/audio/sdl/audio.cpp +++ b/src/libjin/audio/sdl/audio.cpp @@ -18,8 +18,10 @@ namespace audio audio->unlock(); } - onlyonce bool SDLAudio::_init(const SettingBase* s) + onlyonce bool SDLAudio::initSystem(const SettingBase* s) { + std::cout << "Init Audio System" << std::endl; + if (SDL_Init(SDL_INIT_AUDIO) < 0) return false; SDL_AudioSpec spec; @@ -45,10 +47,9 @@ namespace audio return true; } - onlyonce void SDLAudio::_quit() + onlyonce void SDLAudio::quitSystem() { SDL_CloseAudio(); - delete audio; } void SDLAudio::lock() diff --git a/src/libjin/audio/sdl/audio.h b/src/libjin/audio/sdl/audio.h index 6e42690..953a853 100644 --- a/src/libjin/audio/sdl/audio.h +++ b/src/libjin/audio/sdl/audio.h @@ -13,7 +13,7 @@ namespace audio #define SDLAUDIO_BYTEDEPTH (SDLAUDIO_BITDEPTH >> 3) #define SDLAUDIO_CHANNELS 2 - class SDLAudio : public Audio + class SDLAudio : public Audio<SDLAudio> { public: @@ -25,11 +25,6 @@ namespace audio int samples; // sample<=samplerate }; - static inline Audio* get() - { - return audio != NULL ? audio : (audio = new SDLAudio()); - } - /* IAudio interface */ void play() override; void stop() override; @@ -50,11 +45,8 @@ namespace audio private: - SDLAudio() {} - ~SDLAudio() {} - - onlyonce bool _init(const SettingBase* setting) override; - onlyonce void _quit() override; + onlyonce bool initSystem(const SettingBase* setting) override; + onlyonce void quitSystem() override; unsigned int audioDevice; |