|
|
Go to the documentation of this file. 1 #ifndef PhysicsTools_MVAComputer_HelperMacros_h
2 #define PhysicsTools_MVAComputer_HelperMacros_h
11 #define MVA_COMPUTER_RECORD_DEFINE(T) \
12 class T : public edm::eventsetup::EventSetupRecordImplementation<T> {}
14 #define MVA_COMPUTER_CONTAINER_RECORD_DEFINE(T) \
15 MVA_COMPUTER_RECORD_DEFINE(T)
17 #define MVA_COMPUTER_RECORD_PLUGIN(T) \
18 INSTANTIATE_PROXY(T, ::PhysicsTools::Calibration::MVAComputer) \
19 namespace { namespace mva1 { \
20 ONLY_REGISTER_PLUGIN(T, PhysicsTools::Calibration::MVAComputer); \
21 }} typedef int mvaDummyTypedef1 ## T
23 #define MVA_COMPUTER_RECORD_IMPLEMENT(T) \
24 EVENTSETUP_RECORD_REG(T); \
25 MVA_COMPUTER_RECORD_PLUGIN(T)
27 #define MVA_COMPUTER_CONTAINER_RECORD_PLUGIN(T) \
28 INSTANTIATE_PROXY(T, ::PhysicsTools::Calibration::MVAComputerContainer) \
29 namespace { namespace mva2 { \
30 ONLY_REGISTER_PLUGIN(T, PhysicsTools::Calibration::MVAComputerContainer); \
31 }} typedef int mvaDummyTypedef2 ## T
33 #define MVA_COMPUTER_CONTAINER_RECORD_IMPLEMENT(T) \
34 EVENTSETUP_RECORD_REG(T); \
35 MVA_COMPUTER_CONTAINER_RECORD_PLUGIN(T)
37 #define MVA_COMPUTER_CONTAINER_FILE_SOURCE_IMPLEMENT(T, P) \
38 namespace { namespace mva3 { \
39 typedef ::PhysicsTools::MVAComputerESSourceImpl<T> P; \
40 DEFINE_FWK_EVENTSETUP_SOURCE(P); \
41 }} typedef int mvaDummyTypedef3 ## T
43 #define MVA_COMPUTER_CONTAINER_DEFINE(N) \
44 MVA_COMPUTER_CONTAINER_RECORD_DEFINE(N ## Rcd)
46 #define MVA_COMPUTER_CONTAINER_IMPLEMENT(N) \
47 MVA_COMPUTER_CONTAINER_RECORD_IMPLEMENT(N ## Rcd); \
48 MVA_COMPUTER_CONTAINER_FILE_SOURCE_IMPLEMENT(N ## Rcd, N ## FileSource)
50 #endif // PhysicsTools_MVAComputer_HelperMacros_h