00001 #ifndef _ots_ProcessorPluginMacro_h_
00002 #define _ots_ProcessorPluginMacro_h_
00003
00004 #include "otsdaq-core/DataManager/DataProcessor.h"
00005 #include <string>
00006
00007 namespace ots
00008 {
00009 typedef DataProcessor*(dpvimakeFunc_t) ();
00010 }
00011
00012 #define DEFINE_OTS_PROCESSOR(klass) \
00013 extern "C" \
00014 ots::DataProcessor* \
00015 make(std::string const& supervisorApplicationUID, std::string const& bufferUID, std::string const& processorUID, const ConfigurationTree& configurationTree, const std::string& pathToInterfaceConfiguration) \
00016 {\
00017 return new klass(supervisorApplicationUID, bufferUID, processorUID, configurationTree, pathToInterfaceConfiguration); \
00018 }
00019
00020 #endif