otsdaq  v1_01_04
 All Classes Namespaces Functions
ProcessorPluginMacros.h
1 #ifndef _ots_ProcessorPluginMacro_h_
2 #define _ots_ProcessorPluginMacro_h_
3 
4 #include "otsdaq-core/DataManager/DataProcessor.h"
5 #include <string>
6 
7 namespace ots
8 {
9  typedef DataProcessor*(dpvimakeFunc_t) ();
10 }
11 
12 #define DEFINE_OTS_PROCESSOR(klass) \
13  extern "C" \
14  ots::DataProcessor* \
15  make(std::string const& supervisorApplicationUID, std::string const& bufferUID, std::string const& processorUID, const ConfigurationTree& configurationTree, const std::string& pathToInterfaceConfiguration) \
16  {\
17  return new klass(supervisorApplicationUID, bufferUID, processorUID, configurationTree, pathToInterfaceConfiguration); \
18  }
19 
20 #endif /* _ots_ProcessorPluginMacro_h_ */