ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/TRootMET.h
Revision: 1.7
Committed: Wed Jun 10 11:17:06 2009 UTC (15 years, 10 months ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: all_3_3_2_01, all_3_2_5_02, all_3_2_5_01, all_2_2_9_03, all_2_2_9_02, all_2_2_9_01, HEAD
Branch point for: CMSSW_2_2_X_br
Changes since 1.6: +422 -422 lines
Log Message:
Better protection against missing collection / Cleaning data format selection / Last iteration for migration to PAT of Photons

File Contents

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