CMS 3D CMS Logo

FindCaloHitCone.h
Go to the documentation of this file.
1 #ifndef CalibrationIsolatedParticlesFindCaloHitCone_h
2 #define CalibrationIsolatedParticlesFindCaloHitCone_h
3 
4 // system include files
5 #include <memory>
6 #include <cmath>
7 #include <string>
8 #include <map>
9 #include <vector>
10 
11 // user include files
13 
15 
17 
26 
29 
30 #include <cmath>
31 
32 namespace spr {
33 
34  // One Hit Collection
35  template <typename T>
36  std::vector<typename T::const_iterator> findHitCone(const CaloGeometry* geo,
38  const GlobalPoint& hpoint1,
39  const GlobalPoint& point1,
40  double dR,
41  const GlobalVector& trackMom,
42  bool debug = false);
43 
44  // Two Hit Collections - needed for looping over Ecal Endcap/Barrel Hits
45  template <typename T>
46  std::vector<typename T::const_iterator> findHitCone(const CaloGeometry* geo,
47  edm::Handle<T>& barrelhits,
48  edm::Handle<T>& endcaphits,
49  const GlobalPoint& hpoint1,
50  const GlobalPoint& point1,
51  double dR,
52  const GlobalVector& trackMom,
53  bool debug = false);
54 
55  //Ecal Endcap OR Barrel RecHits
56  std::vector<EcalRecHitCollection::const_iterator> findCone(const CaloGeometry* geo,
58  const GlobalPoint& hpoint1,
59  const GlobalPoint& point1,
60  double dR,
61  bool debug = false);
62 
63  // Ecal Endcap AND Barrel RecHits
64  std::vector<EcalRecHitCollection::const_iterator> findCone(const CaloGeometry* geo,
67  const GlobalPoint& hpoint1,
68  const GlobalPoint& point1,
69  double dR,
70  const GlobalVector& trackMom,
71  bool debug = false);
72 
73  //HBHE RecHits
74  std::vector<HBHERecHitCollection::const_iterator> findCone(const CaloGeometry* geo,
76  const GlobalPoint& hpoint1,
77  const GlobalPoint& point1,
78  double dR,
79  const GlobalVector& trackMom,
80  bool debug = false);
81 
82  // PCalo SimHits
83  std::vector<edm::PCaloHitContainer::const_iterator> findCone(const CaloGeometry* geo,
85  const GlobalPoint& hpoint1,
86  const GlobalPoint& point1,
87  double dR,
88  const GlobalVector& trackMom,
89  bool debug = false);
90 
91 } // namespace spr
92 
93 #include "FindCaloHitCone.icc"
94 
95 #endif
Vector3DBase
Definition: Vector3DBase.h:8
Handle.h
spr
Definition: CaloConstants.h:6
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
EBDetId.h
EEDetId.h
edm::Handle
Definition: AssociativeIterator.h:50
spr::findHitCone
std::vector< typename T::const_iterator > findHitCone(const CaloGeometry *geo, edm::Handle< T > &hits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, const GlobalVector &trackMom, bool debug=false)
EcalRecHitCollections.h
spr::findCone
std::vector< EcalRecHitCollection::const_iterator > findCone(const CaloGeometry *geo, edm::Handle< EcalRecHitCollection > &hits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, bool debug=false)
CaloGeometry
Definition: CaloGeometry.h:21
debug
#define debug
Definition: HDRShower.cc:19
Point3DBase< float, GlobalTag >
HcalDetId.h
DetId.h
Frameworkfwd.h
CaloGeometry.h
GlobalVector.h
HcalRecHitCollections.h
PCaloHitContainer.h
Candidate.h
HGC3DClusterGenMatchSelector_cfi.dR
dR
Definition: HGC3DClusterGenMatchSelector_cfi.py:7
GlobalPoint.h