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  edm::ConsumesCollector& sumes) :
18  InitialClusteringStepBase(conf,sumes),
19  invisibleFraction_(conf.getParameter<double>("invisibleFraction")),
20  exclusiveFraction_(conf.getParameter<double>("exclusiveFraction")),
21  maxDistanceFilter_(conf.getParameter<bool>("maxDistanceFilter")),
22  maxDistance_(conf.getParameter<double>("maxDistance")),
23  maxDforTimingSquared_(conf.getParameter<double>("maxDforTimingSquared")),
24  timeOffset_(conf.getParameter<double>("timeOffset")),
25  minNHitsforTiming_(conf.getParameter<unsigned int>("minNHitsforTiming")),
26  useMCFractionsForExclEnergy_(conf.getParameter<bool>("useMCFractionsForExclEnergy")),
27  calibMinEta_(conf.getParameter<double>("calibMinEta")),
28  calibMaxEta_(conf.getParameter<double>("calibMaxEta"))
29  {
31  hadronCalib_ = conf.getParameter < std::vector<double> > ("hadronCalib");
32  egammaCalib_ = conf.getParameter < std::vector<double> > ("egammaCalib");
33  }
34 
38 
39  void updateEvent(const edm::Event&) final;
40  void update(const edm::EventSetup&) final;
41 
43  const std::vector<bool>&,
44  const std::vector<bool>&,
45  reco::PFClusterCollection&) override;
46 
47  private:
49  const float invisibleFraction_ = 0.3f;
50  const float exclusiveFraction_ = 0.7f;
51  const bool maxDistanceFilter_ = false;
52  const float maxDistance_ = 10.f;
53  const float maxDforTimingSquared_ = 4.0f;
54  const float timeOffset_;
55  const unsigned int minNHitsforTiming_ = 3;
56  const bool useMCFractionsForExclEnergy_ = false;
57  const float calibMinEta_ = 1.4;
58  const float calibMaxEta_ = 3.0;
59  std::vector<double> hadronCalib_;
60  std::vector<double> egammaCalib_;
61 
64 
65 };
66 
69  "RealisticSimClusterMapper");
70 
71 #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