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