CMS 3D CMS Logo

PayloadInspectorModule.h
Go to the documentation of this file.
1 #include <boost/python.hpp>
2 
3 #define PPCAT_NX(A, B) A ## B
4 #define PPCAT(A, B) PPCAT_NX(A, B)
5 #define STRINGIZE_NX(A) #A
6 #define STRINGIZE(A) STRINGIZE_NX(A)
7 
8 #define PAYLOAD_INSPECTOR_MODULE( PAYLOAD_TYPENAME )\
9  BOOST_PYTHON_MODULE( plugin ## PAYLOAD_TYPENAME ## _PayloadInspector )
10 
11 #define PAYLOAD_INSPECTOR_CLASS( CLASS_NAME ) \
12  boost::python::class_< CLASS_NAME, boost::python::bases<cond::payloadInspector::PlotBase> >( STRINGIZE(PPCAT(plot_,CLASS_NAME)), boost::python::init<>()) \
13  .def("process",&cond::payloadInspector::PlotBase::process ) \
14  .def("processTwoTags",&cond::payloadInspector::PlotBase::processTwoTags ) \
15  .def("payloadType",&cond::payloadInspector::PlotBase::payloadType ) \
16  .def("title",&cond::payloadInspector::PlotBase::title ) \
17  .def("isSingleIov",&cond::payloadInspector::PlotBase::isSingleIov ) \
18  .def("isTwoTags",&cond::payloadInspector::PlotBase::isTwoTags ) \
19  .def("data",&cond::payloadInspector::PlotBase::data ) \
20  ;