CMS 3D CMS Logo

eHCALMatrixExtra.h
Go to the documentation of this file.
1 /*
2 Functions to return total energy contained in NxN (3x3/5x5/7x7)
3 Hcal towers aroud a given DetId.
4 
5 Inputs :
6 1. HcalTopology,
7 2. DetId around which NxN is to be formed,
8 3. HcalRecHitCollection,
9 4. Number of towers to be navigated along eta and phi along
10  one direction (navigation is done alone +-deta and +-dphi).
11 5. option to include HO
12 
13 Authors: Seema Sharma, Sunanda Banerjee
14 Created: August 2009
15 */
16 
17 #ifndef CalibrationIsolatedParticleseHCALMatrixExtra_h
18 #define CalibrationIsolatedParticleseHCALMatrixExtra_h
19 
20 // system include files
21 #include <memory>
22 #include <map>
23 #include <sstream>
24 #include <vector>
25 
26 // user include files
32 
35 
36 namespace spr {
37 
38  template <typename T>
39  std::vector<std::pair<DetId, double> > eHCALmatrixCell(const HcalTopology* topology,
40  const DetId& det,
42  int ieta,
43  int iphi,
44  bool includeHO = false,
45  double hbThr = -100,
46  double heThr = -100,
47  double hfThr = -100,
48  double hoThr = -100,
49  bool debug = false);
50 
51  template <typename T>
52  std::pair<double, int> eHCALmatrixTotal(const HcalTopology* topology,
53  const DetId& det,
55  int ieta,
56  int iphi,
57  bool includeHO = false,
58  double hbThr = -100,
59  double heThr = -100,
60  double hfThr = -100,
61  double hoThr = -100,
62  bool debug = false);
63 
64  template <typename T>
65  double energyHCALmatrix(const HcalTopology* topology,
66  const DetId& det,
68  int ieta,
69  int iphi,
70  bool includeHO = false,
71  double hbThr = -100,
72  double heThr = -100,
73  double hfThr = -100,
74  double hoThr = -100,
75  bool debug = false);
76 
77  template <typename T>
78  double energyHCAL(std::vector<DetId>& vNeighboursDetId,
79  std::vector<DetId>& dets,
80  const HcalTopology* topology,
82  bool includeHO = false,
83  double hbThr = -100,
84  double heThr = -100,
85  double hfThr = -100,
86  double hoThr = -100,
87  bool debug = false);
88 
89  template <typename T>
90  std::vector<std::pair<DetId, double> > energyDetIdHCAL(std::vector<DetId>& vdets,
92  double hbThr = -100,
93  double heThr = -100,
94  double hfThr = -100,
95  double hoThr = -100,
96  bool debug = false);
97 
98 } // namespace spr
99 
100 #include "Calibration/IsolatedParticles/interface/eHCALMatrixExtra.icc"
101 #endif
std::vector< std::pair< DetId, double > > eHCALmatrixCell(const HcalTopology *topology, const DetId &det, edm::Handle< T > &hits, int ieta, int iphi, bool includeHO=false, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, bool debug=false)
double energyHCALmatrix(const HcalTopology *topology, const DetId &det, edm::Handle< T > &hits, int ieta, int iphi, bool includeHO=false, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, bool debug=false)
std::vector< std::pair< DetId, double > > energyDetIdHCAL(std::vector< DetId > &vdets, edm::Handle< T > &hits, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, bool debug=false)
std::pair< double, int > eHCALmatrixTotal(const HcalTopology *topology, const DetId &det, edm::Handle< T > &hits, int ieta, int iphi, bool includeHO=false, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, bool debug=false)
Definition: DetId.h:17
#define debug
Definition: HDRShower.cc:19
double energyHCAL(std::vector< DetId > &vdets, edm::Handle< T > &hits, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, double tMin=-500, double tMax=500, int useRaw=0, bool debug=false)