CMS 3D CMS Logo

RealisticSimClusterMapper.h
Go to the documentation of this file.
1 #ifndef __RecoParticleFlow_PFClusterProducer_RealisticSimClusterMapper_H__
2 #define __RecoParticleFlow_PFClusterProducer_RealisticSimClusterMapper_H__
3 // Author: Felice Pantaleo
5 // Date: 30/06/2017
6 // Email: felice@cern.ch
11 
13 
15 public:
17  : InitialClusteringStepBase(conf, sumes),
18  invisibleFraction_(conf.getParameter<double>("invisibleFraction")),
19  exclusiveFraction_(conf.getParameter<double>("exclusiveFraction")),
20  maxDistanceFilter_(conf.getParameter<bool>("maxDistanceFilter")),
21  maxDistance_(conf.getParameter<double>("maxDistance")),
22  maxDforTimingSquared_(conf.getParameter<double>("maxDforTimingSquared")),
23  timeOffset_(conf.getParameter<double>("timeOffset")),
24  minNHitsforTiming_(conf.getParameter<unsigned int>("minNHitsforTiming")),
25  useMCFractionsForExclEnergy_(conf.getParameter<bool>("useMCFractionsForExclEnergy")),
26  calibMinEta_(conf.getParameter<double>("calibMinEta")),
27  calibMaxEta_(conf.getParameter<double>("calibMaxEta")) {
29  hadronCalib_ = conf.getParameter<std::vector<double> >("hadronCalib");
30  egammaCalib_ = conf.getParameter<std::vector<double> >("egammaCalib");
31  }
32 
36 
37  void updateEvent(const edm::Event&) final;
38  void update(const edm::EventSetup&) final;
39 
41  const std::vector<bool>&,
42  const std::vector<bool>&,
43  reco::PFClusterCollection&) override;
44 
45 private:
47  const float invisibleFraction_ = 0.3f;
48  const float exclusiveFraction_ = 0.7f;
49  const bool maxDistanceFilter_ = false;
50  const float maxDistance_ = 10.f;
51  const float maxDforTimingSquared_ = 4.0f;
52  const float timeOffset_;
53  const unsigned int minNHitsforTiming_ = 3;
54  const bool useMCFractionsForExclEnergy_ = false;
55  const float calibMinEta_ = 1.4;
56  const float calibMaxEta_ = 3.0;
57  std::vector<double> hadronCalib_;
58  std::vector<double> egammaCalib_;
59 
62 };
63 
65 
66 #endif
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
void buildClusters(const edm::Handle< reco::PFRecHitCollection > &, const std::vector< bool > &, const std::vector< bool > &, reco::PFClusterCollection &) override
RealisticSimClusterMapper & operator=(const RealisticSimClusterMapper &)=delete
void update(const edm::EventSetup &) final
edm::EDGetTokenT< SimClusterCollection > simClusterToken_
std::vector< double > egammaCalib_
void updateEvent(const edm::Event &) final
std::vector< double > hadronCalib_
std::vector< PFCluster > PFClusterCollection
collection of PFCluster objects
Definition: PFClusterFwd.h:9
#define DEFINE_EDM_PLUGIN(factory, type, name)
edm::Handle< SimClusterCollection > simClusterH_
RealisticSimClusterMapper(const edm::ParameterSet &conf, edm::ConsumesCollector &sumes)
std::vector< SimCluster > SimClusterCollection
Definition: SimClusterFwd.h:8