CMS 3D CMS Logo

HLTTau.h
Go to the documentation of this file.
1 #ifndef DataFormats_TauReco_HLTTau_h
2 #define DataFormats_TauReco_HLTTau_h
3 
4 /* class HLTTau
5  * authors: Simone Gennai (simone.gennai@cern.ch)
6  * created: Oct 25 2007,
7  */
8 
9 //Very simple class to be used in HLT-Open environment for rate computation.
10 
12 
13 namespace reco {
14 
15  class HLTTau {
16  public:
17  HLTTau() {
18  ecalClusterShape_.clear();
19  hcalClusterShape_.clear();
20  }
21 
22  HLTTau(float eta,
23  float phi,
24  float pt,
25  float emIsolation,
26  int trackIsolationL25,
27  float leadTrackPtL25,
28  int trackIsolationL3,
29  float leadTrackPtL3) {
30  eta_ = eta;
31  phi_ = phi;
32  pt_ = pt;
33  emIsolation_ = emIsolation;
34  trackIsolationL25_ = trackIsolationL25;
35  leadTrackPtL25_ = leadTrackPtL25;
36  trackIsolationL3_ = trackIsolationL3;
37  leadTrackPtL3_ = leadTrackPtL3;
38  }
39 
40  virtual ~HLTTau() {}
41 
42  float getEta() const { return eta_; }
43  float getPhi() const { return phi_; }
44  float getPt() const { return pt_; }
45 
46  float getEMIsolationValue() const { return emIsolation_; }
49  float getL25LeadTrackPtValue() const { return leadTrackPtL25_; }
51  int getNL3TrackIsolation() const { return nTrackIsolationL3_; }
52  float getL3LeadTrackPtValue() const { return leadTrackPtL3_; }
53  float getSumPtTracksL25() const { return sumPtTracksL25_; }
54  float getSumPtTracksL3() const { return sumPtTracksL3_; }
55 
56  double getSeedEcalHitEt() const { return seedEcalHitEt_; } //Lead PF Cluster Et /or simple cluster/or crystal
57  std::vector<double> getEcalClusterShape() const {
58  return ecalClusterShape_;
59  } //cluster shapes eta [0], Phi[0] DeltaR [1]
60  int getNEcalHits() const { return nEcalHits_; } //N Ecal PF Clusters or simple clusters or crystals
61 
62  double getHcalIsolEt() const { return hcalIsolEt_; }
63  double getSeedHcalHitEt() const { return seedHcalHitEt_; }
64  std::vector<double> getHcalClusterShape() const { return hcalClusterShape_; }
65  int getNHcalHits() const { return nHcalHits_; }
66 
72  void setEcalClusterShape(const std::vector<double>& clusters) { ecalClusterShape_ = clusters; }
74 
77  void setHcalClusterShape(const std::vector<double>& clusters) { hcalClusterShape_ = clusters; }
79 
80  private:
81  float eta_ = 0., phi_ = 0., pt_ = -1.;
82  float emIsolation_ = -1000.;
84  float leadTrackPtL25_ = 0.;
88  float leadTrackPtL3_ = 0.;
89  double seedEcalHitEt_ = -1;
90  std::vector<double> ecalClusterShape_;
91  int nEcalHits_ = -1;
92  double hcalIsolEt_ = -1;
93  double seedHcalHitEt_ = -1;
94  std::vector<double> hcalClusterShape_;
95  int nHcalHits_ = -1;
96  double sumPtTracksL25_ = -1000.;
97  double sumPtTracksL3_ = -1000.;
98  };
99 
100 } // namespace reco
101 #endif
void setSumPtTracksL3(double sumPt)
Definition: HLTTau.h:70
int nTrackIsolationL3_
Definition: HLTTau.h:87
float leadTrackPtL25_
Definition: HLTTau.h:84
void setHcalClusterShape(const std::vector< double > &clusters)
Definition: HLTTau.h:77
void setSeedHcalHitEt(double seed)
Definition: HLTTau.h:76
float getSumPtTracksL25() const
Definition: HLTTau.h:53
int getL25TrackIsolationResponse() const
Definition: HLTTau.h:47
float getL25LeadTrackPtValue() const
Definition: HLTTau.h:49
void setNEcalHits(int nhits)
Definition: HLTTau.h:73
int nEcalHits_
Definition: HLTTau.h:91
void setSeedEcalHitEt(double seed)
Definition: HLTTau.h:71
double getSeedEcalHitEt() const
Definition: HLTTau.h:56
void setEcalClusterShape(const std::vector< double > &clusters)
Definition: HLTTau.h:72
int nHcalHits_
Definition: HLTTau.h:95
std::vector< double > getHcalClusterShape() const
Definition: HLTTau.h:64
double seedHcalHitEt_
Definition: HLTTau.h:93
double seedEcalHitEt_
Definition: HLTTau.h:89
float leadTrackPtL3_
Definition: HLTTau.h:88
float getL3LeadTrackPtValue() const
Definition: HLTTau.h:52
int getNHcalHits() const
Definition: HLTTau.h:65
float getEMIsolationValue() const
Definition: HLTTau.h:46
virtual ~HLTTau()
Definition: HLTTau.h:40
float getSumPtTracksL3() const
Definition: HLTTau.h:54
int nTrackIsolationL25_
Definition: HLTTau.h:85
void setNL25TrackIsolation(int nTracks)
Definition: HLTTau.h:67
std::vector< double > ecalClusterShape_
Definition: HLTTau.h:90
int trackIsolationL25_
Definition: HLTTau.h:83
int getNL25TrackIsolation() const
Definition: HLTTau.h:48
double hcalIsolEt_
Definition: HLTTau.h:92
ALPAKA_FN_HOST_ACC ALPAKA_FN_INLINE constexpr float phi(ConstView const &tracks, int32_t i)
Definition: TracksSoA.h:80
HLTTau(float eta, float phi, float pt, float emIsolation, int trackIsolationL25, float leadTrackPtL25, int trackIsolationL3, float leadTrackPtL3)
Definition: HLTTau.h:22
float eta_
Definition: HLTTau.h:81
double getHcalIsolEt() const
Definition: HLTTau.h:62
void setHcalIsolEt(double hcalIso)
Definition: HLTTau.h:75
int getL3TrackIsolationResponse() const
Definition: HLTTau.h:50
int trackIsolationL3_
Definition: HLTTau.h:86
double sumPtTracksL25_
Definition: HLTTau.h:96
float emIsolation_
Definition: HLTTau.h:82
int getNL3TrackIsolation() const
Definition: HLTTau.h:51
std::vector< double > getEcalClusterShape() const
Definition: HLTTau.h:57
float getEta() const
Definition: HLTTau.h:42
void setNL3TrackIsolation(int nTracks)
Definition: HLTTau.h:68
float pt_
Definition: HLTTau.h:81
fixed size matrix
double getSeedHcalHitEt() const
Definition: HLTTau.h:63
std::vector< double > hcalClusterShape_
Definition: HLTTau.h:94
float phi_
Definition: HLTTau.h:81
int getNEcalHits() const
Definition: HLTTau.h:60
double sumPtTracksL3_
Definition: HLTTau.h:97
void setNHcalHits(int nhits)
Definition: HLTTau.h:78
void setSumPtTracksL25(double sumPt)
Definition: HLTTau.h:69
float getPt() const
Definition: HLTTau.h:44
float getPhi() const
Definition: HLTTau.h:43