ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/TRootElectron.h
(Generate patch)

Comparing UserCode/Morgan/interface/TRootElectron.h (file contents):
Revision 1.2 by lethuill, Wed Nov 19 19:03:16 2008 UTC vs.
Revision 1.4 by lethuill, Mon Dec 15 19:08:52 2008 UTC

# Line 1 | Line 1
1   #ifndef TRootElectron_h
2   #define TRootElectron_h
3  
4 + #include <map>
5 +
6   #include "../interface/TRootParticle.h"
7  
8   #include "Rtypes.h"
9   #include "TObject.h"
10  
9
11   using namespace std;
12  
13   class TRootElectron : public TRootParticle
14   {
15 <        
15 >
16   public:
17 <        
17 >
18          TRootElectron() :
19 <                        TRootParticle()
20 <                        ,dummy_(0.)
21 <                        {;}
19 >                TRootParticle()
20 >                ,classification_(-9999)
21 >                ,caloEnergy_(-9999.)
22 >                ,caloEnergyError_(-9999.)
23 >                ,trackMomentum_(-9999.)
24 >                ,trackMomentumError_(-9999.)
25 >                ,hadOverEm_(-9999.)
26 >                ,deltaEtaIn_(-9999.)
27 >                ,deltaPhiIn_(-9999.)
28 >                ,energySuperClusterOverPin_(-9999.)
29 >                ,deltaEtaOut_(-9999.)
30 >                ,deltaPhiOut_(-9999.)
31 >                ,energySeedClusterOverPout_(-9999.)
32 >                ,energyScaleCorrected_(false)
33 >                ,momentumCorrected_(false)
34 >                ,d0_(-9999.)
35 >                ,d0Error_(-9999.)
36 >                ,dsz_(-9999.)
37 >                ,dszError_(-9999.)
38 >                ,normalizedChi2_(-9999.)
39 >                ,ptError_(-9999.)
40 >                ,etaError_(-9999.)
41 >                ,phiError_(-9999.)
42 >                ,nbClusters_(-9999)
43 >                ,superClusterRawEnergy_(-9999.)
44 >                ,preshowerEnergy_(-9999.)
45 >                ,caloPosition_(-9999.,-9999.,-9999.)
46 >                ,scRef_()
47 >                ,clusterAlgo_(-9999)
48 >                ,caloConeSize_(-9999.)
49 >                ,e2x2_(-9999.)
50 >                ,e3x3_(-9999.)
51 >                ,e5x5_(-9999.)
52 >                ,eMax_(-9999.)
53 >                ,isoR01_sumPt_(-9999.)
54 >                ,isoR01_nTracks_(-9999)
55 >                ,isoR02_sumPt_(-9999.)
56 >                ,isoR02_nTracks_(-9999)
57 >                ,isoR03_emEt_(-9999.)
58 >                ,isoR03_hadEt_(-9999.)
59 >                ,isoR03_sumPt_(-9999.)
60 >                ,isoR03_nTracks_(-9999)
61 >                ,isoR05_emEt_(-9999.)
62 >                ,isoR05_hadEt_(-9999.)
63 >                ,isoR05_sumPt_(-9999.)
64 >                ,isoR05_nTracks_(-9999)
65 >                ,idPTDRLoose_(-9999.)
66 >                ,idPTDRMedium_(-9999.)
67 >                ,idPTDRTight_(-9999.)
68 >                ,idCutBasedLoose_(-9999.)
69 >                ,idCutBasedRobust_(-9999.)
70 >                ,idCutBasedTight_(-9999.)
71 >                ,idLikelihood_(-9999.)
72 >                ,idNeuralNet_(-9999.)
73 >                ,genElectron_()
74 >                ,electronMCIndex_(-1)
75 >                ,momentumMCElectron_()
76 >                ,vertexMCElectron_()
77 >                ,pdgIdMCElectron_(0)
78 >                {;}
79  
80          TRootElectron(const TRootElectron& electron) :
81 <                        TRootParticle(electron)
82 <                         ,dummy_(electron.dummy_)
83 <                        {;}
81 >                TRootParticle(electron)
82 >                ,classification_(electron.classification_)
83 >                ,caloEnergy_(electron.caloEnergy_)
84 >                ,caloEnergyError_(electron.caloEnergyError_)
85 >                ,trackMomentum_(electron.trackMomentum_)
86 >                ,trackMomentumError_(electron.trackMomentumError_)
87 >                ,hadOverEm_(electron.hadOverEm_)
88 >                ,deltaEtaIn_(electron.deltaEtaIn_)
89 >                ,deltaPhiIn_(electron.deltaPhiIn_)
90 >                ,energySuperClusterOverPin_(electron.energySuperClusterOverPin_)
91 >                ,deltaEtaOut_(electron.deltaEtaOut_)
92 >                ,deltaPhiOut_(electron.deltaPhiOut_)
93 >                ,energySeedClusterOverPout_(electron.energySeedClusterOverPout_)
94 >                ,energyScaleCorrected_(electron.energyScaleCorrected_)
95 >                ,momentumCorrected_(electron.momentumCorrected_)
96 >                ,d0_(electron.d0_)
97 >                ,d0Error_(electron.d0Error_)
98 >                ,dsz_(electron.dsz_)
99 >                ,dszError_(electron.dszError_)
100 >                ,normalizedChi2_(electron.normalizedChi2_)
101 >                ,ptError_(electron.ptError_)
102 >                ,etaError_(electron.etaError_)
103 >                ,phiError_(electron.phiError_)
104 >                ,nbClusters_(electron.nbClusters_)
105 >                ,superClusterRawEnergy_(electron.superClusterRawEnergy_)
106 >                ,preshowerEnergy_(electron.preshowerEnergy_)
107 >                ,caloPosition_(electron.caloPosition_)
108 >                ,scRef_(electron.scRef_)
109 >                ,clusterAlgo_(electron.clusterAlgo_)
110 >                ,caloConeSize_(electron.caloConeSize_)
111 >                ,e2x2_(electron.e2x2_)
112 >                ,e3x3_(electron.e3x3_)
113 >                ,e5x5_(electron.e5x5_)
114 >                ,eMax_(electron.eMax_)
115 >                ,isoR01_sumPt_(electron.isoR01_sumPt_)
116 >                ,isoR01_nTracks_(electron.isoR01_nTracks_)
117 >                ,isoR02_sumPt_(electron.isoR02_sumPt_)
118 >                ,isoR02_nTracks_(electron.isoR02_nTracks_)
119 >                ,isoR03_emEt_(electron.isoR03_emEt_)
120 >                ,isoR03_hadEt_(electron.isoR03_hadEt_)
121 >                ,isoR03_sumPt_(electron.isoR03_sumPt_)
122 >                ,isoR03_nTracks_(electron.isoR03_nTracks_)
123 >                ,isoR05_emEt_(electron.isoR05_emEt_)
124 >                ,isoR05_hadEt_(electron.isoR05_hadEt_)
125 >                ,isoR05_sumPt_(electron.isoR05_sumPt_)
126 >                ,isoR05_nTracks_(electron.isoR05_nTracks_)
127 >                ,idPTDRLoose_(electron.idPTDRLoose_)
128 >                ,idPTDRMedium_(electron.idPTDRMedium_)
129 >                ,idPTDRTight_(electron.idPTDRTight_)
130 >                ,idCutBasedLoose_(electron.idCutBasedLoose_)
131 >                ,idCutBasedRobust_(electron.idCutBasedRobust_)
132 >                ,idCutBasedTight_(electron.idCutBasedTight_)
133 >                ,idLikelihood_(electron.idLikelihood_)
134 >                ,idNeuralNet_(electron.idNeuralNet_)
135 >                ,genElectron_(electron.genElectron_)
136 >                ,electronMCIndex_(electron.electronMCIndex_)
137 >                ,momentumMCElectron_(electron.momentumMCElectron_)
138 >                ,vertexMCElectron_(electron.vertexMCElectron_)
139 >                ,pdgIdMCElectron_(electron.pdgIdMCElectron_)
140 >                {;}
141  
142          TRootElectron(Double_t px, Double_t py, Double_t pz, Double_t e) :
143 <                        TRootParticle(px,py,pz,e)
144 <                        ,dummy_(0.)
145 <                        {;}
143 >                TRootParticle(px,py,pz,e)
144 >                ,classification_(-9999)
145 >                ,caloEnergy_(-9999.)
146 >                ,caloEnergyError_(-9999.)
147 >                ,trackMomentum_(-9999.)
148 >                ,trackMomentumError_(-9999.)
149 >                ,hadOverEm_(-9999.)
150 >                ,deltaEtaIn_(-9999.)
151 >                ,deltaPhiIn_(-9999.)
152 >                ,energySuperClusterOverPin_(-9999.)
153 >                ,deltaEtaOut_(-9999.)
154 >                ,deltaPhiOut_(-9999.)
155 >                ,energySeedClusterOverPout_(-9999.)
156 >                ,energyScaleCorrected_(false)
157 >                ,momentumCorrected_(false)
158 >                ,d0_(-9999.)
159 >                ,d0Error_(-9999.)
160 >                ,dsz_(-9999.)
161 >                ,dszError_(-9999.)
162 >                ,normalizedChi2_(-9999.)
163 >                ,ptError_(-9999.)
164 >                ,etaError_(-9999.)
165 >                ,phiError_(-9999.)
166 >                ,nbClusters_(-9999)
167 >                ,superClusterRawEnergy_(-9999.)
168 >                ,preshowerEnergy_(-9999.)
169 >                ,caloPosition_(-9999.,-9999.,-9999.)
170 >                ,scRef_()
171 >                ,clusterAlgo_(-9999)
172 >                ,caloConeSize_(-9999.)
173 >                ,e2x2_(-9999.)
174 >                ,e3x3_(-9999.)
175 >                ,e5x5_(-9999.)
176 >                ,eMax_(-9999.)
177 >                ,isoR01_sumPt_(-9999.)
178 >                ,isoR01_nTracks_(-9999)
179 >                ,isoR02_sumPt_(-9999.)
180 >                ,isoR02_nTracks_(-9999)
181 >                ,isoR03_emEt_(-9999.)
182 >                ,isoR03_hadEt_(-9999.)
183 >                ,isoR03_sumPt_(-9999.)
184 >                ,isoR03_nTracks_(-9999)
185 >                ,isoR05_emEt_(-9999.)
186 >                ,isoR05_hadEt_(-9999.)
187 >                ,isoR05_sumPt_(-9999.)
188 >                ,isoR05_nTracks_(-9999)
189 >                ,idPTDRLoose_(-9999.)
190 >                ,idPTDRMedium_(-9999.)
191 >                ,idPTDRTight_(-9999.)
192 >                ,idCutBasedLoose_(-9999.)
193 >                ,idCutBasedRobust_(-9999.)
194 >                ,idCutBasedTight_(-9999.)
195 >                ,idLikelihood_(-9999.)
196 >                ,idNeuralNet_(-9999.)
197 >                ,genElectron_()
198 >                ,electronMCIndex_(-1)
199 >                ,momentumMCElectron_()
200 >                ,vertexMCElectron_()
201 >                ,pdgIdMCElectron_(0)
202 >                {;}
203          
204          TRootElectron(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z) :
205 <                        TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z)
206 <                        ,dummy_(0.)
207 <                        {;}
205 >                TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z)
206 >                ,classification_(-9999)
207 >                ,caloEnergy_(-9999.)
208 >                ,caloEnergyError_(-9999.)
209 >                ,trackMomentum_(-9999.)
210 >                ,trackMomentumError_(-9999.)
211 >                ,hadOverEm_(-9999.)
212 >                ,deltaEtaIn_(-9999.)
213 >                ,deltaPhiIn_(-9999.)
214 >                ,energySuperClusterOverPin_(-9999.)
215 >                ,deltaEtaOut_(-9999.)
216 >                ,deltaPhiOut_(-9999.)
217 >                ,energySeedClusterOverPout_(-9999.)
218 >                ,energyScaleCorrected_(false)
219 >                ,momentumCorrected_(false)
220 >                ,d0_(-9999.)
221 >                ,d0Error_(-9999.)
222 >                ,dsz_(-9999.)
223 >                ,dszError_(-9999.)
224 >                ,normalizedChi2_(-9999.)
225 >                ,ptError_(-9999.)
226 >                ,etaError_(-9999.)
227 >                ,phiError_(-9999.)
228 >                ,nbClusters_(-9999)
229 >                ,superClusterRawEnergy_(-9999.)
230 >                ,preshowerEnergy_(-9999.)
231 >                ,caloPosition_(-9999.,-9999.,-9999.)
232 >                ,scRef_()
233 >                ,clusterAlgo_(-9999)
234 >                ,caloConeSize_(-9999.)
235 >                ,e2x2_(-9999.)
236 >                ,e3x3_(-9999.)
237 >                ,e5x5_(-9999.)
238 >                ,eMax_(-9999.)
239 >                ,isoR01_sumPt_(-9999.)
240 >                ,isoR01_nTracks_(-9999)
241 >                ,isoR02_sumPt_(-9999.)
242 >                ,isoR02_nTracks_(-9999)
243 >                ,isoR03_emEt_(-9999.)
244 >                ,isoR03_hadEt_(-9999.)
245 >                ,isoR03_sumPt_(-9999.)
246 >                ,isoR03_nTracks_(-9999)
247 >                ,isoR05_emEt_(-9999.)
248 >                ,isoR05_hadEt_(-9999.)
249 >                ,isoR05_sumPt_(-9999.)
250 >                ,isoR05_nTracks_(-9999)
251 >                ,idPTDRLoose_(-9999.)
252 >                ,idPTDRMedium_(-9999.)
253 >                ,idPTDRTight_(-9999.)
254 >                ,idCutBasedLoose_(-9999.)
255 >                ,idCutBasedRobust_(-9999.)
256 >                ,idCutBasedTight_(-9999.)
257 >                ,idLikelihood_(-9999.)
258 >                ,idNeuralNet_(-9999.)
259 >                ,genElectron_()
260 >                ,electronMCIndex_(-1)
261 >                ,momentumMCElectron_()
262 >                ,vertexMCElectron_()
263 >                ,pdgIdMCElectron_(0)
264 >                {;}
265  
266          TRootElectron(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) :
267 <                        TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
268 <                        ,dummy_(0.)
269 <                        {;}
267 >                TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
268 >                ,classification_(-9999)
269 >                ,caloEnergy_(-9999.)
270 >                ,caloEnergyError_(-9999.)
271 >                ,trackMomentum_(-9999.)
272 >                ,trackMomentumError_(-9999.)
273 >                ,hadOverEm_(-9999.)
274 >                ,deltaEtaIn_(-9999.)
275 >                ,deltaPhiIn_(-9999.)
276 >                ,energySuperClusterOverPin_(-9999.)
277 >                ,deltaEtaOut_(-9999.)
278 >                ,deltaPhiOut_(-9999.)
279 >                ,energySeedClusterOverPout_(-9999.)
280 >                ,energyScaleCorrected_(false)
281 >                ,momentumCorrected_(false)
282 >                ,d0_(-9999.)
283 >                ,d0Error_(-9999.)
284 >                ,dsz_(-9999.)
285 >                ,dszError_(-9999.)
286 >                ,normalizedChi2_(-9999.)
287 >                ,ptError_(-9999.)
288 >                ,etaError_(-9999.)
289 >                ,phiError_(-9999.)
290 >                ,nbClusters_(-9999)
291 >                ,superClusterRawEnergy_(-9999.)
292 >                ,preshowerEnergy_(-9999.)
293 >                ,caloPosition_(-9999.,-9999.,-9999.)
294 >                ,scRef_()
295 >                ,clusterAlgo_(-9999)
296 >                ,caloConeSize_(-9999.)
297 >                ,e2x2_(-9999.)
298 >                ,e3x3_(-9999.)
299 >                ,e5x5_(-9999.)
300 >                ,eMax_(-9999.)
301 >                ,isoR01_sumPt_(-9999.)
302 >                ,isoR01_nTracks_(-9999)
303 >                ,isoR02_sumPt_(-9999.)
304 >                ,isoR02_nTracks_(-9999)
305 >                ,isoR03_emEt_(-9999.)
306 >                ,isoR03_hadEt_(-9999.)
307 >                ,isoR03_sumPt_(-9999.)
308 >                ,isoR03_nTracks_(-9999)
309 >                ,isoR05_emEt_(-9999.)
310 >                ,isoR05_hadEt_(-9999.)
311 >                ,isoR05_sumPt_(-9999.)
312 >                ,isoR05_nTracks_(-9999)
313 >                ,idPTDRLoose_(-9999.)
314 >                ,idPTDRMedium_(-9999.)
315 >                ,idPTDRTight_(-9999.)
316 >                ,idCutBasedLoose_(-9999.)
317 >                ,idCutBasedRobust_(-9999.)
318 >                ,idCutBasedTight_(-9999.)
319 >                ,idLikelihood_(-9999.)
320 >                ,idNeuralNet_(-9999.)
321 >                ,genElectron_()
322 >                ,electronMCIndex_(-1)
323 >                ,momentumMCElectron_()
324 >                ,vertexMCElectron_()
325 >                ,pdgIdMCElectron_(0)
326 >                {;}
327  
328          TRootElectron(const TLorentzVector &momentum) :
329 <                        TRootParticle(momentum)
330 <                        ,dummy_(0.)
331 <                        {;}
329 >                TRootParticle(momentum)
330 >                ,classification_(-9999)
331 >                ,caloEnergy_(-9999.)
332 >                ,caloEnergyError_(-9999.)
333 >                ,trackMomentum_(-9999.)
334 >                ,trackMomentumError_(-9999.)
335 >                ,hadOverEm_(-9999.)
336 >                ,deltaEtaIn_(-9999.)
337 >                ,deltaPhiIn_(-9999.)
338 >                ,energySuperClusterOverPin_(-9999.)
339 >                ,deltaEtaOut_(-9999.)
340 >                ,deltaPhiOut_(-9999.)
341 >                ,energySeedClusterOverPout_(-9999.)
342 >                ,energyScaleCorrected_(false)
343 >                ,momentumCorrected_(false)
344 >                ,d0_(-9999.)
345 >                ,d0Error_(-9999.)
346 >                ,dsz_(-9999.)
347 >                ,dszError_(-9999.)
348 >                ,normalizedChi2_(-9999.)
349 >                ,ptError_(-9999.)
350 >                ,etaError_(-9999.)
351 >                ,phiError_(-9999.)
352 >                ,nbClusters_(-9999)
353 >                ,superClusterRawEnergy_(-9999.)
354 >                ,preshowerEnergy_(-9999.)
355 >                ,caloPosition_(-9999.,-9999.,-9999.)
356 >                ,scRef_()
357 >                ,clusterAlgo_(-9999)
358 >                ,caloConeSize_(-9999.)
359 >                ,e2x2_(-9999.)
360 >                ,e3x3_(-9999.)
361 >                ,e5x5_(-9999.)
362 >                ,eMax_(-9999.)
363 >                ,isoR01_sumPt_(-9999.)
364 >                ,isoR01_nTracks_(-9999)
365 >                ,isoR02_sumPt_(-9999.)
366 >                ,isoR02_nTracks_(-9999)
367 >                ,isoR03_emEt_(-9999.)
368 >                ,isoR03_hadEt_(-9999.)
369 >                ,isoR03_sumPt_(-9999.)
370 >                ,isoR03_nTracks_(-9999)
371 >                ,isoR05_emEt_(-9999.)
372 >                ,isoR05_hadEt_(-9999.)
373 >                ,isoR05_sumPt_(-9999.)
374 >                ,isoR05_nTracks_(-9999)
375 >                ,idPTDRLoose_(-9999.)
376 >                ,idPTDRMedium_(-9999.)
377 >                ,idPTDRTight_(-9999.)
378 >                ,idCutBasedLoose_(-9999.)
379 >                ,idCutBasedRobust_(-9999.)
380 >                ,idCutBasedTight_(-9999.)
381 >                ,idLikelihood_(-9999.)
382 >                ,idNeuralNet_(-9999.)
383 >                ,genElectron_()
384 >                ,electronMCIndex_(-1)
385 >                ,momentumMCElectron_()
386 >                ,vertexMCElectron_()
387 >                ,pdgIdMCElectron_(0)
388 >                {;}
389  
390          TRootElectron(const TLorentzVector &momentum, const TVector3 &vertex, Int_t type, Float_t charge) :
391 <                        TRootParticle(momentum, vertex, type, charge)
392 <                        ,dummy_(0.)
393 <                        {;}
391 >                TRootParticle(momentum, vertex, type, charge)
392 >                ,classification_(-9999)
393 >                ,caloEnergy_(-9999.)
394 >                ,caloEnergyError_(-9999.)
395 >                ,trackMomentum_(-9999.)
396 >                ,trackMomentumError_(-9999.)
397 >                ,hadOverEm_(-9999.)
398 >                ,deltaEtaIn_(-9999.)
399 >                ,deltaPhiIn_(-9999.)
400 >                ,energySuperClusterOverPin_(-9999.)
401 >                ,deltaEtaOut_(-9999.)
402 >                ,deltaPhiOut_(-9999.)
403 >                ,energySeedClusterOverPout_(-9999.)
404 >                ,energyScaleCorrected_(false)
405 >                ,momentumCorrected_(false)
406 >                ,d0_(-9999.)
407 >                ,d0Error_(-9999.)
408 >                ,dsz_(-9999.)
409 >                ,dszError_(-9999.)
410 >                ,normalizedChi2_(-9999.)
411 >                ,ptError_(-9999.)
412 >                ,etaError_(-9999.)
413 >                ,phiError_(-9999.)
414 >                ,nbClusters_(-9999)
415 >                ,superClusterRawEnergy_(-9999.)
416 >                ,preshowerEnergy_(-9999.)
417 >                ,caloPosition_(-9999.,-9999.,-9999.)
418 >                ,scRef_()
419 >                ,clusterAlgo_(-9999)
420 >                ,caloConeSize_(-9999.)
421 >                ,e2x2_(-9999.)
422 >                ,e3x3_(-9999.)
423 >                ,e5x5_(-9999.)
424 >                ,eMax_(-9999.)
425 >                ,isoR01_sumPt_(-9999.)
426 >                ,isoR01_nTracks_(-9999)
427 >                ,isoR02_sumPt_(-9999.)
428 >                ,isoR02_nTracks_(-9999)
429 >                ,isoR03_emEt_(-9999.)
430 >                ,isoR03_hadEt_(-9999.)
431 >                ,isoR03_sumPt_(-9999.)
432 >                ,isoR03_nTracks_(-9999)
433 >                ,isoR05_emEt_(-9999.)
434 >                ,isoR05_hadEt_(-9999.)
435 >                ,isoR05_sumPt_(-9999.)
436 >                ,isoR05_nTracks_(-9999)
437 >                ,idPTDRLoose_(-9999.)
438 >                ,idPTDRMedium_(-9999.)
439 >                ,idPTDRTight_(-9999.)
440 >                ,idCutBasedLoose_(-9999.)
441 >                ,idCutBasedRobust_(-9999.)
442 >                ,idCutBasedTight_(-9999.)
443 >                ,idLikelihood_(-9999.)
444 >                ,idNeuralNet_(-9999.)
445 >                ,genElectron_()
446 >                ,electronMCIndex_(-1)
447 >                ,momentumMCElectron_()
448 >                ,vertexMCElectron_()
449 >                ,pdgIdMCElectron_(0)
450 >                {;}
451  
452          ~TRootElectron() {;}
53                
54        Float_t dummy() const { return dummy_; }
453  
454 <        void setDummy(Float_t dummy) { dummy_ = dummy; }
454 >
455 >        Int_t classification() const { return classification_ ;}
456 >        Float_t caloEnergy() const { return caloEnergy_ ;}
457 >        Float_t caloEnergyError() const { return caloEnergyError_ ;}
458 >        Float_t trackMomentum() const { return trackMomentum_ ;}
459 >        Float_t trackMomentumError() const { return trackMomentumError_ ;}
460 >        Float_t hadOverEm() const { return hadOverEm_ ;}
461 >        Float_t deltaEtaIn() const { return deltaEtaIn_ ;}
462 >        Float_t deltaPhiIn() const { return deltaPhiIn_ ;}
463 >        Float_t energySuperClusterOverPin() const { return energySuperClusterOverPin_ ;}
464 >        Float_t deltaEtaOut() const { return deltaEtaOut_ ;}
465 >        Float_t deltaPhiOut() const { return deltaPhiOut_ ;}
466 >        Float_t energySeedClusterOverPout() const { return energySeedClusterOverPout_ ;}
467 >        Bool_t energyScaleCorrected() const { return energyScaleCorrected_ ;}
468 >        Bool_t momentumCorrected() const { return momentumCorrected_ ;}
469 >        Float_t d0() const { return d0_ ;}
470 >        Float_t d0Error() const { return d0Error_ ;}
471 >        Float_t dsz() const { return dsz_ ;}
472 >        Float_t dszError() const { return dszError_ ;}
473 >        Float_t normalizedChi2() const { return normalizedChi2_ ;}
474 >        Float_t ptError() const { return ptError_ ;}
475 >        Float_t etaError() const { return etaError_ ;}
476 >        Float_t phiError() const { return phiError_ ;}
477 >        Int_t nbClusters() const { return nbClusters_ ;}
478 >        Float_t superClusterRawEnergy() const { return superClusterRawEnergy_ ;}
479 >        Float_t preshowerEnergy() const { return preshowerEnergy_ ;}
480 >        TVector3 caloPosition() const { return caloPosition_ ;}
481 >        map<Int_t,TRef> scRef() const { return scRef_ ;}
482 >        Int_t clusterAlgo() const { return clusterAlgo_ ;}
483 >        Float_t caloConeSize() const { return caloConeSize_ ;}
484 >        Float_t e2x2() const { return e2x2_ ;}
485 >        Float_t e3x3() const { return e3x3_ ;}
486 >        Float_t e5x5() const { return e5x5_ ;}
487 >        Float_t eMax() const { return eMax_ ;}
488 >        Float_t isoR01_sumPt() const { return isoR01_sumPt_ ;}
489 >        Int_t isoR01_nTracks() const { return isoR01_nTracks_ ;}
490 >        Float_t isoR02_sumPt() const { return isoR02_sumPt_ ;}
491 >        Int_t isoR02_nTracks() const { return isoR02_nTracks_ ;}
492 >        Float_t isoR03_emEt() const { return isoR03_emEt_ ;}
493 >        Float_t isoR03_hadEt() const { return isoR03_hadEt_ ;}
494 >        Float_t isoR03_sumPt() const { return isoR03_sumPt_ ;}
495 >        Int_t isoR03_nTracks() const { return isoR03_nTracks_ ;}
496 >        Float_t isoR05_emEt() const { return isoR05_emEt_ ;}
497 >        Float_t isoR05_hadEt() const { return isoR05_hadEt_ ;}
498 >        Float_t isoR05_sumPt() const { return isoR05_sumPt_ ;}
499 >        Int_t isoR05_nTracks() const { return isoR05_nTracks_ ;}
500 >        Float_t idPTDRLoose() const { return idPTDRLoose_ ;}
501 >        Float_t idPTDRMedium() const { return idPTDRMedium_ ;}
502 >        Float_t idPTDRTight() const { return idPTDRTight_ ;}
503 >        Float_t idCutBasedLoose() const { return idCutBasedLoose_ ;}
504 >        Float_t idCutBasedRobust() const { return idCutBasedRobust_ ;}
505 >        Float_t idCutBasedTight() const { return idCutBasedTight_ ;}
506 >        Float_t idLikelihood() const { return idLikelihood_ ;}
507 >        Float_t idNeuralNet() const { return idNeuralNet_ ;}
508 >        TObject* genElectron() const { return genElectron_.GetObject() ;}
509 >        Int_t electronMCIndex() const { return electronMCIndex_; }
510 >        TLorentzVector momentumMCElectron() const  { return momentumMCElectron_; }
511 >        TVector3 vertexMCElectron() const { return vertexMCElectron_; }
512 >        Int_t pdgIdMCElectron() const { return pdgIdMCElectron_; }
513 >
514 >
515 >        void setClassification(Int_t classification) { classification_ = classification; }
516 >        void setCaloEnergy(Float_t caloEnergy) { caloEnergy_ = caloEnergy; }
517 >        void setCaloEnergyError(Float_t caloEnergyError) { caloEnergyError_ = caloEnergyError; }
518 >        void setTrackMomentum(Float_t trackMomentum) { trackMomentum_ = trackMomentum; }
519 >        void setTrackMomentumError(Float_t trackMomentumError) { trackMomentumError_ = trackMomentumError; }
520 >        void setHadOverEm(Float_t hadOverEm) { hadOverEm_ = hadOverEm; }
521 >        void setDeltaEtaIn(Float_t deltaEtaIn) { deltaEtaIn_ = deltaEtaIn; }
522 >        void setDeltaPhiIn(Float_t deltaPhiIn) { deltaPhiIn_ = deltaPhiIn; }
523 >        void setEnergySuperClusterOverPin(Float_t energySuperClusterOverPin) { energySuperClusterOverPin_ = energySuperClusterOverPin; }
524 >        void setDeltaEtaOut(Float_t deltaEtaOut) { deltaEtaOut_ = deltaEtaOut; }
525 >        void setDeltaPhiOut(Float_t deltaPhiOut) { deltaPhiOut_ = deltaPhiOut; }
526 >        void setEnergySeedClusterOverPout(Float_t energySeedClusterOverPout) { energySeedClusterOverPout_ = energySeedClusterOverPout; }
527 >        void setEnergyScaleCorrected(Bool_t energyScaleCorrected) { energyScaleCorrected_ = energyScaleCorrected; }
528 >        void setMomentumCorrected(Bool_t momentumCorrected) { momentumCorrected_ = momentumCorrected; }
529 >        void setD0(Float_t d0) { d0_ = d0; }
530 >        void setD0Error(Float_t d0Error) { d0Error_ = d0Error; }
531 >        void setDsz(Float_t dsz) { dsz_ = dsz; }
532 >        void setDszError(Float_t dszError) { dszError_ = dszError; }
533 >        void setNormalizedChi2(Float_t normalizedChi2) { normalizedChi2_ = normalizedChi2; }
534 >        void setPtError(Float_t ptError) { ptError_ = ptError; }
535 >        void setEtaError(Float_t etaError) { etaError_ = etaError; }
536 >        void setPhiError(Float_t phiError) { phiError_ = phiError; }
537 >        void setNbClusters(Int_t nbClusters) { nbClusters_ = nbClusters; }
538 >        void setSuperClusterRawEnergy(Float_t superClusterRawEnergy) { superClusterRawEnergy_ = superClusterRawEnergy; }
539 >        void setPreshowerEnergy(Float_t preshowerEnergy) { preshowerEnergy_ = preshowerEnergy; }
540 >        void setCaloPosition(TVector3 caloPosition) { caloPosition_ = caloPosition; }
541 >        void setCaloPosition(Double_t x, Double_t y, Double_t z) { caloPosition_.SetXYZ(x, y ,z); }
542 >        void setSCRef(map<Int_t,TRef> scRef) { scRef_ = scRef; }
543 >        void setClusterAlgo(Int_t clusterAlgo) { clusterAlgo_ = clusterAlgo; }
544 >        void setCaloConeSize(Float_t caloConeSize) { caloConeSize_ = caloConeSize; }
545 >        void setE2x2(Float_t e2x2) { e2x2_ = e2x2; }
546 >        void setE3x3(Float_t e3x3) { e3x3_ = e3x3; }
547 >        void setE5x5(Float_t e5x5) { e5x5_ = e5x5; }
548 >        void setEMax(Float_t eMax) { eMax_ = eMax; }
549 >        void setIsoR01_sumPt(Float_t isoR01_sumPt) { isoR01_sumPt_ = isoR01_sumPt; }
550 >        void setIsoR01_nTracks(Int_t isoR01_nTracks) { isoR01_nTracks_ = isoR01_nTracks; }
551 >        void setIsoR02_sumPt(Float_t isoR02_sumPt) { isoR02_sumPt_ = isoR02_sumPt; }
552 >        void setIsoR02_nTracks(Int_t isoR02_nTracks) { isoR02_nTracks_ = isoR02_nTracks; }
553 >        void setIsoR03_emEt(Float_t isoR03_emEt) { isoR03_emEt_ = isoR03_emEt; }
554 >        void setIsoR03_hadEt(Float_t isoR03_hadEt) { isoR03_hadEt_ = isoR03_hadEt; }
555 >        void setIsoR03_sumPt(Float_t isoR03_sumPt) { isoR03_sumPt_ = isoR03_sumPt; }
556 >        void setIsoR03_nTracks(Int_t isoR03_nTracks) { isoR03_nTracks_ = isoR03_nTracks; }
557 >        void setIsoR05_emEt(Float_t isoR05_emEt) { isoR05_emEt_ = isoR05_emEt; }
558 >        void setIsoR05_hadEt(Float_t isoR05_hadEt) { isoR05_hadEt_ = isoR05_hadEt; }
559 >        void setIsoR05_sumPt(Float_t isoR05_sumPt) { isoR05_sumPt_ = isoR05_sumPt; }
560 >        void setIsoR05_nTracks(Int_t isoR05_nTracks) { isoR05_nTracks_ = isoR05_nTracks; }
561 >        void setIDPTDRLoose(Float_t idPTDRLoose) { idPTDRLoose_ = idPTDRLoose; }
562 >        void setIDPTDRMedium(Float_t idPTDRMedium) { idPTDRMedium_ = idPTDRMedium; }
563 >        void setIDPTDRTight(Float_t idPTDRTight) { idPTDRTight_ = idPTDRTight; }
564 >        void setIDCutBasedLoose(Float_t idCutBasedLoose) { idCutBasedLoose_ = idCutBasedLoose; }
565 >        void setIDCutBasedRobust(Float_t idCutBasedRobust) { idCutBasedRobust_ = idCutBasedRobust; }
566 >        void setIDCutBasedTight(Float_t idCutBasedTight) { idCutBasedTight_ = idCutBasedTight; }
567 >        void setIDLikelihood(Float_t idLikelihood) { idLikelihood_ = idLikelihood; }
568 >        void setIDNeuralNet(Float_t idNeuralNet) { idNeuralNet_ = idNeuralNet; }
569 >        void setGenElectron(TObject* genElectron) { genElectron_ = genElectron; }
570 >        void setElectronMCIndex(Int_t electronMCIndex) { electronMCIndex_ = electronMCIndex; }
571 >        void setMomentumMCElectron(TLorentzVector momentumMCElectron) { momentumMCElectron_ =  momentumMCElectron; }
572 >        void setMomentumMCElectron(Float_t px, Float_t py, Float_t pz , Float_t energy) { momentumMCElectron_ =  TLorentzVector(px,py,pz,energy); }
573 >        void setVertexMCElectron(TVector3 vertexMCElectron) { vertexMCElectron_ = vertexMCElectron; }
574 >        void setVertexMCElectron(Float_t vx, Float_t vy, Float_t vz) { vertexMCElectron_ = TVector3(vx,vy,vz); }
575 >        void setPdgIdMCElectron(Int_t pdgIdMCElectron) { pdgIdMCElectron_ = pdgIdMCElectron; }
576          
577          friend std::ostream& operator<< (std::ostream& stream, const TRootElectron& electron) {
578                  stream << "TRootElectron - Charge=" << electron.charge() << " (Et,eta,phi)=("<< electron.Et() <<","<< electron.Eta() <<","<< electron.Phi() << ")"
# Line 61 | Line 580 | public:
580                  return stream;
581          };
582  
583 <                        
584 < private:
585 <        
586 <        Float_t dummy_;
583 >                
584 > private:
585 >        /*
586 >        TODO
587 >      if (fabs (eta) <= 1.4442) {
588 >        localElectron.setPosition (1);
589 >      }
590 >      else if (fabs (eta) > 1.4442 & fabs (eta) < 1.5560) {
591 >        localElectron.setPosition (0);
592 >      }
593 >      else if (fabs (eta) >= 1.5560) {
594 >        localElectron.setPosition (-1);
595 >      }
596 >        */
597 >
598 >        // Variables from reco::GsfElectron
599 >
600 >        // Classification:
601 >        //      barrel  :   0: golden,  10: bigbrem,  20: narrow, 30-34: showering,
602 >        //          (30: showering nbrem=0, 31: showering nbrem=1, 32: showering nbrem=2 ,33: showering nbrem=3, 34: showering nbrem>=4)
603 >        //           40: crack
604 >        //      endcaps : 100: golden, 110: bigbrem, 120: narrow, 130-134: showering
605 >        //            (130: showering nbrem=0, 131: showering nbrem=1, 132: showering nbrem=2 ,133: showering nbrem=3, 134: showering nbrem>=4)
606 >
607 >        Int_t classification_;             // Electron classification
608 >
609 >        Float_t caloEnergy_;                // SuperCluster energy corrected by EnergyScaleFactor
610 >        Float_t caloEnergyError_;           // Error on caloEnergy_
611 >        Float_t trackMomentum_;             // Track momentum at vertex
612 >        Float_t trackMomentumError_;        // Error on trackMomentum_
613 >
614 >        Float_t hadOverEm_;                 // hadronic over electromagnetic fraction
615 >
616 >        Float_t deltaEtaIn_;                // Supercluster eta - Track eta from helix extrapolation from impact point
617 >        Float_t deltaPhiIn_;                // Supercluster phi - Track phi from helix extrapolation from impact point
618 >        Float_t energySuperClusterOverPin_; // supercluster energy / track momentum at impact point
619 >
620 >        Float_t deltaEtaOut_;               // SeedCluster eta - Track eta at calo from outermost state
621 >        Float_t deltaPhiOut_;               // SeedCluster phi - Track phi at calo from outermost state
622 >        Float_t energySeedClusterOverPout_; // SeedCluster energy / track momentum at calo from outermost state
623 >
624 >        Bool_t energyScaleCorrected_;       // Has Energy Scale been applied ?
625 >        Bool_t momentumCorrected_;          // Tell if class dependant E-p combination has been determined
626 >
627 >
628 >        // Variables from reco::GsfTrack
629 >
630 >        /* cf: http://cmslxr.fnal.gov/lxr/source/DataFormats/TrackReco/interface/TrackBase.h
631 >        For tracks reconstructed in the CMS Tracker, the reference position is the point of closest approach to the centre
632 >        of CMS. For muons, this is not necessarily true. Parameters associated to the 5D curvilinear covariance matrix:
633 >                qoverp = q / abs(p) = signed inverse of momentum [1/GeV]
634 >                lambda = pi/2 - polar angle at the given point
635 >                phi = azimuth angle at the given point
636 >                dxy = -vx*sin(phi) + vy*cos(phi) [cm]
637 >                dsz = vz*cos(lambda) - (vx*cos(phi)+vy*sin(phi))*sin(lambda) [cm]
638 >
639 >        Geometrically, dxy is the signed distance in the XY plane between the straight line passing through (vx,vy) with
640 >        azimuthal angle phi and the point (0,0). The dsz parameter is the signed distance in the SZ plane between the straight
641 >        line passing through (vx,vy,vz) with angles (phi, lambda) and the point (s=0,z=0). The S axis is defined by the projection
642 >        of the straight line onto the XY plane. The convention is to assign the S coordinate for (vx,vy) as the value
643 >        vx*cos(phi)+vy*sin(phi). This value is zero when (vx,vy) is the point of minimum transverse distance to (0,0).
644 >
645 >        Note that dxy and dsz provide sensible estimates of the distance from the true particle trajectory to (0,0,0) ONLY
646 >        in two cases:
647 >                - When (vx,vy,vz) already correspond to the point of minimum transverse distance to (0,0,0) or is close to it
648 >                (so that the differences between considering the exact trajectory or a straight line in this range  are negligible).
649 >                This is usually true for Tracker tracks.
650 >                - When the track has infinite or extremely high momentum */
651 >
652 >     Float_t d0_;             // d0=-dxy
653 >     Float_t d0Error_;        // error on d0_
654 >     Float_t dsz_;            // dsz parameter
655 >     Float_t dszError_;       // error on dsz_
656 >     Float_t normalizedChi2_; // chi-squared divided by n.d.o.f. of track fit
657 >
658 >     Float_t ptError_; // needed ?  ptError()
659 >     Float_t etaError_; // needed ?  etaError()
660 >     Float_t phiError_; // needed ?  phiError()
661 >
662 >
663 >        // Variables from reco::SuperCluster
664 >        Int_t nbClusters_; // Number of related brem clusters
665 >     Float_t superClusterRawEnergy_;
666 >     Float_t preshowerEnergy_;
667 >        TVector3 caloPosition_;         // SuperCluster centroid position
668 >        map<Int_t,TRef> scRef_;     // references to the seed SuperClusters (one per SC tytpe)
669 >
670 >
671 >        // Cluster Shape variables
672 >        // need reco::SuperCluster and reco::BasicCluster
673 >        Int_t clusterAlgo_; // reco::BasicCluster::algo() island = 0, hybrid = 1, fixedMatrix = 2, dynamicHybrid = 3, multi5x5 = 4
674 >        Float_t caloConeSize_; // Delta_R of the cone centered on the reco::GsfElectron and containing all its basic clusters constituents
675 >        // need reco::SuperCluster and reco::BasicCluster and reduced Ecal RecHits Collections for EcalClusterLazyTools
676 >        Float_t e2x2_;
677 >        Float_t e3x3_;
678 >        Float_t e5x5_;
679 >        Float_t eMax_;
680 >
681 >
682 >     // pat::Electron Isolation
683 >        Float_t isoR01_sumPt_;
684 >        Int_t isoR01_nTracks_;
685 >
686 >        Float_t isoR02_sumPt_;
687 >        Int_t isoR02_nTracks_;
688 >
689 >        Float_t isoR03_emEt_;
690 >        Float_t isoR03_hadEt_;
691 >        Float_t isoR03_sumPt_;
692 >        Int_t isoR03_nTracks_;
693 >
694 >        Float_t isoR05_emEt_;
695 >        Float_t isoR05_hadEt_;
696 >        Float_t isoR05_sumPt_; // Pt sum of tracks in a DR=0.5 cone around the electron
697 >        Int_t isoR05_nTracks_; // Tracks multiplicity in a DR=0.5 cone around the electron
698 >
699 >
700 >     // pat::Electron ID (cf https://twiki.cern.ch/twiki/bin/view/CMS/SWGuideElectronID)
701 >     Float_t idPTDRLoose_;
702 >     Float_t idPTDRMedium_;
703 >     Float_t idPTDRTight_;
704 >     Float_t idCutBasedLoose_;
705 >     Float_t idCutBasedRobust_;
706 >     Float_t idCutBasedTight_;
707 >     Float_t idLikelihood_;
708 >     Float_t idNeuralNet_;
709 >
710 >        // Matched genParticle
711 >        TRef genElectron_;
712 >        Int_t electronMCIndex_;
713 >        TLorentzVector momentumMCElectron_;
714 >        TVector3 vertexMCElectron_;
715 >        Int_t pdgIdMCElectron_;
716 >
717 >        // needed ?
718 >        //Float_t sigmaEtaEta_;
719 >        //Float_t sigmaPhiPhi_;
720 >
721          
722          ClassDef (TRootElectron,1);
723   };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines