|
|
Go to the documentation of this file. 1 #ifndef PhysicsTools_MVATrainer_HelperMacros_h
2 #define PhysicsTools_MVATrainer_HelperMacros_h
10 #define MVA_COMPUTER_SAVE_IMPLEMENT(T, P) \
11 namespace { namespace mva11 { \
12 typedef ::PhysicsTools::MVATrainerSaveImpl<T> P; \
13 DEFINE_FWK_MODULE(P); \
14 }} typedef int mvaDummyTypedef11 ## T
16 #define MVA_COMPUTER_CONTAINER_SAVE_IMPLEMENT(T, P) \
17 namespace { namespace mva12 { \
18 typedef ::PhysicsTools::MVATrainerContainerSaveImpl<T> P; \
19 DEFINE_FWK_MODULE(P); \
20 }} typedef int mvaDummyTypedef12 ## T
22 #define MVA_COMPUTER_FILE_SAVE_IMPLEMENT(T, P) \
23 namespace { namespace mva13 { \
24 typedef ::PhysicsTools::MVATrainerFileSaveImpl<T> P; \
25 DEFINE_FWK_MODULE(P); \
26 }} typedef int mvaDummyTypedef13 ## T
28 #define MVA_TRAINER_LOOPER_IMPLEMENT(T, P) \
29 namespace { namespace mva14 { \
30 typedef ::PhysicsTools::MVATrainerLooperImpl<T> P; \
31 DEFINE_FWK_LOOPER(P); \
32 }} typedef int mvaDummyTypedef14 ## T
34 #define MVA_TRAINER_CONTAINER_LOOPER_IMPLEMENT(T, P) \
35 namespace { namespace mva15 { \
36 typedef ::PhysicsTools::MVATrainerContainerLooperImpl<T> P; \
37 DEFINE_FWK_LOOPER(P); \
38 }} typedef int mvaDummyTypedef15 ## T
40 #define MVA_TRAINER_IMPLEMENT(N) \
41 MVA_COMPUTER_CONTAINER_SAVE_IMPLEMENT(N ## Rcd, N ## ContainerSaveCondDB); \
42 MVA_COMPUTER_FILE_SAVE_IMPLEMENT(N ## Rcd, N ## SaveFile); \
43 MVA_TRAINER_CONTAINER_LOOPER_IMPLEMENT(N ## Rcd, N ## TrainerLooper)
47 #endif // PhysicsTools_MVATrainer_HelperMacros_h