From 418bce60a85fbaa1dcb1f3633d5f8e01fe7e0fe7 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Sat, 31 Dec 2005 02:35:49 +0000 Subject: [PATCH] SoundDrivers into RageSoundManager --- stepmania/src/PrefsManager.cpp | 10 ---------- stepmania/src/PrefsManager.h | 5 ----- stepmania/src/RageSoundManager.cpp | 9 ++++++++- stepmania/src/RageSoundManager.h | 2 +- stepmania/src/StepMania.cpp | 2 +- 5 files changed, 10 insertions(+), 18 deletions(-) diff --git a/stepmania/src/PrefsManager.cpp b/stepmania/src/PrefsManager.cpp index 11659e4d2c..2f1abbf000 100644 --- a/stepmania/src/PrefsManager.cpp +++ b/stepmania/src/PrefsManager.cpp @@ -3,7 +3,6 @@ #include "IniFile.h" #include "RageDisplay.h" #include "RageUtil.h" -#include "arch/arch_default.h" #include "RageFile.h" #include "ProductInfo.h" #include "Foreach.h" @@ -293,7 +292,6 @@ PrefsManager::PrefsManager() : #endif m_sVideoRenderers ( "VideoRenderers", "" ), // StepMania.cpp sets these on first run: m_bSmoothLines ( "SmoothLines", false ), - m_sSoundDrivers ( "SoundDrivers", "" ), m_fSoundVolume ( "SoundVolume", 1.0f ), m_iSoundWriteAhead ( "SoundWriteAhead", 0 ), m_iSoundDevice ( "SoundDevice", "" ), @@ -499,14 +497,6 @@ CString PrefsManager::GetPreferencesSection() const // wrappers -CString PrefsManager::GetSoundDrivers() -{ - if ( m_sSoundDrivers.Get().empty() ) - return (CString)DEFAULT_SOUND_DRIVER_LIST; - else - return m_sSoundDrivers; -} - float PrefsManager::GetSoundVolume() { // return a resonable volume to that users of this method don't have to handle invalid values diff --git a/stepmania/src/PrefsManager.h b/stepmania/src/PrefsManager.h index 07ccd03235..3ee16137d6 100644 --- a/stepmania/src/PrefsManager.h +++ b/stepmania/src/PrefsManager.h @@ -217,14 +217,10 @@ public: #endif Preference m_sVideoRenderers; // StepMania.cpp sets these on first run based on the card Preference m_bSmoothLines; -private: - Preference m_sSoundDrivers; // "" == default -public: Preference m_fSoundVolume; Preference m_iSoundWriteAhead; Preference m_iSoundDevice; Preference m_iSoundPreferredSampleRate; -public: Preference m_sLightsStepsDifficulty; Preference m_bBlinkGameplayButtonLightsOnNote; Preference m_bAllowUnacceleratedRenderer; @@ -251,7 +247,6 @@ public: // wrappers - CString GetSoundDrivers(); float GetSoundVolume(); diff --git a/stepmania/src/RageSoundManager.cpp b/stepmania/src/RageSoundManager.cpp index 309a2d74c4..363fc573b9 100644 --- a/stepmania/src/RageSoundManager.cpp +++ b/stepmania/src/RageSoundManager.cpp @@ -18,10 +18,12 @@ #include "RageSoundReader_Preload.h" #include "Foreach.h" #include "LocalizedString.h" +#include "Preference.h" #include "arch/Sound/RageSoundDriver.h" #include "arch/arch.h" +#include "arch/arch_default.h" /* * The lock ordering requirements are: @@ -33,6 +35,7 @@ */ static RageMutex g_SoundManMutex("SoundMan"); +static Preference g_sSoundDrivers( "SoundDrivers", "" ); // "" == DEFAULT_SOUND_DRIVER_LIST RageSoundManager *SOUNDMAN = NULL; @@ -44,8 +47,12 @@ RageSoundManager::RageSoundManager() } static LocalizedString COULDNT_FIND_SOUND_DRIVER( "RageSoundManager", "Couldn't find a sound driver that works" ); -void RageSoundManager::Init( CString sDrivers ) +void RageSoundManager::Init() { + CString sDrivers = g_sSoundDrivers; + if( sDrivers.empty() ) + sDrivers = DEFAULT_SOUND_DRIVER_LIST; + m_pDriver = MakeRageSoundDriver( sDrivers ); if( m_pDriver == NULL ) RageException::Throw( COULDNT_FIND_SOUND_DRIVER.GetValue() ); diff --git a/stepmania/src/RageSoundManager.h b/stepmania/src/RageSoundManager.h index f98c62fd0d..11e41e6ccf 100644 --- a/stepmania/src/RageSoundManager.h +++ b/stepmania/src/RageSoundManager.h @@ -26,7 +26,7 @@ public: * start sounds will do nothing, and threads may be shut down. */ void Shutdown(); - void Init( CString sDrivers ); + void Init(); float GetMixVolume() const { return m_fMixVolume; } void SetMixVolume( float fMixVol ); diff --git a/stepmania/src/StepMania.cpp b/stepmania/src/StepMania.cpp index 7c48555215..f5a1624ffb 100644 --- a/stepmania/src/StepMania.cpp +++ b/stepmania/src/StepMania.cpp @@ -1026,7 +1026,7 @@ int main(int argc, char* argv[]) if( PREFSMAN->m_iSoundWriteAhead ) LOG->Info( "Sound writeahead has been overridden to %i", PREFSMAN->m_iSoundWriteAhead.Get() ); SOUNDMAN = new RageSoundManager; - SOUNDMAN->Init( PREFSMAN->GetSoundDrivers() ); + SOUNDMAN->Init(); SOUNDMAN->SetMixVolume( PREFSMAN->GetSoundVolume() ); SOUND = new GameSoundManager; BOOKKEEPER = new Bookkeeper;