CMS 3D CMS Logo

eCone.h
Go to the documentation of this file.
1 #ifndef CalibrationIsolatedParticleseCone_h
2 #define CalibrationIsolatedParticleseCone_h
3 
4 // system include files
5 #include <memory>
6 #include <map>
7 #include <vector>
8 
9 // user include files
11 
15 
17 
19 
20 namespace spr{
21 
22  // Basic cone energy cluster for hcal simhits and hcal rechits
23  template <typename T>
24  double eCone_hcal(const CaloGeometry* geo, edm::Handle<T>& hits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, int& nRecHits, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, double tMin=-500, double tMax=500, int detOnly=-1, int useRaw=0, bool debug=false);
25 
26  // Cone energy cluster for hcal simhits and hcal rechits
27  // that returns vector of rechit IDs and hottest cell info
28  template <typename T>
29  double eCone_hcal(const CaloGeometry* geo, edm::Handle<T>& hits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, int& nRecHits, std::vector<DetId>& coneRecHitDetIds, double& distFromHotCell, int& ietaHotCell, int& iphiHotCell, GlobalPoint& gposHotCell, int detOnly=-1, int useRaw=0, bool debug=false);
30 
31  template <typename T>
32  double eCone_hcal(const CaloGeometry* geo, edm::Handle<T>& hits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, int& nRecHits, std::vector<DetId>& coneRecHitDetIds, std::vector<double>& eHit, int useRaw=0, bool debug=false);
33 
34  // Cone energy cluster for hcal simhits and hcal rechits
35  // that returns vector of rechit IDs and hottest cell info
36  // AND info for making "hit maps"
37  template <typename T>
38  double eCone_hcal(const CaloGeometry* geo, edm::Handle<T>& hits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, int& nRecHits, std::vector<int>& RH_ieta, std::vector<int>& RH_iphi, std::vector<double>& RH_ene, std::vector<DetId>& coneRecHitDetIds, double& distFromHotCell, int& ietaHotCell, int& iphiHotCell, GlobalPoint& gposHotCell, int detOnly=-1, int useRaw=0, bool debug=false);
39 
40  // Basic cone energy clustering for Ecal
41  template <typename T>
42  double eCone_ecal(const CaloGeometry* geo, edm::Handle<T>& barrelhits, edm::Handle<T>& endcaphits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, int& nRecHits, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false);
43 
44  template <typename T>
45  double eCone_ecal(const CaloGeometry* geo, edm::Handle<T>& barrelhits, edm::Handle<T>& endcaphits, const GlobalPoint& hpoint1, const GlobalPoint& point1, double dR, const GlobalVector& trackMom, std::vector<DetId>& coneRecHitDetIds, std::vector<double>& eHit, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false);
46 
47 }
48 
49 #include "eCone.icc"
50 
51 #endif
double eCone_hcal(const CaloGeometry *geo, edm::Handle< T > &hits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, const GlobalVector &trackMom, int &nRecHits, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, double tMin=-500, double tMax=500, int detOnly=-1, int useRaw=0, bool debug=false)
double eCone_ecal(const CaloGeometry *geo, edm::Handle< T > &barrelhits, edm::Handle< T > &endcaphits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, const GlobalVector &trackMom, int &nRecHits, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false)
#define debug
Definition: HDRShower.cc:19