CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalHaloAlgo.h
Go to the documentation of this file.
1 #ifndef RECOMET_METALGORITHMS_HCALHALOALGO_H
2 #define RECOMET_METALGORITHMS_HCALHALOALGO_H
3 
5 
6 /*
7  [class]: HcalHaloAlgo
8  [authors]: R. Remington, The University of Florida
9  [description]: Algorithm to calculate quantities relevant to HcalHaloData object
10  [date]: October 15, 2009
11 */
12 
16 
21 
23 
30 
42 
44 
45 
46 
48  public:
49  //constructor
50  HcalHaloAlgo();
51  //destructor
53 
54  // run algorithm
56 
58 
59  // Set RecHit Energy Thresholds
61 
62  // Set Phi Wedge Thresholds
63  void SetPhiWedgeEnergyThreshold( float SumE ){ SumEnergyThreshold = SumE ;}
65  void SetPhiWedgeThresholds(float SumE, int nhits) { SumEnergyThreshold = SumE ; NHitsThreshold = nhits ;}
66 
67  // Get RecHit Energy Threshold
70 
71  // Get Phi Wedge Threhsolds
74 
75 
76  std::vector<reco::HaloClusterCandidateHCAL> GetHaloClusterCandidateHB(edm::Handle<EcalRecHitCollection>& ebrechitcoll, edm::Handle<HBHERecHitCollection>& hbherechitcoll,float et_thresh_seedrh);
77  std::vector<reco::HaloClusterCandidateHCAL> GetHaloClusterCandidateHE(edm::Handle<EcalRecHitCollection>& eerechitcoll, edm::Handle<HBHERecHitCollection>& hbherechitcoll,float et_thresh_seedrh);
80 
81 
82 
83  private:
84  // Invidiual RecHit Threhsolds
87 
88  // Phi Wedge Thresholds
91 
92  const CaloGeometry *geo;
94 
95 };
96 
97 #endif
float HERecHitEnergyThreshold
Definition: HcalHaloAlgo.h:86
void SetRecHitEnergyThresholds(float HB, float HE)
Definition: HcalHaloAlgo.h:60
std::vector< reco::HaloClusterCandidateHCAL > GetHaloClusterCandidateHE(edm::Handle< EcalRecHitCollection > &eerechitcoll, edm::Handle< HBHERecHitCollection > &hbherechitcoll, float et_thresh_seedrh)
void SetPhiWedgeEnergyThreshold(float SumE)
Definition: HcalHaloAlgo.h:63
float GetHERecHitEnergyThreshold()
Definition: HcalHaloAlgo.h:69
bool HBClusterShapeandTimeStudy(reco::HaloClusterCandidateHCAL hcand, bool ishlt)
float GetHBRecHitEnergyThreshold()
Definition: HcalHaloAlgo.h:68
float GetPhiWedgeEnergyThreshold()
Definition: HcalHaloAlgo.h:72
math::XYZPoint Point
point in the space
Definition: Vertex.h:39
void SetPhiWedgeThresholds(float SumE, int nhits)
Definition: HcalHaloAlgo.h:65
reco::HcalHaloData Calculate(const CaloGeometry &TheCaloGeometry, edm::Handle< HBHERecHitCollection > &TheHBHERecHits, edm::Handle< CaloTowerCollection > &TheCaloTowers, edm::Handle< EBRecHitCollection > &TheEBRecHits, edm::Handle< EERecHitCollection > &TheEERecHits, const edm::EventSetup &TheSetup)
Definition: HcalHaloAlgo.cc:41
Definition: DetId.h:18
int GetPhiWedgeNHitsThreshold()
Definition: HcalHaloAlgo.h:73
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
float HBRecHitEnergyThreshold
Definition: HcalHaloAlgo.h:85
float SumEnergyThreshold
Definition: HcalHaloAlgo.h:89
math::XYZPoint getPosition(const DetId &id, reco::Vertex::Point vtx)
void SetPhiWedgeNHitsThreshold(int nhits)
Definition: HcalHaloAlgo.h:64
int NHitsThreshold
Definition: HcalHaloAlgo.h:90
bool HEClusterShapeandTimeStudy(reco::HaloClusterCandidateHCAL hcand, bool ishlt)
const CaloGeometry * geo
Definition: HcalHaloAlgo.h:92
std::vector< reco::HaloClusterCandidateHCAL > GetHaloClusterCandidateHB(edm::Handle< EcalRecHitCollection > &ebrechitcoll, edm::Handle< HBHERecHitCollection > &hbherechitcoll, float et_thresh_seedrh)