00001 #ifndef _ots_InterfacePluginMacro_h_
00002 #define _ots_InterfacePluginMacro_h_
00003
00004 #include "otsdaq-core/FECore/FEVInterface.h"
00005 #include <memory>
00006
00007 #define DEFINE_OTS_INTERFACE(klass) \
00008 extern "C" \
00009 std::unique_ptr<ots::FEVInterface> \
00010 make(const std::string& interfaceUID, const ConfigurationTree& configurationTree, const std::string& pathToInterfaceConfiguration) \
00011 {\
00012 return std::unique_ptr<ots::FEVInterface>(new klass(interfaceUID, configurationTree, pathToInterfaceConfiguration)); \
00013 }
00014
00015 #endif