CMS 3D CMS Logo

PFCTRecHitProducer.h
Go to the documentation of this file.
1 #ifndef RecoParticleFlow_PFClusterProducer_PFCTRecHitProducer_h_
2 #define RecoParticleFlow_PFClusterProducer_PFCTRecHitProducer_h_
3 
4 // system include files
5 #include <memory>
6 #include <vector>
7 
8 // user include files
11 
14 
16 
18 
24 
30 
31 
34 class DetId;
35 
37  public:
38  explicit PFCTRecHitProducer(const edm::ParameterSet&);
39  ~PFCTRecHitProducer() override;
40 
41  void beginLuminosityBlock(const edm::LuminosityBlock& lumi,
42  const edm::EventSetup & es) override;
43 
44  void produce(edm::Event& iEvent,
45  const edm::EventSetup& iSetup) override;
46 
47 
48  reco::PFRecHit* createHcalRecHit( const DetId& detid,
49  double energy,
50  PFLayer::Layer layer,
52  const CaloTowerDetId& newDetId);
53 
54 
55  protected:
62 
63  // ----------access to event data
67 
69  double thresh_HF_;
70 
71  // Navigation in HF: False = no real clustering in HF; True = do clustering
73  double weight_HFem_;
74  double weight_HFhad_;
75 
76  // Apply HCAL DPG rechit calibration
78  bool HF_Calib_;
80  float HF_Calib_29;
81 
82  // Don't allow large energy in short fibres if there is no energy in long fibres
83  double shortFibre_Cut;
85 
86  // Don't allow large energy in long fibres if there is no energy in short fibres
87  double longFibre_Cut;
89 
90  // Also apply HCAL DPG cleaning
92 
93  // Don't allow too large timing excursion if energy in long/short fibres is large enough
99 
106 
110 
111  // Compensate for dead ECAL channels
115  unsigned int ECAL_Dead_Code_;
116 
117  // Depth correction for EM and HAD rechits in the HF
118  double EM_Depth_;
119  double HAD_Depth_;
120 
121 
124 
125  std::unique_ptr<PFRecHitNavigatorBase> navigator_;
126 
127 
128 };
129 
132 
133 #endif
unsigned int ECAL_Dead_Code_
double thresh_HF_
threshold for HF
edm::EDGetTokenT< HBHERecHitCollection > hcalToken_
edm::EDGetTokenT< CaloTowerCollection > towersToken_
edm::EDGetTokenT< HFRecHitCollection > hfToken_
int iEvent
Definition: GenABIO.cc:224
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClus...
Definition: PFRecHit.h:31
const HcalChannelQuality * theHcalChStatus
const CaloTowerConstituentsMap * theTowerConstituentsMap
Layer
layer definition
Definition: PFLayer.h:31
#define dso_hidden
Definition: Visibility.h:12
Definition: DetId.h:18
const HcalTopology * theHcalTopology
std::unique_ptr< PFRecHitNavigatorBase > navigator_
const EcalChannelStatus * theEcalChStatus