CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalHaloAlgo.h
Go to the documentation of this file.
1 #ifndef RECOMET_METALGORITHMS_ECALHALOALGO_H
2 #define RECOMET_METALGORITHMS_ECALHALOALGO_H
3 /*
4  [class]: EcalHaloAlgo
5  [authors]: R. Remington, The University of Florida
6  [description]: Algorithm to calculate quantities relevant to EcalHaloData object
7  [date]: October 15, 2009
8 */
10 
18 
21 
32 //#include "RecoEcal/EgammaCoreTools/interface/EcalClusterLazyTools.h"
41 
43 {
44  public:
45  // constructor
46  EcalHaloAlgo();
47  // destructor
49 
50  // Run algorithm
52  // Set Roundness cuts
53  void SetRoundnessCut( float r = 100.){ RoundnessCut=r; }
54  // Set Angle cuts
55  void SetAngleCut(float a = 4.){ AngleCut =a;}
56 
57  // Set RecHit Energy Thresholds
59  // Set Phi Wedge Thresholds
60  void SetPhiWedgeEnergyThreshold( float SumE ){ SumEnergyThreshold = SumE ;}
62  void SetPhiWedgeThresholds(float SumE, int nhits) { SumEnergyThreshold = SumE ; NHitsThreshold = nhits ;}
63 
64  // Get Roundness cut
65  float GetRoundnessCut(){return RoundnessCut ;}
66  // Get Angle cut
67  float GetAngleCut(){return AngleCut ;}
68 
69  // Get RecHit Energy Threshold
73 
74  // Get Phi Wedge Threhsolds
77 
78 
79  private:
80 
81  // Cut Value for Supercluster "roundness" variable
82  float RoundnessCut;
83  // Cut Value for Supercluster "angle" variable
84  float AngleCut;
85 
86  // Invidiual RecHit Threhsolds
90 
91  // Phi Wedge Thresholds
94 };
95 
96 
97 
98 #endif
float GetPhiWedgeEnergyThreshold()
Definition: EcalHaloAlgo.h:75
void SetAngleCut(float a=4.)
Definition: EcalHaloAlgo.h:55
reco::EcalHaloData Calculate(const CaloGeometry &TheCaloGeometry, edm::Handle< reco::PhotonCollection > &ThePhotons, edm::Handle< reco::SuperClusterCollection > &TheSuperClusters, edm::Handle< EBRecHitCollection > &TheEBRecHits, edm::Handle< EERecHitCollection > &TheEERecHits, edm::Handle< ESRecHitCollection > &TheESRecHits)
Definition: EcalHaloAlgo.cc:28
float GetEERecHitEnergyThreshold()
Definition: EcalHaloAlgo.h:71
float GetEBRecHitEnergyThreshold()
Definition: EcalHaloAlgo.h:70
float ESRecHitEnergyThreshold
Definition: EcalHaloAlgo.h:89
void SetRecHitEnergyThresholds(float EB, float EE, float ES)
Definition: EcalHaloAlgo.h:58
float SumEnergyThreshold
Definition: EcalHaloAlgo.h:92
float GetRoundnessCut()
Definition: EcalHaloAlgo.h:65
void SetPhiWedgeEnergyThreshold(float SumE)
Definition: EcalHaloAlgo.h:60
void SetPhiWedgeThresholds(float SumE, int nhits)
Definition: EcalHaloAlgo.h:62
float EERecHitEnergyThreshold
Definition: EcalHaloAlgo.h:88
float GetAngleCut()
Definition: EcalHaloAlgo.h:67
float GetESRecHitEnergyThreshold()
Definition: EcalHaloAlgo.h:72
float EBRecHitEnergyThreshold
Definition: EcalHaloAlgo.h:87
int GetPhiWedgeNHitsThreshold()
Definition: EcalHaloAlgo.h:76
double a
Definition: hdecay.h:121
void SetPhiWedgeNHitsThreshold(int nhits)
Definition: EcalHaloAlgo.h:61
float AngleCut
Definition: EcalHaloAlgo.h:84
int NHitsThreshold
Definition: EcalHaloAlgo.h:93
float RoundnessCut
Definition: EcalHaloAlgo.h:82
void SetRoundnessCut(float r=100.)
Definition: EcalHaloAlgo.h:53