caudio/Plugins/mp3Decoder/include/cMP3Plugin.h

59 lines
1.1 KiB
C++

#ifndef CMP3DECODERPLUGIN_H
#define CMP3DECODERPLUGIN_H
#include "IAudioPlugin.h"
#include "cMP3DecoderFactory.h"
using namespace cAudio;
class cMP3DecoderPlugin : public IAudioPlugin
{
bool installPlugin(ILogger* logger)
{
//This plugin has no first time initialization to do, so this is an easy function
return true;
}
const char* getPluginName()
{
return "MP3Decoder";
}
void uninstallPlugin()
{
//Nothing to clean up
}
void onCreateAudioManager(IAudioManager* manager)
{
cMP3DecoderFactory* factory = new cMP3DecoderFactory();
if(factory)
{
manager->registerAudioDecoder(factory, "mp3");
}
}
void onCreateAudioCapture(IAudioCapture* capture)
{
//Do nothing with this "event"
}
void onDestroyAudioManager(IAudioManager* manager)
{
cAudio::IAudioDecoderFactory* factory = manager->getAudioDecoderFactory("mp3");
manager->unRegisterAudioDecoder("mp3");
if(factory)
{
delete factory;
}
}
void onDestoryAudioCapture(IAudioCapture* capture)
{
//Do nothing with this "event"
}
};
#endif //! CMP3DECODERPLUGIN_H