ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/PollackPrograms/src/TCTau.h
Revision: 1.2
Committed: Wed Feb 20 21:39:44 2013 UTC (12 years, 2 months ago) by bpollack
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +2 -15 lines
Error occurred while calculating annotation data.
Log Message:
commiting moriond analysis package

File Contents

# Content
1 #ifndef _TCTau_H
2 #define _TCTau_H
3
4 #include "TObject.h"
5 #include "TLorentzVector.h"
6 #include "TCPhysObject.h"
7 #include <vector>
8
9 class TCTau : public TCPhysObject {
10 private:
11 TVector3 _positionFromTauObject;
12 TVector3 _positionFromLeadTrack;
13
14 int nChHad;
15 int nGamma;
16 int nNeutrHad;
17 int decayMode;
18
19 TLorentzVector leadChHadP4;
20 TLorentzVector leadNeutrP4;
21
22 float isoGammaEtSum;
23 float isoChHadPtSum;
24
25
26 // Discriminators - names as used in CMSSW
27 // For the most part the discriminators are binary
28
29 // HPS discriminators ---------
30 //
31 // against e,mu misidentification
32 float hpsPFTauDiscriminationAgainstElectronLoose;
33 float hpsPFTauDiscriminationAgainstMuonLoose;
34 float hpsPFTauDiscriminationAgainstElectronMedium;
35 float hpsPFTauDiscriminationAgainstMuonMedium;
36 float hpsPFTauDiscriminationAgainstElectronTight;
37 float hpsPFTauDiscriminationAgainstMuonTight;
38
39 // by decay mode
40 float hpsPFTauDiscriminationByDecayModeFinding;
41
42 // by charged isolation
43 float hpsPFTauDiscriminationByVLooseIsolation;
44 float hpsPFTauDiscriminationByLooseIsolation;
45 float hpsPFTauDiscriminationByMediumIsolation;
46 float hpsPFTauDiscriminationByTightIsolation;
47
48 // with iso corrections
49 float hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr;
50 float hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr;
51 float hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr;
52 float hpsPFTauDiscriminationByTightIsolationDBSumPtCorr;
53
54 // by combined isolation with iso corrections
55 float hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr;
56 float hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr;
57 float hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr;
58 float hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr;
59
60
61 public:
62 TCTau();
63 virtual ~TCTau();
64
65 TVector3 PositionFromTrack() const;
66 TVector3 PositionFromTau() const;
67
68 int DecayMode() const { return decayMode; }
69 int NChHad() const {return nChHad; }
70 int NGamma() const {return nGamma; }
71 int NNeutrHad() const {return nNeutrHad; }
72
73 TLorentzVector LeadChHadP4() const { return leadChHadP4; }
74 TLorentzVector LeadNeutrP4() const { return leadNeutrP4; }
75
76 float IsoGammaEtSum() { return isoGammaEtSum; }
77 float IsoChHadPtSum() { return isoChHadPtSum; }
78
79 void SetDecayMode(int d) {decayMode = d; }
80 void SetNChHad(int n) { nChHad = n; }
81 void SetNGamma(int n) { nGamma = n; }
82 void SetNNeutrHad(int n) { nNeutrHad = n; }
83
84 void SetPositionFromTau(float x, float y, float z);
85 void SetPositionFromTrack(float x, float y, float z);
86
87 void SetLeadChHadP4(TLorentzVector p4) { leadChHadP4 = p4; }
88 void SetLeadNeutrP4(TLorentzVector p4) { leadNeutrP4 = p4; }
89
90 void SetLeadChHadP4(float x, float y, float z, float e) { leadChHadP4.SetPxPyPzE(x,y,z,e); }
91 void SetLeadNeutrP4(float x, float y, float z, float e) { leadNeutrP4.SetPxPyPzE(x,y,z,e); }
92
93 void SetIsoGammaEtSum(float i) { isoGammaEtSum = i; }
94 void SetIsoChHadPtSum(float i) { isoChHadPtSum = i; }
95
96
97 // Discriminators: for now only for HPS
98
99 // HPS
100 float GetHpsPFTauDiscriminationAgainstElectronLoose() {
101 return hpsPFTauDiscriminationAgainstElectronLoose;
102 }
103 float GetHpsPFTauDiscriminationAgainstMuonLoose() {
104 return hpsPFTauDiscriminationAgainstMuonLoose;
105 }
106 float GetHpsPFTauDiscriminationAgainstElectronMedium() {
107 return hpsPFTauDiscriminationAgainstElectronMedium;
108 }
109 float GetHpsPFTauDiscriminationAgainstMuonMedium() {
110 return hpsPFTauDiscriminationAgainstMuonMedium;
111 }
112 float GetHpsPFTauDiscriminationAgainstElectronTight() {
113 return hpsPFTauDiscriminationAgainstElectronTight;
114 }
115 float GetHpsPFTauDiscriminationAgainstMuonTight() {
116 return hpsPFTauDiscriminationAgainstMuonTight;
117 }
118 float GetHpsPFTauDiscriminationByDecayModeFinding() {
119 return hpsPFTauDiscriminationByDecayModeFinding;
120 }
121 float GetHpsPFTauDiscriminationByVLooseIsolation() {
122 return hpsPFTauDiscriminationByVLooseIsolation;
123 }
124 float GetHpsPFTauDiscriminationByLooseIsolation() {
125 return hpsPFTauDiscriminationByLooseIsolation;
126 }
127 float GetHpsPFTauDiscriminationByMediumIsolation() {
128 return hpsPFTauDiscriminationByMediumIsolation;
129 }
130 float GetHpsPFTauDiscriminationByTightIsolation() {
131 return hpsPFTauDiscriminationByTightIsolation;
132 }
133
134
135
136 float GetHpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr() {
137 return hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr;
138 }
139 float GetHpsPFTauDiscriminationByLooseIsolationDBSumPtCorr() {
140 return hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr;
141 }
142 float GetHpsPFTauDiscriminationByMediumIsolationDBSumPtCorr() {
143 return hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr;
144 }
145 float GetHpsPFTauDiscriminationByTightIsolationDBSumPtCorr() {
146 return hpsPFTauDiscriminationByTightIsolationDBSumPtCorr;
147 }
148
149
150 float GetHpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr() {
151 return hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr;
152 }
153 float GetHpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr() {
154 return hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr;
155 }
156 float GetHpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr() {
157 return hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr;
158 }
159 float GetHpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr() {
160 return hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr;
161 }
162
163
164
165 // HPS discriminator setters
166 void SetHpsPFTauDiscriminationAgainstElectronLoose(float f) {
167 hpsPFTauDiscriminationAgainstElectronLoose = f;
168 }
169 void SetHpsPFTauDiscriminationAgainstMuonLoose(float f) {
170 hpsPFTauDiscriminationAgainstMuonLoose = f;
171 }
172 void SetHpsPFTauDiscriminationAgainstElectronMedium(float f) {
173 hpsPFTauDiscriminationAgainstElectronMedium = f;
174 }
175 void SetHpsPFTauDiscriminationAgainstMuonMedium(float f) {
176 hpsPFTauDiscriminationAgainstMuonMedium = f;
177 }
178 void SetHpsPFTauDiscriminationAgainstElectronTight(float f) {
179 hpsPFTauDiscriminationAgainstElectronTight = f;
180 }
181 void SetHpsPFTauDiscriminationAgainstMuonTight(float f) {
182 hpsPFTauDiscriminationAgainstMuonTight = f;
183 }
184 void SetHpsPFTauDiscriminationByDecayModeFinding(float f) {
185 hpsPFTauDiscriminationByDecayModeFinding = f;
186 }
187 void SetHpsPFTauDiscriminationByVLooseIsolation(float f) {
188 hpsPFTauDiscriminationByVLooseIsolation = f;
189 }
190 void SetHpsPFTauDiscriminationByLooseIsolation(float f) {
191 hpsPFTauDiscriminationByLooseIsolation = f;
192 }
193 void SetHpsPFTauDiscriminationByMediumIsolation(float f) {
194 hpsPFTauDiscriminationByMediumIsolation = f;
195 }
196 void SetHpsPFTauDiscriminationByTightIsolation(float f) {
197 hpsPFTauDiscriminationByTightIsolation = f;
198 }
199
200 void SetHpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr(float f) {
201 hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr = f;
202 }
203 void SetHpsPFTauDiscriminationByLooseIsolationDBSumPtCorr(float f) {
204 hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr = f;
205 }
206 void SetHpsPFTauDiscriminationByMediumIsolationDBSumPtCorr(float f) {
207 hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr = f;
208 }
209 void SetHpsPFTauDiscriminationByTightIsolationDBSumPtCorr(float f) {
210 hpsPFTauDiscriminationByTightIsolationDBSumPtCorr = f;
211 }
212
213
214 void SetHpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr(float f) {
215 hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr = f;
216 }
217 void SetHpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr(float f) {
218 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr = f;
219 }
220 void SetHpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr(float f) {
221 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr = f;
222 }
223 void SetHpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr(float f) {
224 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr = f;
225 }
226
227
228 ClassDef(TCTau, 5);
229
230 };
231
232 #endif