1 #ifndef DETECTOR_DESCRIPTION_DD_PLUGINS_H
2 #define DETECTOR_DESCRIPTION_DD_PLUGINS_H
5 #include "DD4hep/Factories.h"
6 #include "DD4hep/Plugins.h"
18 template <
typename P,
typename S>
25 #define DECLARE_DDCMS_DETELEMENT(name, func) \
26 DD4HEP_OPEN_PLUGIN(dd4hep, ddcms_det_element_##name) { \
27 typedef DDCMSDetElementFactory<ddcms_det_element_##name> _IMP; \
29 long _IMP::create(dd4hep::Detector& d, cms::DDParsingContext& c, xml::Handle_t e) { \
30 return func(d, c, e); \
32 DD4HEP_PLUGINSVC_FACTORY( \
33 ddcms_det_element_##name, name, long(dd4hep::Detector*, cms::DDParsingContext*, ns::xml_h*), __LINE__) \
static constexpr float a0
static long create(dd4hep::Detector &detector, cms::DDParsingContext &context, dd4hep::xml::Handle_t element)