LadspaWrapperCreator.hxx
Go to the documentation of this file.00001 #ifndef __LadspaWrapperCreator_hxx__
00002 #define __LadspaWrapperCreator_hxx__
00003
00004 #include "LadspaWrapper.hxx"
00005 #include "LadspaWrapperBuffer.hxx"
00006
00007 namespace CLAM {
00008
00009 class LadspaWrapperCreator : public CLAM::Factory<Processing>::Creator
00010 {
00011 private:
00012 std::string _libraryFileName;
00013 unsigned _index;
00014 std::string _factoryKey;
00015 public:
00016 LadspaWrapperCreator( const std::string& libraryFileName, unsigned index, const std::string& key )
00017 : _libraryFileName( libraryFileName )
00018 , _index( index )
00019 , _factoryKey( key )
00020 {
00021
00022 }
00023 virtual Processing* Create()
00024 {
00025
00026 return new CLAM::LadspaWrapper(_libraryFileName, _index, _factoryKey);
00027 }
00028 virtual ~LadspaWrapperCreator()
00029 {
00030
00031 }
00032 };
00033
00034 class LadspaWrapperBufferCreator : public CLAM::Factory<Processing>::Creator
00035 {
00036 private:
00037 std::string _libraryFileName;
00038 unsigned _index;
00039 std::string _factoryKey;
00040 public:
00041 LadspaWrapperBufferCreator( const std::string& libraryFileName, unsigned index, const std::string& key )
00042 : _libraryFileName( libraryFileName )
00043 , _index( index )
00044 , _factoryKey( key )
00045 {
00046
00047 }
00048 virtual Processing* Create()
00049 {
00050
00051 return new CLAM::LadspaWrapperBuffer(_libraryFileName, _index, _factoryKey);
00052 }
00053 virtual ~LadspaWrapperBufferCreator()
00054 {
00055
00056 }
00057 };
00058
00059 }
00060
00061 #endif // __LadspaWrapperCreator_hxx__
00062