Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
RecoLocalTracker
SiStripClusterizer
src
StripClusterizerAlgorithmFactory.cc
Go to the documentation of this file.
1
#include "
RecoLocalTracker/SiStripClusterizer/interface/StripClusterizerAlgorithmFactory.h
"
2
3
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
4
#include "
RecoLocalTracker/SiStripClusterizer/interface/StripClusterizerAlgorithm.h
"
5
#include "
RecoLocalTracker/SiStripClusterizer/interface/ThreeThresholdAlgorithm.h
"
6
#include "
RecoLocalTracker/SiStripClusterizer/interface/ClusterChargeCut.h
"
7
8
std::unique_ptr<StripClusterizerAlgorithm>
StripClusterizerAlgorithmFactory::create
(
edm::ConsumesCollector
&& iC,
9
const
edm::ParameterSet
& conf) {
10
std::string
algorithm
= conf.
getParameter
<
std::string
>(
"Algorithm"
);
11
12
if
(algorithm ==
"ThreeThresholdAlgorithm"
) {
13
return
std::unique_ptr<StripClusterizerAlgorithm>(
14
new
ThreeThresholdAlgorithm
(iC.esConsumes<
SiStripClusterizerConditions
,
SiStripClusterizerConditionsRcd
>(
15
edm::ESInputTag
{
""
, conf.
getParameter
<
std::string
>(
"ConditionsLabel"
)}),
16
conf.
getParameter
<
double
>(
"ChannelThreshold"
),
17
conf.
getParameter
<
double
>(
"SeedThreshold"
),
18
conf.
getParameter
<
double
>(
"ClusterThreshold"
),
19
conf.
getParameter
<
unsigned
>(
"MaxSequentialHoles"
),
20
conf.
getParameter
<
unsigned
>(
"MaxSequentialBad"
),
21
conf.
getParameter
<
unsigned
>(
"MaxAdjacentBad"
),
22
conf.
getParameter
<
bool
>(
"RemoveApvShots"
),
23
clusterChargeCut
(conf)));
24
}
25
26
if
(
algorithm
==
"OldThreeThresholdAlgorithm"
) {
27
throw
cms::Exception
(
"[StripClusterizerAlgorithmFactory] obsolete"
) <<
algorithm
<<
" Obsolete since 7_3_0"
;
28
}
29
30
throw
cms::Exception
(
"[StripClusterizerAlgorithmFactory] Unregistered Algorithm"
)
31
<<
algorithm
<<
" is not a registered StripClusterizerAlgorithm"
;
32
}
StripClusterizerAlgorithmFactory.h
Exception
Definition:
hltDiff.cc:245
edm::ESInputTag
Definition:
ESInputTag.h:87
clusterChargeCut
float clusterChargeCut(const edm::ParameterSet &conf, const char *name="clusterChargeCut")
Definition:
ClusterChargeCut.h:7
ThreeThresholdAlgorithm.h
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
ParameterSet.h
ClusterChargeCut.h
HLT_FULL_cff.algorithm
tuple algorithm
Definition:
HLT_FULL_cff.py:7871
SiStripClusterizerConditions
Definition:
SiStripClusterizerConditions.h:11
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition:
ParameterSet.h:303
StripClusterizerAlgorithmFactory::create
static std::unique_ptr< StripClusterizerAlgorithm > create(edm::ConsumesCollector &&, const edm::ParameterSet &)
Definition:
StripClusterizerAlgorithmFactory.cc:8
edm::ParameterSet
Definition:
ParameterSet.h:47
ThreeThresholdAlgorithm
Definition:
ThreeThresholdAlgorithm.h:6
SiStripClusterizerConditionsRcd
Definition:
SiStripClusterizerConditionsRcd.h:8
edm::ConsumesCollector
Definition:
ConsumesCollector.h:45
StripClusterizerAlgorithm.h
Generated for CMSSW Reference Manual by
1.8.5