artdaq_mfextensions  v1_02_02
ReceiverMacros.hh
1 #ifndef mfextensions_Receivers_ReceiverMacros_hh
2 #define mfextensions_Receivers_ReceiverMacros_hh
3 
4 #include "mfextensions/Receivers/MVReceiver.hh"
5 #include "fhiclcpp/fwd.h"
6 
7 #include <memory>
8 
9 namespace mfviewer
10 {
16  typedef std::unique_ptr<mfviewer::MVReceiver> makeFunc_t(fhicl::ParameterSet const& ps);
17 }
18 
19 #define DEFINE_MFVIEWER_RECEIVER(klass) \
20  extern "C" \
21  std::unique_ptr<mfviewer::MVReceiver> \
22  make(fhicl::ParameterSet const & ps) { \
23  return std::unique_ptr<mfviewer::MVReceiver>(new klass(ps)); \
24  }
25 #endif /* mfextensions_Receivers_RecevierMacros_h */