CMS 3D CMS Logo

ParameterAdapter.h
Go to the documentation of this file.
1 #ifndef UtilAlgos_ParameterAdapter_h
2 #define UtilAlgos_ParameterAdapter_h
3 
7 
8 namespace reco {
9  namespace modules {
10 
11  template<typename S>
13  static S make(const edm::ParameterSet & cfg) {
14  return S(cfg);
15  }
17  return S(cfg, iC);
18  }
20  return S(cfg, iC);
21  }
22 
25  }
26  };
27 
28  template<typename S>
30  return ParameterAdapter<S>::make(cfg);
31  }
32  template<typename S>
34  return ParameterAdapter<S>::make(cfg, iC);
35  }
36  template<typename S>
38  return ParameterAdapter<S>::make(cfg, iC);
39  }
40 
41  template <typename S>
44  }
45  }
46 }
47 
48 #define NOPARAMETER_ADAPTER(TYPE) \
49 namespace reco { \
50  namespace modules { \
51  struct ParameterAdapter<TYPE> { \
52  static TYPE make(const edm::ParameterSet & cfg) { \
53  return TYPE(); \
54  } \
55  static TYPE make(const edm::ParameterSet & cfg, edm::ConsumesCollector && iC) { \
56  return TYPE(); \
57  } \
58  static TYPE make(const edm::ParameterSet & cfg, edm::ConsumesCollector & iC) { \
59  return TYPE(); \
60  } \
61  static void fillPSetDescription(edm::ParameterSetDescription& desc) {} \
62  }; \
63  } \
64 }
65 
66 #endif
67 
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
static void fillPSetDescription(edm::ParameterSetDescription &desc)
def template(fileName, svg, replaceme="REPLACEME")
Definition: svgfig.py:521
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &iC)
double S(const TLorentzVector &, const TLorentzVector &)
Definition: Particle.cc:99
fixed size matrix
static S make(const edm::ParameterSet &cfg)