58 HFDBversion_(conf.existsAs<
int>(
"HFDBversion") ? conf.getParameter<
int>(
"HFDBversion") : 99),
59 HFDBvector_(conf.existsAs<
std::
vector<double> >(
"HFDBvector")
60 ? conf.getParameter<
std::
vector<double> >(
"HFDBvector")
63 Cut2D_(conf.getParameter<double>(
"intercept2DCut")),
67 : ((Cut2D_ > 0.83 && Cut2D_ <= 0.9) ? (0.275) : (0.2))),
68 hfvars_(HFDBversion_, HFDBvector_),
69 algo_(conf.existsAs<
bool>(
"Correct") ? conf.getParameter<
bool>(
"Correct") :
true,
70 conf.getParameter<double>(
"e9e25Cut"),
71 conf.getParameter<double>(
"intercept2DCut"),
72 conf.existsAs<double>(
"intercept2DSlope") ? conf.getParameter<double>(
"intercept2DSlope") : defaultSlope2D_,
73 conf.getParameter<
std::
vector<double> >(
"e1e9Cut"),
74 conf.getParameter<
std::
vector<double> >(
"eCOREe9Cut"),
75 conf.getParameter<
std::
vector<double> >(
"eSeLCut"),
82 produces<reco::RecoEcalCandidateCollection>();
97 static const int minNDOF = 4;
98 static const double maxAbsZ = 15.0;
99 static const double maxd0 = 2.0;
103 for (reco::VertexCollection::const_iterator vit =
vertices.begin(); vit !=
vertices.end(); ++vit) {
104 if (vit->ndof() > minNDOF && ((
maxAbsZ <= 0) || fabs(vit->z()) <=
maxAbsZ) &&
105 ((
maxd0 <= 0) || fabs(vit->position().rho()) <=
maxd0))
113 auto retdata1 = std::make_unique<reco::RecoEcalCandidateCollection>();
115 algo_.
produce(super_clus, *hf_assoc, *retdata1, nvertex);
T getParameter(std::string const &) const
edm::EDGetToken vertices_
void produce(const edm::Handle< reco::SuperClusterCollection > &SuperClusters, const reco::HFEMClusterShapeAssociationCollection &AssocShapes, reco::RecoEcalCandidateCollection &RecoECand, int nvtx) const
T const * product() const
HFRecoEcalCandidateProducer(edm::ParameterSet const &conf)
std::vector< Vertex > VertexCollection
collection of Vertex objects
HFRecoEcalCandidateAlgo algo_
reco::HFValueStruct hfvars_
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
std::vector< double > defaultDB_
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
#define DEFINE_FWK_MODULE(type)
std::vector< double > HFDBvector_
edm::AssociationMap< edm::OneToOne< SuperClusterCollection, HFEMClusterShapeCollection > > HFEMClusterShapeAssociationCollection
edm::EDGetToken hfclustersHFEM_
void produce(edm::Event &e, edm::EventSetup const &iSetup) override
edm::EDGetToken hfclustersSC_