Main Page
Namespaces
Classes
Package Documentation
CommonTools
UtilAlgos
interface
ParameterAdapter.h
Go to the documentation of this file.
1
#ifndef UtilAlgos_ParameterAdapter_h
2
#define UtilAlgos_ParameterAdapter_h
3
4
#include "
FWCore/Framework/interface/ConsumesCollector.h
"
5
#include "
FWCore/ParameterSet/interface/ParameterSetfwd.h
"
6
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
7
8
namespace
reco
{
9
namespace
modules
{
10
11
template
<
typename
S>
12
struct
ParameterAdapter
{
13
static
S
make
(
const
edm::ParameterSet
&
cfg
) {
14
return
S
(cfg);
15
}
16
static
S
make
(
const
edm::ParameterSet
&
cfg
,
edm::ConsumesCollector
&& iC) {
17
return
S
(cfg, iC);
18
}
19
static
S
make
(
const
edm::ParameterSet
&
cfg
,
edm::ConsumesCollector
& iC) {
20
return
S
(cfg, iC);
21
}
22
23
static
void
fillPSetDescription
(
edm::ParameterSetDescription
& desc) {
24
S::template
fillPSetDescription
(desc);
25
}
26
};
27
28
template
<
typename
S>
29
S
make
(
const
edm::ParameterSet
&
cfg
) {
30
return
ParameterAdapter<S>::make
(cfg);
31
}
32
template
<
typename
S>
33
S
make
(
const
edm::ParameterSet
&
cfg
,
edm::ConsumesCollector
&& iC) {
34
return
ParameterAdapter<S>::make
(cfg, iC);
35
}
36
template
<
typename
S>
37
S
make
(
const
edm::ParameterSet
&
cfg
,
edm::ConsumesCollector
& iC) {
38
return
ParameterAdapter<S>::make
(cfg, iC);
39
}
40
41
template
<
typename
S>
42
void
fillPSetDescription
(
edm::ParameterSetDescription
& desc) {
43
ParameterAdapter<S>::fillPSetDescription
(desc);
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
reco::modules::ParameterAdapter::make
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
Definition:
ParameterAdapter.h:16
reco::modules::ParameterAdapter::fillPSetDescription
static void fillPSetDescription(edm::ParameterSetDescription &desc)
Definition:
ParameterAdapter.h:23
ParameterSetfwd.h
edm::ParameterSetDescription
Definition:
ParameterSetDescription.h:52
ParameterSet.h
S
Definition:
CSCDBL1TPParametersExtended.h:16
svgfig.template
def template(fileName, svg, replaceme="REPLACEME")
Definition:
svgfig.py:521
looper.cfg
cfg
Definition:
looper.py:297
reco::modules::ParameterAdapter
Definition:
ParameterAdapter.h:12
reco::modules::ParameterAdapter::make
static S make(const edm::ParameterSet &cfg, edm::ConsumesCollector &iC)
Definition:
ParameterAdapter.h:19
S
double S(const TLorentzVector &, const TLorentzVector &)
Definition:
Particle.cc:99
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:44
reco::modules::ParameterAdapter::make
static S make(const edm::ParameterSet &cfg)
Definition:
ParameterAdapter.h:13
edm::ParameterSet
Definition:
ParameterSet.h:36
ConsumesCollector.h
edm::ConsumesCollector
Definition:
ConsumesCollector.h:39
modules
Definition:
ZHLTMatchFilter.cc:17
Generated for CMSSW Reference Manual by
1.8.11