CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ParameterAdapter.h
Go to the documentation of this file.
1 #ifndef UtilAlgos_ParameterAdapter_h
2 #define UtilAlgos_ParameterAdapter_h
3 
6 
7 namespace reco {
8  namespace modules {
9 
10  template<typename S>
12  static S make(const edm::ParameterSet & cfg) {
13  return S(cfg);
14  }
16  return S(cfg, iC);
17  }
19  return S(cfg, iC);
20  }
21  };
22 
23  template<typename S>
25  return ParameterAdapter<S>::make(cfg);
26  }
27  template<typename S>
29  return ParameterAdapter<S>::make(cfg, iC);
30  }
31  template<typename S>
33  return ParameterAdapter<S>::make(cfg, iC);
34  }
35 
36  }
37 }
38 
39 #define NOPARAMETER_ADAPTER(TYPE) \
40 namespace reco { \
41  namespace modules { \
42  struct ParameterAdapter<TYPE> { \
43  static TYPE make(const edm::ParameterSet & cfg) { \
44  return TYPE(); \
45  } \
46  static TYPE make(const edm::ParameterSet & cfg, edm::ConsumesCollector && iC) { \
47  return TYPE(); \
48  } \
49  static TYPE make(const edm::ParameterSet & cfg, edm::ConsumesCollector & iC) { \
50  return TYPE(); \
51  } \
52  }; \
53  } \
54 }
55 
56 #endif
57 
tuple cfg
Definition: looper.py:293
S make(const edm::ParameterSet &cfg)
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &iC)
double S(const TLorentzVector &, const TLorentzVector &)
Definition: Particle.cc:99
static S make(const edm::ParameterSet &cfg)