6 #include "cAudioManager.h" 7 #include "cAudioCapture.h" 9 #if CAUDIO_COMPILE_WITH_OGG_DECODER == 1 10 #include "cOggAudioDecoderFactory.h" 13 #if CAUDIO_COMPILE_WITH_WAV_DECODER == 1 14 #include "cWavAudioDecoderFactory.h" 17 #include "cRawAudioDecoderFactory.h" 19 #if CAUDIO_COMPILE_WITH_FILE_SOURCE == 1 20 #include "cFileSourceFactory.h" 21 #include "cFileSource.h" 24 #include "cPluginManager.h" 26 #include "cConsoleLogReceiver.h" 27 #include "cFileLogReceiver.h" 28 #include "cOpenALAudioDeviceList.h" 37 #if CAUDIO_COMPILE_WITH_CONSOLE_LOG_RECEIVER == 1 38 static cConsoleLogReceiver ConsoleLog;
41 #if CAUDIO_COMPILE_WITH_FILE_LOG_RECEIVER == 1 42 static cFileLogReceiver *FileLog;
51 #if CAUDIO_COMPILE_WITH_CONSOLE_LOG_RECEIVER == 1 54 #if CAUDIO_COMPILE_WITH_FILE_LOG_RECEIVER == 1 65 #if CAUDIO_COMPILE_WITH_OGG_DECODER == 1 66 static cOggAudioDecoderFactory OggDecoderFactory;
68 #if CAUDIO_COMPILE_WITH_WAV_DECODER == 1 69 static cWavAudioDecoderFactory WavDecoderFactory;
72 static cRawAudioDecoderFactory RawDecoderFactory;
74 #if CAUDIO_COMPILE_WITH_FILE_SOURCE == 1 75 static cFileSourceFactory FileSourceFactory;
80 #if CAUDIO_COMPILE_WITH_FILE_LOG_RECEIVER == 1 83 FileLog =
new cFileLogReceiver(lFilePath);
90 #if CAUDIO_COMPILE_WITH_OGG_DECODER == 1 93 #if CAUDIO_COMPILE_WITH_WAV_DECODER == 1 99 #if CAUDIO_COMPILE_WITH_FILE_SOURCE == 1 103 #ifdef CAUDIO_COMPILE_WITH_PLUGIN_SUPPORT 104 cAudioVector<IAudioPlugin*>::Type plugins = cPluginManager::Instance()->getPluginList();
105 for(
unsigned int i = 0; i < plugins.size(); ++i)
107 plugins[i]->onCreateAudioManager(manager);
116 #if CAUDIO_COMPILE_WITH_FILE_LOG_RECEIVER == 1 122 #ifdef CAUDIO_COMPILE_WITH_PLUGIN_SUPPORT 123 cAudioVector<IAudioPlugin*>::Type plugins = cPluginManager::Instance()->getPluginList();
124 for(
unsigned int i = 0; i < plugins.size(); ++i)
126 plugins[i]->onDestroyAudioManager(manager);
132 CAUDIO_DELETE manager;
146 if(initializeDefault)
149 #ifdef CAUDIO_COMPILE_WITH_PLUGIN_SUPPORT 150 cAudioVector<IAudioPlugin*>::Type plugins = cPluginManager::Instance()->getPluginList();
151 for(
unsigned int i = 0; i < plugins.size(); ++i)
153 plugins[i]->onCreateAudioCapture(capture);
164 #ifdef CAUDIO_COMPILE_WITH_PLUGIN_SUPPORT 165 cAudioVector<IAudioPlugin*>::Type plugins = cPluginManager::Instance()->getPluginList();
166 for(
unsigned int i = 0; i < plugins.size(); ++i)
168 plugins[i]->onDestoryAudioCapture(capture);
171 CAUDIO_DELETE capture;
CAUDIO_API IAudioManager * createAudioManager(bool initializeDefault=true, const char *lFilePath="cAudioEngineLog.html")
Creates an interface to an Audio Manager.
virtual bool registerDataSource(IDataSourceFactory *factory, const char *name, int priority)
Registers a data source with this manager.
CAUDIO_API IAudioDeviceList * createAudioDeviceList(IDeviceType deviceType=DT_PLAYBACK)
Creates an interface to an IAudioDeviceList object.
Interface for the playback capabilities of cAudio.
virtual bool registerAudioDecoder(IAudioDecoderFactory *factory, const char *extension)
Register an Audio Decoder.
virtual bool initialize(const char *deviceName=0x0, int outputFrequency=-1, int eaxEffectSlots=4)
Initializes the manager.
Interface for all logging operations in cAudio.
CAUDIO_API IAudioCapture * createAudioCapture(bool initializeDefault=true)
Creates an interface to an Audio Capture Object.
Interface for capturing operations in the cAudio Engine.
virtual bool registerLogReceiver(ILogReceiver *receiver, const char *name)
Register Log Receiver.
CAUDIO_API void destroyAudioManager(IAudioManager *manager)
Destroys an interface to a previously created Audio Manager and frees the memory allocated for it.
virtual bool initialize(const char *deviceName=0x0, unsigned int frequency=22050, AudioFormats format=EAF_16BIT_MONO, unsigned int internalBufferSize=8192)
Initializes the capture device to the selected settings.
virtual void shutDown()=0
Shuts the manager down, cleaning up audio sources in the process. Does not clean up decoders,...
CAUDIO_API void destroyAudioCapture(IAudioCapture *capture)
Destroys an interface to a previously created Audio Capture Object and frees the memory allocated for...
CAUDIO_API ILogger * getLogger()
Gets the interface to the logger.
Main namespace for the entire cAudio library.