00001 #ifndef OSDL_AUDIO_H_
00002 #define OSDL_AUDIO_H_
00003
00004
00005 #include "OSDLTypes.h"
00006 #include "OSDLException.h"
00007
00008 #include "Ceylan.h"
00009
00010 #include <string>
00011 #include <list>
00012
00013
00014
00015 namespace OSDL
00016 {
00017
00018
00019
00020 class CommonModule ;
00021
00022
00023 namespace Audio
00024 {
00025
00026
00028 class OSDL_DLL AudioException: public OSDL::Exception
00029 {
00030 public:
00031
00032 AudioException( const std::string & reason ) throw() ;
00033 virtual ~AudioException() throw() ;
00034 } ;
00035
00036
00037
00042 class OSDL_DLL AudioModule : public Ceylan::Module
00043 {
00044
00045
00046
00047 friend class OSDL::CommonModule ;
00048
00049
00050 public:
00051
00052
00053
00066 virtual const std::string toString(
00067 Ceylan::VerbosityLevels level = Ceylan::high )
00068 const throw() ;
00069
00070
00071
00072
00073
00083 static std::string DescribeEnvironmentVariables() throw() ;
00084
00085
00097 static bool IsAudioInitialized() throw() ;
00098
00099
00100
00101 protected:
00102
00103
00105 static bool _AudioInitialized ;
00106
00107
00108
00109 private:
00110
00111
00112
00121 AudioModule() throw( AudioException ) ;
00122
00123
00125 virtual ~AudioModule() throw() ;
00126
00127
00136 explicit AudioModule( const AudioModule & source ) throw() ;
00137
00138
00147 AudioModule & operator = ( const AudioModule & source )
00148 throw() ;
00149
00150
00151
00152
00158 static std::string SDLEnvironmentVariables[] ;
00159
00160
00161
00162 friend class CommonModule ;
00163
00164
00165 } ;
00166
00167 }
00168
00169 }
00170
00171
00172
00173
00174 #endif // OSDL_AUDIO_H_