ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/TRootMET.h
Revision: 1.2
Committed: Mon Dec 1 15:58:05 2008 UTC (16 years, 5 months ago) by lethuill
Content type: text/plain
Branch: MAIN
Changes since 1.1: +423 -261 lines
Log Message:
Proto-version for use with different data formats (RECO/AOD/PAT/PAT+AOD)
Replace the absolute path /UserCode/Morgan with a relative one

File Contents

# Content
1 #ifndef TRootMET_h
2 #define TRootMET_h
3
4 #include "../interface/TRootParticle.h"
5
6 #include "Rtypes.h"
7 #include "TObject.h"
8
9
10 using namespace std;
11
12 class TRootMET : public TRootParticle
13 {
14
15 public:
16
17 TRootMET() :
18 TRootParticle()
19 ,maxEtInEmTowers_(0.)
20 ,maxEtInHadTowers_(0.)
21 ,hadEtInHO_(0.)
22 ,hadEtInHB_(0.)
23 ,hadEtInHF_(0.)
24 ,hadEtInHE_(0.)
25 ,emEtInEB_(0.)
26 ,emEtInEE_(0.)
27 ,emEtInHF_(0.)
28 ,etFractionHadronic_(0.)
29 ,etFractionEm_(0.)
30 ,metSignificance_(0.)
31 ,caloMETInpHF_(0.)
32 ,caloMETInmHF_(0.)
33 ,caloSETInpHF_(0.)
34 ,caloSETInmHF_(0.)
35 ,caloMETPhiInpHF_(0.)
36 ,caloMETPhiInmHF_(0.)
37 ,uncorrectedPhiALL_(-9999.)
38 ,uncorrectedPtALL_(-1.)
39 ,corExALL_(-9999.)
40 ,corEyALL_(-9999.)
41 ,corSumEtALL_(-9999.)
42 ,uncorrectedPhiJES_(-9999.)
43 ,uncorrectedPtJES_(-1.)
44 ,corExJES_(-9999.)
45 ,corEyJES_(-9999.)
46 ,corSumEtJES_(-9999.)
47 ,uncorrectedPhiMUON_(-9999.)
48 ,uncorrectedPtMUON_(-1.)
49 ,corExMUON_(-9999.)
50 ,corEyMUON_(-9999.)
51 ,corSumEtMUON_(-9999.)
52 ,genMET_()
53 {;}
54
55 TRootMET(const TRootMET& met) :
56 TRootParticle(met)
57 ,maxEtInEmTowers_(met.maxEtInEmTowers_)
58 ,maxEtInHadTowers_(met.maxEtInHadTowers_)
59 ,hadEtInHO_(met.hadEtInHO_)
60 ,hadEtInHB_(met.hadEtInHB_)
61 ,hadEtInHF_(met.hadEtInHF_)
62 ,hadEtInHE_(met.hadEtInHE_)
63 ,emEtInEB_(met.emEtInEB_)
64 ,emEtInEE_(met.emEtInEE_)
65 ,emEtInHF_(met.emEtInHF_)
66 ,etFractionHadronic_(met.etFractionHadronic_)
67 ,etFractionEm_(met.etFractionEm_)
68 ,metSignificance_(met.metSignificance_)
69 ,caloMETInpHF_(met.caloMETInpHF_)
70 ,caloMETInmHF_(met.caloMETInmHF_)
71 ,caloSETInpHF_(met.caloSETInpHF_)
72 ,caloSETInmHF_(met.caloSETInmHF_)
73 ,caloMETPhiInpHF_(met.caloMETPhiInpHF_)
74 ,caloMETPhiInmHF_(met.caloMETPhiInmHF_)
75 ,uncorrectedPhiALL_(met.uncorrectedPhiALL_)
76 ,uncorrectedPtALL_(met.uncorrectedPtALL_)
77 ,corExALL_(met.corExALL_)
78 ,corEyALL_(met.corEyALL_)
79 ,corSumEtALL_(met.corSumEtALL_)
80 ,uncorrectedPhiJES_(met.uncorrectedPhiJES_)
81 ,uncorrectedPtJES_(met.uncorrectedPtJES_)
82 ,corExJES_(met.corExJES_)
83 ,corEyJES_(met.corEyJES_)
84 ,corSumEtJES_(met.corSumEtJES_)
85 ,uncorrectedPhiMUON_(met.uncorrectedPhiMUON_)
86 ,uncorrectedPtMUON_(met.uncorrectedPtMUON_)
87 ,corExMUON_(met.corExMUON_)
88 ,corEyMUON_(met.corEyMUON_)
89 ,corSumEtMUON_(met.corSumEtMUON_)
90 ,genMET_(met.genMET_)
91 {;}
92
93 TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e) :
94 TRootParticle(px,py,pz,e)
95 ,maxEtInEmTowers_(0.)
96 ,maxEtInHadTowers_(0.)
97 ,hadEtInHO_(0.)
98 ,hadEtInHB_(0.)
99 ,hadEtInHF_(0.)
100 ,hadEtInHE_(0.)
101 ,emEtInEB_(0.)
102 ,emEtInEE_(0.)
103 ,emEtInHF_(0.)
104 ,etFractionHadronic_(0.)
105 ,etFractionEm_(0.)
106 ,metSignificance_(0.)
107 ,caloMETInpHF_(0.)
108 ,caloMETInmHF_(0.)
109 ,caloSETInpHF_(0.)
110 ,caloSETInmHF_(0.)
111 ,caloMETPhiInpHF_(0.)
112 ,caloMETPhiInmHF_(0.)
113 ,uncorrectedPhiALL_(-9999.)
114 ,uncorrectedPtALL_(-1.)
115 ,corExALL_(-9999.)
116 ,corEyALL_(-9999.)
117 ,corSumEtALL_(-9999.)
118 ,uncorrectedPhiJES_(-9999.)
119 ,uncorrectedPtJES_(-1.)
120 ,corExJES_(-9999.)
121 ,corEyJES_(-9999.)
122 ,corSumEtJES_(-9999.)
123 ,uncorrectedPhiMUON_(-9999.)
124 ,uncorrectedPtMUON_(-1.)
125 ,corExMUON_(-9999.)
126 ,corEyMUON_(-9999.)
127 ,corSumEtMUON_(-9999.)
128 ,genMET_()
129 {;}
130
131 TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z) :
132 TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z)
133 ,maxEtInEmTowers_(0.)
134 ,maxEtInHadTowers_(0.)
135 ,hadEtInHO_(0.)
136 ,hadEtInHB_(0.)
137 ,hadEtInHF_(0.)
138 ,hadEtInHE_(0.)
139 ,emEtInEB_(0.)
140 ,emEtInEE_(0.)
141 ,emEtInHF_(0.)
142 ,etFractionHadronic_(0.)
143 ,etFractionEm_(0.)
144 ,metSignificance_(0.)
145 ,caloMETInpHF_(0.)
146 ,caloMETInmHF_(0.)
147 ,caloSETInpHF_(0.)
148 ,caloSETInmHF_(0.)
149 ,caloMETPhiInpHF_(0.)
150 ,caloMETPhiInmHF_(0.)
151 ,uncorrectedPhiALL_(-9999.)
152 ,uncorrectedPtALL_(-1.)
153 ,corExALL_(-9999.)
154 ,corEyALL_(-9999.)
155 ,corSumEtALL_(-9999.)
156 ,uncorrectedPhiJES_(-9999.)
157 ,uncorrectedPtJES_(-1.)
158 ,corExJES_(-9999.)
159 ,corEyJES_(-9999.)
160 ,corSumEtJES_(-9999.)
161 ,uncorrectedPhiMUON_(-9999.)
162 ,uncorrectedPtMUON_(-1.)
163 ,corExMUON_(-9999.)
164 ,corEyMUON_(-9999.)
165 ,corSumEtMUON_(-9999.)
166 ,genMET_()
167 {;}
168
169 TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z, Int_t type, Float_t charge) :
170 TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
171 ,maxEtInEmTowers_(0.)
172 ,maxEtInHadTowers_(0.)
173 ,hadEtInHO_(0.)
174 ,hadEtInHB_(0.)
175 ,hadEtInHF_(0.)
176 ,hadEtInHE_(0.)
177 ,emEtInEB_(0.)
178 ,emEtInEE_(0.)
179 ,emEtInHF_(0.)
180 ,etFractionHadronic_(0.)
181 ,etFractionEm_(0.)
182 ,metSignificance_(0.)
183 ,caloMETInpHF_(0.)
184 ,caloMETInmHF_(0.)
185 ,caloSETInpHF_(0.)
186 ,caloSETInmHF_(0.)
187 ,caloMETPhiInpHF_(0.)
188 ,caloMETPhiInmHF_(0.)
189 ,uncorrectedPhiALL_(-9999.)
190 ,uncorrectedPtALL_(-1.)
191 ,corExALL_(-9999.)
192 ,corEyALL_(-9999.)
193 ,corSumEtALL_(-9999.)
194 ,uncorrectedPhiJES_(-9999.)
195 ,uncorrectedPtJES_(-1.)
196 ,corExJES_(-9999.)
197 ,corEyJES_(-9999.)
198 ,corSumEtJES_(-9999.)
199 ,uncorrectedPhiMUON_(-9999.)
200 ,uncorrectedPtMUON_(-1.)
201 ,corExMUON_(-9999.)
202 ,corEyMUON_(-9999.)
203 ,corSumEtMUON_(-9999.)
204 ,genMET_()
205 {;}
206
207 TRootMET(const TLorentzVector &momentum) :
208 TRootParticle(momentum)
209 ,maxEtInEmTowers_(0.)
210 ,maxEtInHadTowers_(0.)
211 ,hadEtInHO_(0.)
212 ,hadEtInHB_(0.)
213 ,hadEtInHF_(0.)
214 ,hadEtInHE_(0.)
215 ,emEtInEB_(0.)
216 ,emEtInEE_(0.)
217 ,emEtInHF_(0.)
218 ,etFractionHadronic_(0.)
219 ,etFractionEm_(0.)
220 ,metSignificance_(0.)
221 ,caloMETInpHF_(0.)
222 ,caloMETInmHF_(0.)
223 ,caloSETInpHF_(0.)
224 ,caloSETInmHF_(0.)
225 ,caloMETPhiInpHF_(0.)
226 ,caloMETPhiInmHF_(0.)
227 ,uncorrectedPhiALL_(-9999.)
228 ,uncorrectedPtALL_(-1.)
229 ,corExALL_(-9999.)
230 ,corEyALL_(-9999.)
231 ,corSumEtALL_(-9999.)
232 ,uncorrectedPhiJES_(-9999.)
233 ,uncorrectedPtJES_(-1.)
234 ,corExJES_(-9999.)
235 ,corEyJES_(-9999.)
236 ,corSumEtJES_(-9999.)
237 ,uncorrectedPhiMUON_(-9999.)
238 ,uncorrectedPtMUON_(-1.)
239 ,corExMUON_(-9999.)
240 ,corEyMUON_(-9999.)
241 ,corSumEtMUON_(-9999.)
242 ,genMET_()
243 {;}
244
245 TRootMET(const TLorentzVector &momentum, const TVector3 &vertex, Int_t type, Float_t charge) :
246 TRootParticle(momentum, vertex, type, charge)
247 ,maxEtInEmTowers_(0.)
248 ,maxEtInHadTowers_(0.)
249 ,hadEtInHO_(0.)
250 ,hadEtInHB_(0.)
251 ,hadEtInHF_(0.)
252 ,hadEtInHE_(0.)
253 ,emEtInEB_(0.)
254 ,emEtInEE_(0.)
255 ,emEtInHF_(0.)
256 ,etFractionHadronic_(0.)
257 ,etFractionEm_(0.)
258 ,metSignificance_(0.)
259 ,caloMETInpHF_(0.)
260 ,caloMETInmHF_(0.)
261 ,caloSETInpHF_(0.)
262 ,caloSETInmHF_(0.)
263 ,caloMETPhiInpHF_(0.)
264 ,caloMETPhiInmHF_(0.)
265 ,uncorrectedPhiALL_(-9999.)
266 ,uncorrectedPtALL_(-1.)
267 ,corExALL_(-9999.)
268 ,corEyALL_(-9999.)
269 ,corSumEtALL_(-9999.)
270 ,uncorrectedPhiJES_(-9999.)
271 ,uncorrectedPtJES_(-1.)
272 ,corExJES_(-9999.)
273 ,corEyJES_(-9999.)
274 ,corSumEtJES_(-9999.)
275 ,uncorrectedPhiMUON_(-9999.)
276 ,uncorrectedPtMUON_(-1.)
277 ,corExMUON_(-9999.)
278 ,corEyMUON_(-9999.)
279 ,corSumEtMUON_(-9999.)
280 ,genMET_()
281 {;}
282
283 ~TRootMET() {;}
284
285 Float_t maxEtInEmTowers() const { return maxEtInEmTowers_; }
286 Float_t maxEtInHadTowers() const { return maxEtInHadTowers_; }
287 Float_t hadEtInHO() const { return hadEtInHO_; }
288 Float_t hadEtInHB() const { return hadEtInHB_; }
289 Float_t hadEtInHF() const { return hadEtInHF_; }
290 Float_t hadEtInHE() const { return hadEtInHE_; }
291 Float_t emEtInEB() const { return emEtInEB_; }
292 Float_t emEtInEE() const { return emEtInEE_; }
293 Float_t emEtInHF() const { return emEtInHF_; }
294 Float_t etFractionHadronic() const { return etFractionHadronic_; }
295 Float_t etFractionEm() const { return etFractionEm_; }
296 Float_t metSignificance() const { return metSignificance_; }
297 Float_t caloMETInpHF() const { return caloMETInpHF_; }
298 Float_t caloMETInmHF() const { return caloMETInmHF_; }
299 Float_t caloSETInpHF() const { return caloSETInpHF_; }
300 Float_t caloSETInmHF() const { return caloSETInmHF_; }
301 Float_t caloMETPhiInpHF() const { return caloMETPhiInpHF_; }
302 Float_t caloMETPhiInmHF() const { return caloMETPhiInmHF_; }
303 Float_t uncorrectedPhiALL() const {return uncorrectedPhiALL_; }
304 Float_t uncorrectedPtALL()const {return uncorrectedPtALL_; }
305 Float_t corExALL()const {return corExALL_; }
306 Float_t corEyALL()const {return corEyALL_; }
307 Float_t corSumEtALL()const {return corSumEtALL_; }
308 Float_t uncorrectedPhiJES() const {return uncorrectedPhiJES_; }
309 Float_t uncorrectedPtJES()const {return uncorrectedPtJES_; }
310 Float_t corExJES()const {return corExJES_; }
311 Float_t corEyJES()const {return corEyJES_; }
312 Float_t corSumEtJES()const {return corSumEtJES_; }
313 Float_t uncorrectedPhiMUON() const {return uncorrectedPhiMUON_; }
314 Float_t uncorrectedPtMUON()const {return uncorrectedPtMUON_; }
315 Float_t corExMUON()const {return corExMUON_; }
316 Float_t corEyMUON()const {return corEyMUON_; }
317 Float_t corSumEtMUON()const {return corSumEtMUON_; }
318
319
320 void setMaxEtInEmTowers(Float_t maxEtInEmTowers) { maxEtInEmTowers_ = maxEtInEmTowers; }
321 void setMaxEtInHadTowers(Float_t maxEtInHadTowers) { maxEtInHadTowers_ = maxEtInHadTowers; }
322 void setHadEtInHO(Float_t hadEtInHO) { hadEtInHO_ = hadEtInHO; }
323 void setHadEtInHB(Float_t hadEtInHB) { hadEtInHB_ = hadEtInHB; }
324 void setHadEtInHF(Float_t hadEtInHF) { hadEtInHF_ = hadEtInHF; }
325 void setHadEtInHE(Float_t hadEtInHE) { hadEtInHE_ = hadEtInHE; }
326 void setEmEtInEB(Float_t emEtInEB) { emEtInEB_ = emEtInEB; }
327 void setEmEtInEE(Float_t emEtInEE) { emEtInEE_ = emEtInEE; }
328 void setEmEtInHF(Float_t emEtInHF) { emEtInHF_ = emEtInHF; }
329 void setEtFractionHadronic(Float_t etFractionHadronic) { etFractionHadronic_ = etFractionHadronic; }
330 void setEtFractionEm(Float_t etFractionEm) { etFractionEm_ = etFractionEm; }
331 void setMETSignificance(Float_t metSignificance) { metSignificance_ = metSignificance; }
332 void setCaloMETInpHF(Float_t caloMETInpHF) { caloMETInpHF_ = caloMETInpHF; }
333 void setCaloMETInmHF(Float_t caloMETInmHF) { caloMETInmHF_ = caloMETInmHF; }
334 void setCaloSETInpHF(Float_t caloSETInpHF) { caloSETInpHF_ = caloSETInpHF; }
335 void setCaloSETInmHF(Float_t caloSETInmHF) { caloSETInmHF_ = caloSETInmHF; }
336 void setCaloMETPhiInpHF(Float_t caloMETPhiInpHF) { caloMETPhiInpHF_ = caloMETPhiInpHF; }
337 void setCaloMETPhiInmHF(Float_t caloMETPhiInmHF) { caloMETPhiInmHF_ = caloMETPhiInmHF; }
338
339 void setCaloMETFraction(
340 Float_t maxEtInEmTowers
341 ,Float_t maxEtInHadTowers
342 ,Float_t hadEtInHO
343 ,Float_t hadEtInHB
344 ,Float_t hadEtInHF
345 ,Float_t hadEtInHE
346 ,Float_t emEtInEB
347 ,Float_t emEtInEE
348 ,Float_t emEtInHF
349 ,Float_t etFractionHadronic
350 ,Float_t etFractionEm
351 ,Float_t metSignificance
352 ,Float_t caloMETInpHF
353 ,Float_t caloMETInmHF
354 ,Float_t caloSETInpHF
355 ,Float_t caloSETInmHF
356 ,Float_t caloMETPhiInpHF
357 ,Float_t caloMETPhiInmHF
358 )
359 {
360 maxEtInEmTowers_ = maxEtInEmTowers;
361 maxEtInEmTowers_ = maxEtInEmTowers;
362 maxEtInHadTowers_ = maxEtInHadTowers;
363 hadEtInHO_ = hadEtInHO;
364 hadEtInHB_ = hadEtInHB;
365 hadEtInHF_ = hadEtInHF;
366 hadEtInHE_ = hadEtInHE;
367 emEtInEB_ = emEtInEB;
368 emEtInEE_ = emEtInEE;
369 emEtInHF_ = emEtInHF;
370 etFractionHadronic_ = etFractionHadronic;
371 etFractionEm_ = etFractionEm;
372 metSignificance_ = metSignificance;
373 caloMETInpHF_ = caloMETInpHF;
374 caloMETInmHF_ = caloMETInmHF;
375 caloSETInpHF_ = caloSETInpHF;
376 caloSETInmHF_ = caloSETInmHF;
377 caloMETPhiInpHF_ = caloMETPhiInpHF;
378 caloMETPhiInmHF_ = caloMETPhiInmHF;
379 }
380
381 void setUncorrectedPhiALL(Float_t uncorrectedPhiALL) { uncorrectedPhiALL_ = uncorrectedPhiALL;}
382 void setUncorrectedPtALL(Float_t uncorrectedPtALL) { uncorrectedPtALL_ = uncorrectedPtALL;}
383 void setCorExALL(Float_t corExALL) { corExALL_ = corExALL;}
384 void setCorEyALL(Float_t corEyALL) { corEyALL_ = corEyALL;}
385 void setCorSumEtALL(Float_t corSumEtALL) { corSumEtALL_ = corSumEtALL;}
386 void setUncorrectedPhiJES(Float_t uncorrectedPhiJES) { uncorrectedPhiJES_ = uncorrectedPhiJES;}
387 void setUncorrectedPtJES(Float_t uncorrectedPtJES) { uncorrectedPtJES_ = uncorrectedPtJES;}
388 void setCorExJES(Float_t corExJES) { corExJES_ = corExJES;}
389 void setCorEyJES(Float_t corEyJES) { corEyJES_ = corEyJES;}
390 void setCorSumEtJES(Float_t corSumEtJES) { corSumEtJES_ = corSumEtJES;}
391 void setUncorrectedPhiMUON(Float_t uncorrectedPhiMUON) { uncorrectedPhiMUON_ = uncorrectedPhiMUON;}
392 void setUncorrectedPtMUON(Float_t uncorrectedPtMUON) { uncorrectedPtMUON_ = uncorrectedPtMUON;}
393 void setCorExMUON(Float_t corExMUON) { corExMUON_ = corExMUON;}
394 void setCorEyMUON(Float_t corEyMUON) { corEyMUON_ = corEyMUON;}
395 void setCorSumEtMUON(Float_t corSumEtMUON) { corSumEtMUON_ = corSumEtMUON;}
396
397 TObject* genMET() const { return genMET_.GetObject(); }
398 void setGenMET(TObject* genMET) { genMET_ = genMET; }
399
400 friend std::ostream& operator<< (std::ostream& stream, const TRootMET& met) {
401 stream << "TRootMET (Pt,Px,Py)=("<< met.Pt() <<","<< met.Px() <<","<< met.Py() << ")"
402 << " hadEt in (HO,HB,HF,HE)=("<< met.hadEtInHO() <<","<< met.hadEtInHB() <<","<< met.hadEtInHF() <<","<< met.hadEtInHE() << ")"
403 << " emEt in (EB,EF,HF)=("<< met.emEtInEB() <<","<< met.emEtInEE() <<","<< met.emEtInHF() << ")";
404 return stream;
405 };
406
407
408 private:
409
410 Float_t maxEtInEmTowers_; // Maximum ET in EM towers
411 Float_t maxEtInHadTowers_; // Maximum ET in HCAL towers
412 Float_t hadEtInHO_; // Hadronic ET fraction in HO
413 Float_t hadEtInHB_; // Hadronic ET in HB
414 Float_t hadEtInHF_; // Hadronic ET in HF
415 Float_t hadEtInHE_; // Hadronic ET in HE
416 Float_t emEtInEB_; // Em ET in EB
417 Float_t emEtInEE_; // Em ET in EE
418 Float_t emEtInHF_; // Em ET in HF
419 Float_t etFractionHadronic_; // Hadronic ET fraction
420 Float_t etFractionEm_; // Em ET fraction
421 Float_t metSignificance_; // Em ET fraction
422 Float_t caloMETInpHF_; // CaloMET in HF+
423 Float_t caloMETInmHF_; // CaloMET in HF-
424 Float_t caloSETInpHF_; // CaloSET in HF+
425 Float_t caloSETInmHF_; // CaloSET in HF-
426 Float_t caloMETPhiInpHF_; // CaloMET-phi in HF+
427 Float_t caloMETPhiInmHF_; // CaloMET-phi in HF-
428 Float_t uncorrectedPhiALL_;
429 Float_t uncorrectedPtALL_;
430 Float_t corExALL_;
431 Float_t corEyALL_;
432 Float_t corSumEtALL_;
433 Float_t uncorrectedPhiJES_;
434 Float_t uncorrectedPtJES_;
435 Float_t corExJES_;
436 Float_t corEyJES_;
437 Float_t corSumEtJES_;
438 Float_t uncorrectedPhiMUON_;
439 Float_t uncorrectedPtMUON_;
440 Float_t corExMUON_;
441 Float_t corEyMUON_;
442 Float_t corSumEtMUON_;
443 TRef genMET_;
444
445
446 ClassDef (TRootMET,1);
447 };
448
449 #endif