ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/joshmt/TopTupleTools/eventLoop.h
Revision: 1.1
Committed: Tue Apr 27 11:42:39 2010 UTC (15 years ago) by joshmt
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Error occurred while calculating annotation data.
Log Message:
tools for looking at top group trees

File Contents

# Content
1 //////////////////////////////////////////////////////////
2 // This class has been automatically generated on
3 // Fri Mar 19 14:02:26 2010 by ROOT version 5.22/00d
4 // from TChain makeTopologyNtuple/tree/
5 //////////////////////////////////////////////////////////
6
7 #ifndef eventLoop_h
8 #define eventLoop_h
9
10 #include <TROOT.h>
11 #include <TChain.h>
12 #include <TFile.h>
13
14 #include <TH1D.h>
15
16 #include <iostream>
17
18 class eventLoop {
19 public :
20 TTree *fChain; //!pointer to the analyzed TTree or TChain
21 Int_t fCurrent; //!current Tree number in a TChain
22
23 // Declaration of leaf types
24 Int_t numEle;
25 Float_t eleE[3]; //[numEle]
26 Float_t eleET[3]; //[numEle]
27 Float_t elePX[3]; //[numEle]
28 Float_t elePY[3]; //[numEle]
29 Float_t elePZ[3]; //[numEle]
30 Float_t elePhi[3]; //[numEle]
31 Float_t eleTheta[3]; //[numEle]
32 Float_t eleEta[3]; //[numEle]
33 Int_t eleCharge[3]; //[numEle]
34 Int_t eleIDQuality[3]; //[numEle]
35 Float_t eleTrackPt[3]; //[numEle]
36 Float_t eleTrackPhi[3]; //[numEle]
37 Float_t eleTrackEta[3]; //[numEle]
38 Float_t eleTrackChi2[3]; //[numEle]
39 Float_t eleTrackNDOF[3]; //[numEle]
40 Float_t eleTrackD0[3]; //[numEle]
41 Float_t eleBeamSpotCorrectedTrackD0[3]; //[numEle]
42 Float_t eleTrackDz[3]; //[numEle]
43 Float_t eleSCEta[3]; //[numEle]
44 Float_t eleSCE[3]; //[numEle]
45 Float_t eleSCPhi[3]; //[numEle]
46 Float_t eleSCSigmaEtaEta[3]; //[numEle]
47 Float_t eleSCSigmaIEtaIEta[3]; //[numEle]
48 Float_t eleSCE1x5[3]; //[numEle]
49 Float_t eleSCE5x5[3]; //[numEle]
50 Float_t eleSCE2x5max[3]; //[numEle]
51 Float_t eleTrackIso[3]; //[numEle]
52 Float_t eleEcalIso[3]; //[numEle]
53 Float_t eledr04EcalRecHitSumEt[3]; //[numEle]
54 Float_t eledr03EcalRecHitSumEt[3]; //[numEle]
55 Float_t eleHcalIso[3]; //[numEle]
56 Float_t eleEcalIsoDeposit[3]; //[numEle]
57 Float_t eleHcalIsoDeposit[3]; //[numEle]
58 Float_t eleComRelIso[3]; //[numEle]
59 Int_t elePhotonConversionTag[3]; //[numEle]
60 Float_t elePhotonConversionDist[3]; //[numEle]
61 Float_t elePhotonConversionDcot[3]; //[numEle]
62 Float_t eleTriggerMatch[3]; //[numEle]
63 Float_t eleJetOverlap[3]; //[numEle]
64 Float_t genEleET[3]; //[numEle]
65 Float_t genElePX[3]; //[numEle]
66 Float_t genElePY[3]; //[numEle]
67 Float_t genElePZ[3]; //[numEle]
68 Float_t genElePhi[3]; //[numEle]
69 Float_t genEleTheta[3]; //[numEle]
70 Float_t genEleEta[3]; //[numEle]
71 Int_t genEleCharge[3]; //[numEle]
72 Int_t numMuo;
73 Float_t muoE[3]; //[numMuo]
74 Float_t muoET[3]; //[numMuo]
75 Float_t muoPt[3]; //[numMuo]
76 Float_t muoPX[3]; //[numMuo]
77 Float_t muoPY[3]; //[numMuo]
78 Float_t muoPZ[3]; //[numMuo]
79 Float_t muoPhi[3]; //[numMuo]
80 Float_t muoTheta[3]; //[numMuo]
81 Float_t muoEta[3]; //[numMuo]
82 Int_t muoCharge[3]; //[numMuo]
83 Float_t muonChi2[3]; //[numMuo]
84 Float_t muonD0[3]; //[numMuo]
85 Float_t muonBeamSpotCorrectedD0[3]; //[numMuo]
86 Int_t muonTrackNHits[3]; //[numMuo]
87 Float_t muonNDOF[3]; //[numMuo]
88 Float_t muonTrackIso[3]; //[numMuo]
89 Float_t muonEcalIso[3]; //[numMuo]
90 Float_t muonHcalIso[3]; //[numMuo]
91 Float_t muonComRelIso[3]; //[numMuo]
92 Float_t genMuoET[3]; //[numMuo]
93 Float_t genMuoPX[3]; //[numMuo]
94 Float_t genMuoPY[3]; //[numMuo]
95 Float_t genMuoPZ[3]; //[numMuo]
96 Float_t genMuoPhi[3]; //[numMuo]
97 Float_t genMuoTheta[3]; //[numMuo]
98 Float_t genMuoEta[3]; //[numMuo]
99 Int_t genMuoCharge[3]; //[numMuo]
100 Int_t nT;
101 Int_t nThadronic;
102 Float_t T_hadronicMCTruthE[3]; //[nThadronic]
103 Float_t T_hadronicMCTruthEt[3]; //[nThadronic]
104 Float_t T_hadronicMCTruthPx[3]; //[nThadronic]
105 Float_t T_hadronicMCTruthPy[3]; //[nThadronic]
106 Float_t T_hadronicMCTruthPz[3]; //[nThadronic]
107 Int_t T_hadronicMCMotherIndex[3]; //[nThadronic]
108 Int_t nTleptonic;
109 Float_t T_leptonicMCTruthE[2]; //[nTleptonic]
110 Float_t T_leptonicMCTruthEt[2]; //[nTleptonic]
111 Float_t T_leptonicMCTruthPx[2]; //[nTleptonic]
112 Float_t T_leptonicMCTruthPy[2]; //[nTleptonic]
113 Float_t T_leptonicMCTruthPz[2]; //[nTleptonic]
114 Int_t T_leptonicMCMotherIndex[2]; //[nTleptonic]
115 Int_t nb;
116 Float_t bMCTruthE[4]; //[nb]
117 Float_t bMCTruthEt[4]; //[nb]
118 Float_t bMCTruthPx[4]; //[nb]
119 Float_t bMCTruthPy[4]; //[nb]
120 Float_t bMCTruthPz[4]; //[nb]
121 Int_t bMCTruthMother[4]; //[nb]
122 Int_t nWhadronic;
123 Float_t W_hadronicMCTruthE[4]; //[nWhadronic]
124 Float_t W_hadronicMCTruthEt[4]; //[nWhadronic]
125 Float_t W_hadronicMCTruthPx[4]; //[nWhadronic]
126 Float_t W_hadronicMCTruthPy[4]; //[nWhadronic]
127 Float_t W_hadronicMCTruthPz[4]; //[nWhadronic]
128 Int_t W_hadronicMCTruthPID[4]; //[nWhadronic]
129 Int_t W_hadronicMCTruthMother[4]; //[nWhadronic]
130 Int_t nWleptonic;
131 Float_t W_leptonicMCTruthE[3]; //[nWleptonic]
132 Float_t W_leptonicMCTruthEt[3]; //[nWleptonic]
133 Float_t W_leptonicMCTruthPx[3]; //[nWleptonic]
134 Float_t W_leptonicMCTruthPy[3]; //[nWleptonic]
135 Float_t W_leptonicMCTruthPz[3]; //[nWleptonic]
136 Int_t W_leptonicMCTruthPID[3]; //[nWleptonic]
137 Int_t W_leptonicMCTruthMother[3]; //[nWleptonic]
138 Int_t isElePlusJets;
139 Int_t VQQBosonAbsId;
140 Int_t numJet;
141 Float_t jetE[15]; //[numJet]
142 Float_t jetEt[15]; //[numJet]
143 Float_t jetPt[15]; //[numJet]
144 Float_t jetCorEt[15]; //[numJet]
145 Float_t jetEta[15]; //[numJet]
146 Float_t jetTheta[15]; //[numJet]
147 Float_t jetPhi[15]; //[numJet]
148 Float_t jetPx[15]; //[numJet]
149 Float_t jetPy[15]; //[numJet]
150 Float_t jetPz[15]; //[numJet]
151 Int_t jetNtracksInJet[15]; //[numJet]
152 Float_t jetJetCharge[15]; //[numJet]
153 Float_t jetMuEnergy[15]; //[numJet]
154 Float_t jetMuEnergyFraction[15]; //[numJet]
155 Float_t jetChargedMultiplicity[15]; //[numJet]
156 Float_t jetNeutralHadEnergy[15]; //[numJet]
157 Float_t jetEMEnergyInEB[15]; //[numJet]
158 Float_t jetEMEnergyInEE[15]; //[numJet]
159 Float_t jetEMEnergyFraction[15]; //[numJet]
160 Float_t jetEMEnergyInHF[15]; //[numJet]
161 Float_t jetHadEnergyInHB[15]; //[numJet]
162 Float_t jetHadEnergyInHE[15]; //[numJet]
163 Float_t jetHadEnergyInHF[15]; //[numJet]
164 Float_t jetHadEnergyInHO[15]; //[numJet]
165 Float_t jetBtagTrackCountHighPurity[15]; //[numJet]
166 Float_t jetBtagTrackCountHighEff[15]; //[numJet]
167 Float_t jetBtagProbability[15]; //[numJet]
168 Float_t jetBtagSoftElectron[15]; //[numJet]
169 Float_t jetBtagSoftMuon[15]; //[numJet]
170 Float_t jetBtagSoftMuonNoIP[15]; //[numJet]
171 Float_t jetBtagSoftMuonPtRel[15]; //[numJet]
172 Float_t jetBtagSoftMuonQuality[15]; //[numJet]
173 Float_t jetBtagSecondaryVertex[15]; //[numJet]
174 Float_t jetBtagSecondaryVertexNegative[15]; //[numJet]
175 Float_t jetBtagCombinedSVLL[15]; //[numJet]
176 Float_t jetBtagCombinedSVMVA[15]; //[numJet]
177 Float_t jetCorrFactor[15]; //[numJet]
178 Float_t jetN60[15]; //[numJet]
179 Float_t jetN90[15]; //[numJet]
180 Float_t jetNeutralEmEnergy[15]; //[numJet]
181 Float_t jetTriggered[15]; //[numJet]
182 Float_t jetSVPT[15]; //[numJet]
183 Float_t jetSVL2D[15]; //[numJet]
184 Float_t jetSVL2Dxy[15]; //[numJet]
185 Float_t jetSVL2DxyErr[15]; //[numJet]
186 Float_t jetSVL2DxySig[15]; //[numJet]
187 Float_t jetSVL3D[15]; //[numJet]
188 Float_t jetSVL3DErr[15]; //[numJet]
189 Float_t jetSVL3DSig[15]; //[numJet]
190 Float_t jetSVMass[15]; //[numJet]
191 Int_t jetSVNtracks[15]; //[numJet]
192 Float_t genJetET[15]; //[numJet]
193 Float_t genJetPX[15]; //[numJet]
194 Float_t genJetPY[15]; //[numJet]
195 Float_t genJetPZ[15]; //[numJet]
196 Float_t genJetPhi[15]; //[numJet]
197 Float_t genJetTheta[15]; //[numJet]
198 Float_t genJetEta[15]; //[numJet]
199 Int_t genJetPID[15]; //[numJet]
200 Int_t jetPID[15]; //[numJet]
201 Float_t jetClosestBPartonDeltaR[15]; //[numJet]
202 Float_t jetClosestCPartonDeltaR[15]; //[numJet]
203 Float_t btagParamDiscCut_MISTAGSSVM;
204 Float_t btagParamDiscCut_PTRELSSVM;
205 Float_t btagParamDiscCut_PTRELTCHEL;
206 Float_t btagParamDiscCut_PTRELTCHEM;
207 Float_t btagParamDiscCut_PTRELTCHET;
208 Float_t btagParamDiscCut_PTRELTCHPL;
209 Float_t btagParamDiscCut_PTRELTCHPM;
210 Float_t btagParamDiscCut_PTRELTCHPT;
211 Float_t btagParamDiscCut_SYSTEM8SSVM;
212 Float_t jetBtagParam_MISTAGSSVM_BTAGLEFF[15]; //[numJet]
213 Float_t jetBtagParam_MISTAGSSVM_BTAGLERR[15]; //[numJet]
214 Float_t jetBtagParam_MISTAGSSVM_BTAGLEFFCORR[15]; //[numJet]
215 Float_t jetBtagParam_MISTAGSSVM_BTAGLERRCORR[15]; //[numJet]
216 Float_t jetBtagParam_PTRELSSVM_BTAGBEFFCORR[15]; //[numJet]
217 Float_t jetBtagParam_PTRELSSVM_BTAGBERRCORR[15]; //[numJet]
218 Float_t jetBtagParam_SYSTEM8SSVM_BTAGBEFF[15]; //[numJet]
219 Float_t jetBtagParam_SYSTEM8SSVM_BTAGBERR[15]; //[numJet]
220 Float_t jetBtagParam_PTRELTCHEL_BTAGBEFFCORR[15]; //[numJet]
221 Float_t jetBtagParam_PTRELTCHEM_BTAGBEFFCORR[15]; //[numJet]
222 Float_t jetBtagParam_PTRELTCHET_BTAGBEFFCORR[15]; //[numJet]
223 Float_t jetBtagParam_PTRELTCHPL_BTAGBEFFCORR[15]; //[numJet]
224 Float_t jetBtagParam_PTRELTCHPM_BTAGBEFFCORR[15]; //[numJet]
225 Float_t jetBtagParam_PTRELTCHPT_BTAGBEFFCORR[15]; //[numJet]
226 Int_t numGeneralTracks;
227 Float_t generalTracksPt[456]; //[numGeneralTracks]
228 Float_t generalTracksEta[456]; //[numGeneralTracks]
229 Float_t generalTracksTheta[456]; //[numGeneralTracks]
230 Float_t generalTracksBeamSpotCorrectedD0[456]; //[numGeneralTracks]
231 Float_t generalTracksPhi[456]; //[numGeneralTracks]
232 Int_t generalTracksCharge[456]; //[numGeneralTracks]
233 Int_t processId;
234 Float_t processPtHat;
235 Float_t processMCWeight;
236 Float_t beamSpotX;
237 Float_t beamSpotY;
238 Float_t beamSpotZ;
239 Float_t topo_sphericity;
240 Float_t topo_aplanarity;
241 Float_t topo_sphericity_e;
242 Float_t topo_aplanarity_e;
243 Float_t topo_ht;
244 Float_t topo_ht_e;
245 Float_t topo_sqrts;
246 Float_t topo_sqrts_e;
247 Float_t topo_oblateness;
248 Float_t metEt;
249 Float_t metPhi;
250 Float_t metPt;
251 Float_t metPx;
252 Float_t metPy;
253 Float_t genMetEt;
254 Float_t genMetPhi;
255 Float_t genMetPt;
256 Float_t genMetPx;
257 Float_t genMetPy;
258 Float_t metMaxEtEM;
259 Float_t metMaxEtHad;
260 Float_t metEtFracHad;
261 Float_t metEtFracEM;
262 Float_t metHadEtHB;
263 Float_t metHadEtHO;
264 Float_t metHadEtHF;
265 Float_t metHadEtHE;
266 Float_t metEmEtHF;
267 Float_t metEmEtEE;
268 Float_t metEmEtEB;
269 Float_t metSignificance;
270 Float_t metScalarEt;
271 Float_t metEtUncorrected;
272 Float_t metPhiUncorrected;
273 Float_t mhtPt;
274 Float_t mhtPy;
275 Float_t mhtPx;
276 Float_t mhtPhi;
277 Float_t mhtSumEt;
278 Float_t mhtSignif;
279 Int_t nZCandidates;
280 Float_t ZCandidates[3]; //[nZCandidates]
281 Int_t nTriggerBits;
282 Int_t TriggerBits[79]; //[nTriggerBits]
283 Int_t HLT_Ele15_LW_L1R;
284 Int_t flavorhistory;
285 Int_t myProcess;
286 Float_t genParEta[2];
287 Float_t genParPhi[2];
288 Float_t genParTheta[2];
289 Float_t genParE[2];
290 Float_t genParEt[2];
291 Float_t genParP[2];
292 Float_t genParPt[2];
293 Int_t genParId[2];
294 Int_t genParStat[2];
295 Int_t ndaughters[2];
296 Int_t genParCharge[2];
297 Float_t genEta[2][2];
298 Float_t genPhi[2][2];
299 Float_t genTheta[2][2];
300 Float_t genE[2][2];
301 Float_t genEt[2][2];
302 Float_t genP[2][2];
303 Float_t genPt[2][2];
304 Int_t genId[2][2];
305 Int_t genStat[2][2];
306 Int_t genCharge[2][2];
307 Int_t numTau;
308 Float_t tauE[5]; //[numTau]
309 Float_t tauPt[5]; //[numTau]
310 Float_t tauPhi[5]; //[numTau]
311 Float_t tauEta[5]; //[numTau]
312 Int_t numPhoton;
313 Float_t photonE[13]; //[numPhoton]
314 Float_t photonPt[13]; //[numPhoton]
315 Float_t photonPhi[13]; //[numPhoton]
316 Float_t photonEta[13]; //[numPhoton]
317 Int_t eventRun;
318 Int_t eventNum;
319 Float_t eventLumiblock;
320
321 // List of branches
322 TBranch *b_numEle; //!
323 TBranch *b_eleE; //!
324 TBranch *b_eleET; //!
325 TBranch *b_elePX; //!
326 TBranch *b_elePY; //!
327 TBranch *b_elePZ; //!
328 TBranch *b_elePhi; //!
329 TBranch *b_eleTheta; //!
330 TBranch *b_eleEta; //!
331 TBranch *b_eleCharge; //!
332 TBranch *b_eleIDQuality; //!
333 TBranch *b_eleTrackPt; //!
334 TBranch *b_eleTrackPhi; //!
335 TBranch *b_eleTrackEta; //!
336 TBranch *b_eleTrackChi2; //!
337 TBranch *b_eleTrackNDOF; //!
338 TBranch *b_eleTrackD0; //!
339 TBranch *b_eleBeamSpotCorrectedTrackD0; //!
340 TBranch *b_eleTrackDz; //!
341 TBranch *b_eleSCEta; //!
342 TBranch *b_eleSCE; //!
343 TBranch *b_eleSCPhi; //!
344 TBranch *b_eleSCSigmaEtaEta; //!
345 TBranch *b_eleSCSigmaIEtaIEta; //!
346 TBranch *b_eleSCE1x5; //!
347 TBranch *b_eleSCE5x5; //!
348 TBranch *b_eleSCE2x5max; //!
349 TBranch *b_eleTrackIso; //!
350 TBranch *b_eleEcalIso; //!
351 TBranch *b_eledr04EcalRecHitSumEt; //!
352 TBranch *b_eledr03EcalRecHitSumEt; //!
353 TBranch *b_eleHcalIso; //!
354 TBranch *b_eleEcalIsoDeposit; //!
355 TBranch *b_eleHcalIsoDeposit; //!
356 TBranch *b_eleComRelIso; //!
357 TBranch *b_elePhotonConversionTag; //!
358 TBranch *b_elePhotonConversionDist; //!
359 TBranch *b_elePhotonConversionDcot; //!
360 TBranch *b_eleTriggerMatch; //!
361 TBranch *b_eleJetOverlap; //!
362 TBranch *b_genEleET; //!
363 TBranch *b_genElePX; //!
364 TBranch *b_genElePY; //!
365 TBranch *b_genElePZ; //!
366 TBranch *b_genElePhi; //!
367 TBranch *b_genEleTheta; //!
368 TBranch *b_genEleEta; //!
369 TBranch *b_genEleCharge; //!
370 TBranch *b_numMuo; //!
371 TBranch *b_muoE; //!
372 TBranch *b_muoET; //!
373 TBranch *b_muoPt; //!
374 TBranch *b_muoPX; //!
375 TBranch *b_muoPY; //!
376 TBranch *b_muoPZ; //!
377 TBranch *b_muoPhi; //!
378 TBranch *b_muoTheta; //!
379 TBranch *b_muoEta; //!
380 TBranch *b_muoCharge; //!
381 TBranch *b_muonChi2; //!
382 TBranch *b_muonD0; //!
383 TBranch *b_muonBeamSpotCorrectedD0; //!
384 TBranch *b_muonTrackNHits; //!
385 TBranch *b_muonNDOF; //!
386 TBranch *b_muonTrackIso; //!
387 TBranch *b_muonEcalIso; //!
388 TBranch *b_muonHcalIso; //!
389 TBranch *b_muonComRelIso; //!
390 TBranch *b_genMuoET; //!
391 TBranch *b_genMuoPX; //!
392 TBranch *b_genMuoPY; //!
393 TBranch *b_genMuoPZ; //!
394 TBranch *b_genMuoPhi; //!
395 TBranch *b_genMuoTheta; //!
396 TBranch *b_genMuoEta; //!
397 TBranch *b_genMuoCharge; //!
398 TBranch *b_nT; //!
399 TBranch *b_nThadronic; //!
400 TBranch *b_T_hadronicMCTruthE; //!
401 TBranch *b_T_hadronicMCTruthEt; //!
402 TBranch *b_T_hadronicMCTruthPx; //!
403 TBranch *b_T_hadronicMCTruthPy; //!
404 TBranch *b_T_hadronicMCTruthPz; //!
405 TBranch *b_T_hadronicMCMotherIndex; //!
406 TBranch *b_nTleptonic; //!
407 TBranch *b_T_leptonicMCTruthE; //!
408 TBranch *b_T_leptonicMCTruthEt; //!
409 TBranch *b_T_leptonicMCTruthPx; //!
410 TBranch *b_T_leptonicMCTruthPy; //!
411 TBranch *b_T_leptonicMCTruthPz; //!
412 TBranch *b_T_leptonicMCMotherIndex; //!
413 TBranch *b_nb; //!
414 TBranch *b_bMCTruthE; //!
415 TBranch *b_bMCTruthEt; //!
416 TBranch *b_bMCTruthPx; //!
417 TBranch *b_bMCTruthPy; //!
418 TBranch *b_bMCTruthPz; //!
419 TBranch *b_bMCTruthMother; //!
420 TBranch *b_nWhadronic; //!
421 TBranch *b_W_hadronicMCTruthE; //!
422 TBranch *b_W_hadronicMCTruthEt; //!
423 TBranch *b_W_hadronicMCTruthPx; //!
424 TBranch *b_W_hadronicMCTruthPy; //!
425 TBranch *b_W_hadronicMCTruthPz; //!
426 TBranch *b_W_hadronicMCTruthPID; //!
427 TBranch *b_W_hadronicMCTruthMother; //!
428 TBranch *b_nWleptonic; //!
429 TBranch *b_W_leptonicMCTruthE; //!
430 TBranch *b_W_leptonicMCTruthEt; //!
431 TBranch *b_W_leptonicMCTruthPx; //!
432 TBranch *b_W_leptonicMCTruthPy; //!
433 TBranch *b_W_leptonicMCTruthPz; //!
434 TBranch *b_W_leptonicMCTruthPID; //!
435 TBranch *b_W_leptonicMCTruthMother; //!
436 TBranch *b_isElePlusJets; //!
437 TBranch *b_VQQBosonAbsId; //!
438 TBranch *b_numJet; //!
439 TBranch *b_jetE; //!
440 TBranch *b_jetEt; //!
441 TBranch *b_jetPt; //!
442 TBranch *b_jetCorEt; //!
443 TBranch *b_jetEta; //!
444 TBranch *b_jetTheta; //!
445 TBranch *b_jetPhi; //!
446 TBranch *b_jetPx; //!
447 TBranch *b_jetPy; //!
448 TBranch *b_jetPz; //!
449 TBranch *b_jetNtracksInJet; //!
450 TBranch *b_jetJetCharge; //!
451 TBranch *b_jetMuEnergy; //!
452 TBranch *b_jetMuEnergyFraction; //!
453 TBranch *b_jetChargedMultiplicity; //!
454 TBranch *b_jetNeutralHadEnergy; //!
455 TBranch *b_jetEMEnergyInEB; //!
456 TBranch *b_jetEMEnergyInEE; //!
457 TBranch *b_jetEMEnergyFraction; //!
458 TBranch *b_jetEMEnergyInHF; //!
459 TBranch *b_jetHadEnergyInHB; //!
460 TBranch *b_jetHadEnergyInHE; //!
461 TBranch *b_jetHadEnergyInHF; //!
462 TBranch *b_jetHadEnergyInHO; //!
463 TBranch *b_jetBtagTrackCountHighPurity; //!
464 TBranch *b_jetBtagTrackCountHighEff; //!
465 TBranch *b_jetBtagProbability; //!
466 TBranch *b_jetBtagSoftElectron; //!
467 TBranch *b_jetBtagSoftMuon; //!
468 TBranch *b_jetBtagSoftMuonNoIP; //!
469 TBranch *b_jetBtagSoftMuonPtRel; //!
470 TBranch *b_jetBtagSoftMuonQuality; //!
471 TBranch *b_jetBtagSecondaryVertex; //!
472 TBranch *b_jetBtagSecondaryVertexNegative; //!
473 TBranch *b_jetBtagCombinedSVLL; //!
474 TBranch *b_jetBtagCombinedSVMVA; //!
475 TBranch *b_jetCorrFactor; //!
476 TBranch *b_jetN60; //!
477 TBranch *b_jetN90; //!
478 TBranch *b_jetNeutralEmEnergy; //!
479 TBranch *b_jetTriggered; //!
480 TBranch *b_jetSVPT; //!
481 TBranch *b_jetSVL2D; //!
482 TBranch *b_jetSVL2Dxy; //!
483 TBranch *b_jetSVL2DxyErr; //!
484 TBranch *b_jetSVL2DxySig; //!
485 TBranch *b_jetSVL3D; //!
486 TBranch *b_jetSVL3DErr; //!
487 TBranch *b_jetSVL3DSig; //!
488 TBranch *b_jetSVMass; //!
489 TBranch *b_jetSVNtracks; //!
490 TBranch *b_genJetET; //!
491 TBranch *b_genJetPX; //!
492 TBranch *b_genJetPY; //!
493 TBranch *b_genJetPZ; //!
494 TBranch *b_genJetPhi; //!
495 TBranch *b_genJetTheta; //!
496 TBranch *b_genJetEta; //!
497 TBranch *b_genJetPID; //!
498 TBranch *b_jetPID; //!
499 TBranch *b_jetClosestBPartonDeltaR; //!
500 TBranch *b_jetClosestCPartonDeltaR; //!
501 TBranch *b_btagParamDiscCut_MISTAGSSVM; //!
502 TBranch *b_btagParamDiscCut_PTRELSSVM; //!
503 TBranch *b_btagParamDiscCut_PTRELTCHEL; //!
504 TBranch *b_btagParamDiscCut_PTRELTCHEM; //!
505 TBranch *b_btagParamDiscCut_PTRELTCHET; //!
506 TBranch *b_btagParamDiscCut_PTRELTCHPL; //!
507 TBranch *b_btagParamDiscCut_PTRELTCHPM; //!
508 TBranch *b_btagParamDiscCut_PTRELTCHPT; //!
509 TBranch *b_btagParamDiscCut_SYSTEM8SSVM; //!
510 TBranch *b_jetBtagParam_MISTAGSSVM_BTAGLEFF; //!
511 TBranch *b_jetBtagParam_MISTAGSSVM_BTAGLERR; //!
512 TBranch *b_jetBtagParam_MISTAGSSVM_BTAGLEFFCORR; //!
513 TBranch *b_jetBtagParam_MISTAGSSVM_BTAGLERRCORR; //!
514 TBranch *b_jetBtagParam_PTRELSSVM_BTAGBEFFCORR; //!
515 TBranch *b_jetBtagParam_PTRELSSVM_BTAGBERRCORR; //!
516 TBranch *b_jetBtagParam_SYSTEM8SSVM_BTAGBEFF; //!
517 TBranch *b_jetBtagParam_SYSTEM8SSVM_BTAGBERR; //!
518 TBranch *b_jetBtagParam_PTRELTCHEL_BTAGBEFFCORR; //!
519 TBranch *b_jetBtagParam_PTRELTCHEM_BTAGBEFFCORR; //!
520 TBranch *b_jetBtagParam_PTRELTCHET_BTAGBEFFCORR; //!
521 TBranch *b_jetBtagParam_PTRELTCHPL_BTAGBEFFCORR; //!
522 TBranch *b_jetBtagParam_PTRELTCHPM_BTAGBEFFCORR; //!
523 TBranch *b_jetBtagParam_PTRELTCHPT_BTAGBEFFCORR; //!
524 TBranch *b_numGeneralTracks; //!
525 TBranch *b_generalTracksPt; //!
526 TBranch *b_generalTracksEta; //!
527 TBranch *b_generalTracksTheta; //!
528 TBranch *b_generalTracksBeamSpotCorrectedD0; //!
529 TBranch *b_generalTracksPhi; //!
530 TBranch *b_generalTracksCharge; //!
531 TBranch *b_processId; //!
532 TBranch *b_processPtHat; //!
533 TBranch *b_processMCWeight; //!
534 TBranch *b_beamSpotX; //!
535 TBranch *b_beamSpotY; //!
536 TBranch *b_beamSpotZ; //!
537 TBranch *b_topo_sphericity; //!
538 TBranch *b_topo_aplanarity; //!
539 TBranch *b_topo_sphericity_e; //!
540 TBranch *b_topo_aplanarity_e; //!
541 TBranch *b_topo_ht; //!
542 TBranch *b_top_ht_e; //!
543 TBranch *b_topo_sqrts; //!
544 TBranch *b_top_sqrts_e; //!
545 TBranch *b_topo_oblateness; //!
546 TBranch *b_metEt; //!
547 TBranch *b_metPhi; //!
548 TBranch *b_metPt; //!
549 TBranch *b_metPx; //!
550 TBranch *b_metPy; //!
551 TBranch *b_genMetEt; //!
552 TBranch *b_genMetPhi; //!
553 TBranch *b_genMetPt; //!
554 TBranch *b_genMetPx; //!
555 TBranch *b_genMetPy; //!
556 TBranch *b_metMaxEtEM; //!
557 TBranch *b_metMaxEtHad; //!
558 TBranch *b_metEtFracHad; //!
559 TBranch *b_metEtFracEM; //!
560 TBranch *b_metHadEtHB; //!
561 TBranch *b_metHadEtHO; //!
562 TBranch *b_metHadEtHF; //!
563 TBranch *b_metHadEtHE; //!
564 TBranch *b_metEmEtHF; //!
565 TBranch *b_metEmEtEE; //!
566 TBranch *b_metEmEtEB; //!
567 TBranch *b_metSignificance; //!
568 TBranch *b_metScalarEt; //!
569 TBranch *b_metEtUncorrected; //!
570 TBranch *b_metPhiUncorrected; //!
571 TBranch *b_mhtPt; //!
572 TBranch *b_mhtPy; //!
573 TBranch *b_mhtPx; //!
574 TBranch *b_mhtPhi; //!
575 TBranch *b_mhtSumEt; //!
576 TBranch *b_mhtSignif; //!
577 TBranch *b_nZCandidates; //!
578 TBranch *b_ZCandidates; //!
579 TBranch *b_nTriggerBits; //!
580 TBranch *b_TriggerBits; //!
581 TBranch *b_HLT_Ele15_LW_L1R; //!
582 TBranch *b_flavorhistory; //!
583 TBranch *b_myProcess; //!
584 TBranch *b_genParEta; //!
585 TBranch *b_genParPhi; //!
586 TBranch *b_genParTheta; //!
587 TBranch *b_genParE; //!
588 TBranch *b_genParEt; //!
589 TBranch *b_genParP; //!
590 TBranch *b_genParPt; //!
591 TBranch *b_genParId; //!
592 TBranch *b_genParStat; //!
593 TBranch *b_ndaughters; //!
594 TBranch *b_genParCharge; //!
595 TBranch *b_genEta; //!
596 TBranch *b_genPhi; //!
597 TBranch *b_genTheta; //!
598 TBranch *b_genE; //!
599 TBranch *b_genEt; //!
600 TBranch *b_genP; //!
601 TBranch *b_genPt; //!
602 TBranch *b_genId; //!
603 TBranch *b_genStat; //!
604 TBranch *b_genCharge; //!
605 TBranch *b_numTau; //!
606 TBranch *b_tauE; //!
607 TBranch *b_tauPt; //!
608 TBranch *b_tauPhi; //!
609 TBranch *b_tauEta; //!
610 TBranch *b_numPhoton; //!
611 TBranch *b_photonE; //!
612 TBranch *b_photonPt; //!
613 TBranch *b_photonPhi; //!
614 TBranch *b_photonEta; //!
615 TBranch *b_eventRun; //!
616 TBranch *b_eventNum; //!
617 TBranch *b_eventLumiblock; //!
618
619 //for changing configuration
620 bool writeASCII_;
621
622 //variables for defining cuts!
623 UInt_t minGoodJets_;
624 UInt_t goodBJets_;
625 Float_t minJetPt_Good_;
626 Float_t maxJetEta_Good_;
627
628 eventLoop(TTree *tree=0);
629 virtual ~eventLoop();
630 virtual Int_t Cut();
631 virtual Int_t GetEntry(Long64_t entry);
632 virtual Long64_t LoadTree(Long64_t entry);
633 virtual void Init(TTree *tree);
634 virtual void Loop(TString outfile,TString weightfile="",bool isSignal=false);
635 virtual Bool_t Notify();
636 virtual void Show(Long64_t entry = -1);
637
638 void writeASCII(bool writeASCII) {writeASCII_=writeASCII;}
639 Bool_t isJetGood(UInt_t index) ;
640 UInt_t nGoodJets();
641 UInt_t nGoodElectrons();
642 UInt_t nGoodMuons();
643 double getDeltaPhi(double phi1,double phi2);
644 };
645
646 #endif
647
648 #ifdef eventLoop_cxx
649 eventLoop::eventLoop(TTree *tree) :
650 writeASCII_(false),
651 //define default values of selection cuts
652 minGoodJets_(3),
653 goodBJets_(0),
654 minJetPt_Good_(50),
655 maxJetEta_Good_(2.4)
656 {
657 // if parameter tree is not specified (or zero), connect the file
658 // used to generate this class and read the Tree.
659 if (tree == 0) {
660
661 #ifdef SINGLE_TREE
662 // The following code should be used if you want this class to access
663 // a single tree instead of a chain
664 TFile *f = (TFile*)gROOT->GetListOfFiles()->FindObject("Memory Directory");
665 if (!f) {
666 f = new TFile("Memory Directory");
667 f->cd("Rint:/");
668 }
669 tree = (TTree*)gDirectory->Get("makeTopologyNtuple/tree");
670
671 #else // SINGLE_TREE
672
673 // The following code should be used if you want this class to access a chain
674 // of trees.
675 TChain * chain = new TChain("makeTopologyNtuple/tree","");
676 chain->Add("data/Ntuple_LM13-7TeV_1.root/makeTopologyNtuple/tree");
677 chain->Add("data/Ntuple_LM13-7TeV_2.root/makeTopologyNtuple/tree");
678 tree = chain;
679 #endif // SINGLE_TREE
680
681 }
682
683 Init(tree);
684 }
685
686 eventLoop::~eventLoop()
687 {
688 if (!fChain) return;
689 delete fChain->GetCurrentFile();
690 }
691
692 Int_t eventLoop::GetEntry(Long64_t entry)
693 {
694 // Read contents of entry.
695 if (!fChain) return 0;
696 return fChain->GetEntry(entry);
697 }
698 Long64_t eventLoop::LoadTree(Long64_t entry)
699 {
700 // Set the environment to read one entry
701 if (!fChain) return -5;
702 Long64_t centry = fChain->LoadTree(entry);
703 if (centry < 0) return centry;
704 if (!fChain->InheritsFrom(TChain::Class())) return centry;
705 TChain *chain = (TChain*)fChain;
706 if (chain->GetTreeNumber() != fCurrent) {
707 fCurrent = chain->GetTreeNumber();
708 Notify();
709 }
710 return centry;
711 }
712
713 void eventLoop::Init(TTree *tree)
714 {
715 // The Init() function is called when the selector needs to initialize
716 // a new tree or chain. Typically here the branch addresses and branch
717 // pointers of the tree will be set.
718 // It is normally not necessary to make changes to the generated
719 // code, but the routine can be extended by the user if needed.
720 // Init() will be called many times when running on PROOF
721 // (once per file to be processed).
722
723 // Set branch addresses and branch pointers
724 if (!tree) return;
725 fChain = tree;
726 fCurrent = -1;
727 fChain->SetMakeClass(1);
728
729 fChain->SetBranchAddress("numEle", &numEle, &b_numEle);
730 fChain->SetBranchAddress("eleE", eleE, &b_eleE);
731 fChain->SetBranchAddress("eleET", eleET, &b_eleET);
732 fChain->SetBranchAddress("elePX", elePX, &b_elePX);
733 fChain->SetBranchAddress("elePY", elePY, &b_elePY);
734 fChain->SetBranchAddress("elePZ", elePZ, &b_elePZ);
735 fChain->SetBranchAddress("elePhi", elePhi, &b_elePhi);
736 fChain->SetBranchAddress("eleTheta", eleTheta, &b_eleTheta);
737 fChain->SetBranchAddress("eleEta", eleEta, &b_eleEta);
738 fChain->SetBranchAddress("eleCharge", eleCharge, &b_eleCharge);
739 fChain->SetBranchAddress("eleIDQuality", eleIDQuality, &b_eleIDQuality);
740 fChain->SetBranchAddress("eleTrackPt", eleTrackPt, &b_eleTrackPt);
741 fChain->SetBranchAddress("eleTrackPhi", eleTrackPhi, &b_eleTrackPhi);
742 fChain->SetBranchAddress("eleTrackEta", eleTrackEta, &b_eleTrackEta);
743 fChain->SetBranchAddress("eleTrackChi2", eleTrackChi2, &b_eleTrackChi2);
744 fChain->SetBranchAddress("eleTrackNDOF", eleTrackNDOF, &b_eleTrackNDOF);
745 fChain->SetBranchAddress("eleTrackD0", eleTrackD0, &b_eleTrackD0);
746 fChain->SetBranchAddress("eleBeamSpotCorrectedTrackD0", eleBeamSpotCorrectedTrackD0, &b_eleBeamSpotCorrectedTrackD0);
747 fChain->SetBranchAddress("eleTrackDz", eleTrackDz, &b_eleTrackDz);
748 fChain->SetBranchAddress("eleSCEta", eleSCEta, &b_eleSCEta);
749 fChain->SetBranchAddress("eleSCE", eleSCE, &b_eleSCE);
750 fChain->SetBranchAddress("eleSCPhi", eleSCPhi, &b_eleSCPhi);
751 fChain->SetBranchAddress("eleSCSigmaEtaEta", eleSCSigmaEtaEta, &b_eleSCSigmaEtaEta);
752 fChain->SetBranchAddress("eleSCSigmaIEtaIEta", eleSCSigmaIEtaIEta, &b_eleSCSigmaIEtaIEta);
753 fChain->SetBranchAddress("eleSCE1x5", eleSCE1x5, &b_eleSCE1x5);
754 fChain->SetBranchAddress("eleSCE5x5", eleSCE5x5, &b_eleSCE5x5);
755 fChain->SetBranchAddress("eleSCE2x5max", eleSCE2x5max, &b_eleSCE2x5max);
756 fChain->SetBranchAddress("eleTrackIso", eleTrackIso, &b_eleTrackIso);
757 fChain->SetBranchAddress("eleEcalIso", eleEcalIso, &b_eleEcalIso);
758 fChain->SetBranchAddress("eledr04EcalRecHitSumEt", eledr04EcalRecHitSumEt, &b_eledr04EcalRecHitSumEt);
759 fChain->SetBranchAddress("eledr03EcalRecHitSumEt", eledr03EcalRecHitSumEt, &b_eledr03EcalRecHitSumEt);
760 fChain->SetBranchAddress("eleHcalIso", eleHcalIso, &b_eleHcalIso);
761 fChain->SetBranchAddress("eleEcalIsoDeposit", eleEcalIsoDeposit, &b_eleEcalIsoDeposit);
762 fChain->SetBranchAddress("eleHcalIsoDeposit", eleHcalIsoDeposit, &b_eleHcalIsoDeposit);
763 fChain->SetBranchAddress("eleComRelIso", eleComRelIso, &b_eleComRelIso);
764 fChain->SetBranchAddress("elePhotonConversionTag", elePhotonConversionTag, &b_elePhotonConversionTag);
765 fChain->SetBranchAddress("elePhotonConversionDist", elePhotonConversionDist, &b_elePhotonConversionDist);
766 fChain->SetBranchAddress("elePhotonConversionDcot", elePhotonConversionDcot, &b_elePhotonConversionDcot);
767 fChain->SetBranchAddress("eleTriggerMatch", eleTriggerMatch, &b_eleTriggerMatch);
768 fChain->SetBranchAddress("eleJetOverlap", eleJetOverlap, &b_eleJetOverlap);
769 fChain->SetBranchAddress("genEleET", genEleET, &b_genEleET);
770 fChain->SetBranchAddress("genElePX", genElePX, &b_genElePX);
771 fChain->SetBranchAddress("genElePY", genElePY, &b_genElePY);
772 fChain->SetBranchAddress("genElePZ", genElePZ, &b_genElePZ);
773 fChain->SetBranchAddress("genElePhi", genElePhi, &b_genElePhi);
774 fChain->SetBranchAddress("genEleTheta", genEleTheta, &b_genEleTheta);
775 fChain->SetBranchAddress("genEleEta", genEleEta, &b_genEleEta);
776 fChain->SetBranchAddress("genEleCharge", genEleCharge, &b_genEleCharge);
777 fChain->SetBranchAddress("numMuo", &numMuo, &b_numMuo);
778 fChain->SetBranchAddress("muoE", muoE, &b_muoE);
779 fChain->SetBranchAddress("muoET", muoET, &b_muoET);
780 fChain->SetBranchAddress("muoPt", muoPt, &b_muoPt);
781 fChain->SetBranchAddress("muoPX", muoPX, &b_muoPX);
782 fChain->SetBranchAddress("muoPY", muoPY, &b_muoPY);
783 fChain->SetBranchAddress("muoPZ", muoPZ, &b_muoPZ);
784 fChain->SetBranchAddress("muoPhi", muoPhi, &b_muoPhi);
785 fChain->SetBranchAddress("muoTheta", muoTheta, &b_muoTheta);
786 fChain->SetBranchAddress("muoEta", muoEta, &b_muoEta);
787 fChain->SetBranchAddress("muoCharge", muoCharge, &b_muoCharge);
788 fChain->SetBranchAddress("muonChi2", muonChi2, &b_muonChi2);
789 fChain->SetBranchAddress("muonD0", muonD0, &b_muonD0);
790 fChain->SetBranchAddress("muonBeamSpotCorrectedD0", muonBeamSpotCorrectedD0, &b_muonBeamSpotCorrectedD0);
791 fChain->SetBranchAddress("muonTrackNHits", muonTrackNHits, &b_muonTrackNHits);
792 fChain->SetBranchAddress("muonNDOF", muonNDOF, &b_muonNDOF);
793 fChain->SetBranchAddress("muonTrackIso", muonTrackIso, &b_muonTrackIso);
794 fChain->SetBranchAddress("muonEcalIso", muonEcalIso, &b_muonEcalIso);
795 fChain->SetBranchAddress("muonHcalIso", muonHcalIso, &b_muonHcalIso);
796 fChain->SetBranchAddress("muonComRelIso", muonComRelIso, &b_muonComRelIso);
797 fChain->SetBranchAddress("genMuoET", genMuoET, &b_genMuoET);
798 fChain->SetBranchAddress("genMuoPX", genMuoPX, &b_genMuoPX);
799 fChain->SetBranchAddress("genMuoPY", genMuoPY, &b_genMuoPY);
800 fChain->SetBranchAddress("genMuoPZ", genMuoPZ, &b_genMuoPZ);
801 fChain->SetBranchAddress("genMuoPhi", genMuoPhi, &b_genMuoPhi);
802 fChain->SetBranchAddress("genMuoTheta", genMuoTheta, &b_genMuoTheta);
803 fChain->SetBranchAddress("genMuoEta", genMuoEta, &b_genMuoEta);
804 fChain->SetBranchAddress("genMuoCharge", genMuoCharge, &b_genMuoCharge);
805 fChain->SetBranchAddress("nT", &nT, &b_nT);
806 fChain->SetBranchAddress("nThadronic", &nThadronic, &b_nThadronic);
807 fChain->SetBranchAddress("T_hadronicMCTruthE", T_hadronicMCTruthE, &b_T_hadronicMCTruthE);
808 fChain->SetBranchAddress("T_hadronicMCTruthEt", T_hadronicMCTruthEt, &b_T_hadronicMCTruthEt);
809 fChain->SetBranchAddress("T_hadronicMCTruthPx", T_hadronicMCTruthPx, &b_T_hadronicMCTruthPx);
810 fChain->SetBranchAddress("T_hadronicMCTruthPy", T_hadronicMCTruthPy, &b_T_hadronicMCTruthPy);
811 fChain->SetBranchAddress("T_hadronicMCTruthPz", T_hadronicMCTruthPz, &b_T_hadronicMCTruthPz);
812 fChain->SetBranchAddress("T_hadronicMCMotherIndex", T_hadronicMCMotherIndex, &b_T_hadronicMCMotherIndex);
813 fChain->SetBranchAddress("nTleptonic", &nTleptonic, &b_nTleptonic);
814 fChain->SetBranchAddress("T_leptonicMCTruthE", T_leptonicMCTruthE, &b_T_leptonicMCTruthE);
815 fChain->SetBranchAddress("T_leptonicMCTruthEt", T_leptonicMCTruthEt, &b_T_leptonicMCTruthEt);
816 fChain->SetBranchAddress("T_leptonicMCTruthPx", T_leptonicMCTruthPx, &b_T_leptonicMCTruthPx);
817 fChain->SetBranchAddress("T_leptonicMCTruthPy", T_leptonicMCTruthPy, &b_T_leptonicMCTruthPy);
818 fChain->SetBranchAddress("T_leptonicMCTruthPz", T_leptonicMCTruthPz, &b_T_leptonicMCTruthPz);
819 fChain->SetBranchAddress("T_leptonicMCMotherIndex", T_leptonicMCMotherIndex, &b_T_leptonicMCMotherIndex);
820 fChain->SetBranchAddress("nb", &nb, &b_nb);
821 fChain->SetBranchAddress("bMCTruthE", bMCTruthE, &b_bMCTruthE);
822 fChain->SetBranchAddress("bMCTruthEt", bMCTruthEt, &b_bMCTruthEt);
823 fChain->SetBranchAddress("bMCTruthPx", bMCTruthPx, &b_bMCTruthPx);
824 fChain->SetBranchAddress("bMCTruthPy", bMCTruthPy, &b_bMCTruthPy);
825 fChain->SetBranchAddress("bMCTruthPz", bMCTruthPz, &b_bMCTruthPz);
826 fChain->SetBranchAddress("bMCTruthMother", bMCTruthMother, &b_bMCTruthMother);
827 fChain->SetBranchAddress("nWhadronic", &nWhadronic, &b_nWhadronic);
828 fChain->SetBranchAddress("W_hadronicMCTruthE", W_hadronicMCTruthE, &b_W_hadronicMCTruthE);
829 fChain->SetBranchAddress("W_hadronicMCTruthEt", W_hadronicMCTruthEt, &b_W_hadronicMCTruthEt);
830 fChain->SetBranchAddress("W_hadronicMCTruthPx", W_hadronicMCTruthPx, &b_W_hadronicMCTruthPx);
831 fChain->SetBranchAddress("W_hadronicMCTruthPy", W_hadronicMCTruthPy, &b_W_hadronicMCTruthPy);
832 fChain->SetBranchAddress("W_hadronicMCTruthPz", W_hadronicMCTruthPz, &b_W_hadronicMCTruthPz);
833 fChain->SetBranchAddress("W_hadronicMCTruthPID", W_hadronicMCTruthPID, &b_W_hadronicMCTruthPID);
834 fChain->SetBranchAddress("W_hadronicMCTruthMother", W_hadronicMCTruthMother, &b_W_hadronicMCTruthMother);
835 fChain->SetBranchAddress("nWleptonic", &nWleptonic, &b_nWleptonic);
836 fChain->SetBranchAddress("W_leptonicMCTruthE", W_leptonicMCTruthE, &b_W_leptonicMCTruthE);
837 fChain->SetBranchAddress("W_leptonicMCTruthEt", W_leptonicMCTruthEt, &b_W_leptonicMCTruthEt);
838 fChain->SetBranchAddress("W_leptonicMCTruthPx", W_leptonicMCTruthPx, &b_W_leptonicMCTruthPx);
839 fChain->SetBranchAddress("W_leptonicMCTruthPy", W_leptonicMCTruthPy, &b_W_leptonicMCTruthPy);
840 fChain->SetBranchAddress("W_leptonicMCTruthPz", W_leptonicMCTruthPz, &b_W_leptonicMCTruthPz);
841 fChain->SetBranchAddress("W_leptonicMCTruthPID", W_leptonicMCTruthPID, &b_W_leptonicMCTruthPID);
842 fChain->SetBranchAddress("W_leptonicMCTruthMother", W_leptonicMCTruthMother, &b_W_leptonicMCTruthMother);
843 fChain->SetBranchAddress("isElePlusJets", &isElePlusJets, &b_isElePlusJets);
844 fChain->SetBranchAddress("VQQBosonAbsId", &VQQBosonAbsId, &b_VQQBosonAbsId);
845 fChain->SetBranchAddress("numJet", &numJet, &b_numJet);
846 fChain->SetBranchAddress("jetE", jetE, &b_jetE);
847 fChain->SetBranchAddress("jetEt", jetEt, &b_jetEt);
848 fChain->SetBranchAddress("jetPt", jetPt, &b_jetPt);
849 fChain->SetBranchAddress("jetCorEt", jetCorEt, &b_jetCorEt);
850 fChain->SetBranchAddress("jetEta", jetEta, &b_jetEta);
851 fChain->SetBranchAddress("jetTheta", jetTheta, &b_jetTheta);
852 fChain->SetBranchAddress("jetPhi", jetPhi, &b_jetPhi);
853 fChain->SetBranchAddress("jetPx", jetPx, &b_jetPx);
854 fChain->SetBranchAddress("jetPy", jetPy, &b_jetPy);
855 fChain->SetBranchAddress("jetPz", jetPz, &b_jetPz);
856 fChain->SetBranchAddress("jetNtracksInJet", jetNtracksInJet, &b_jetNtracksInJet);
857 fChain->SetBranchAddress("jetJetCharge", jetJetCharge, &b_jetJetCharge);
858 fChain->SetBranchAddress("jetMuEnergy", jetMuEnergy, &b_jetMuEnergy);
859 fChain->SetBranchAddress("jetMuEnergyFraction", jetMuEnergyFraction, &b_jetMuEnergyFraction);
860 fChain->SetBranchAddress("jetChargedMultiplicity", jetChargedMultiplicity, &b_jetChargedMultiplicity);
861 fChain->SetBranchAddress("jetNeutralHadEnergy", jetNeutralHadEnergy, &b_jetNeutralHadEnergy);
862 fChain->SetBranchAddress("jetEMEnergyInEB", jetEMEnergyInEB, &b_jetEMEnergyInEB);
863 fChain->SetBranchAddress("jetEMEnergyInEE", jetEMEnergyInEE, &b_jetEMEnergyInEE);
864 fChain->SetBranchAddress("jetEMEnergyFraction", jetEMEnergyFraction, &b_jetEMEnergyFraction);
865 fChain->SetBranchAddress("jetEMEnergyInHF", jetEMEnergyInHF, &b_jetEMEnergyInHF);
866 fChain->SetBranchAddress("jetHadEnergyInHB", jetHadEnergyInHB, &b_jetHadEnergyInHB);
867 fChain->SetBranchAddress("jetHadEnergyInHE", jetHadEnergyInHE, &b_jetHadEnergyInHE);
868 fChain->SetBranchAddress("jetHadEnergyInHF", jetHadEnergyInHF, &b_jetHadEnergyInHF);
869 fChain->SetBranchAddress("jetHadEnergyInHO", jetHadEnergyInHO, &b_jetHadEnergyInHO);
870 fChain->SetBranchAddress("jetBtagTrackCountHighPurity", jetBtagTrackCountHighPurity, &b_jetBtagTrackCountHighPurity);
871 fChain->SetBranchAddress("jetBtagTrackCountHighEff", jetBtagTrackCountHighEff, &b_jetBtagTrackCountHighEff);
872 fChain->SetBranchAddress("jetBtagProbability", jetBtagProbability, &b_jetBtagProbability);
873 fChain->SetBranchAddress("jetBtagSoftElectron", jetBtagSoftElectron, &b_jetBtagSoftElectron);
874 fChain->SetBranchAddress("jetBtagSoftMuon", jetBtagSoftMuon, &b_jetBtagSoftMuon);
875 fChain->SetBranchAddress("jetBtagSoftMuonNoIP", jetBtagSoftMuonNoIP, &b_jetBtagSoftMuonNoIP);
876 fChain->SetBranchAddress("jetBtagSoftMuonPtRel", jetBtagSoftMuonPtRel, &b_jetBtagSoftMuonPtRel);
877 fChain->SetBranchAddress("jetBtagSoftMuonQuality", jetBtagSoftMuonQuality, &b_jetBtagSoftMuonQuality);
878 fChain->SetBranchAddress("jetBtagSecondaryVertex", jetBtagSecondaryVertex, &b_jetBtagSecondaryVertex);
879 fChain->SetBranchAddress("jetBtagSecondaryVertexNegative", jetBtagSecondaryVertexNegative, &b_jetBtagSecondaryVertexNegative);
880 fChain->SetBranchAddress("jetBtagCombinedSVLL", jetBtagCombinedSVLL, &b_jetBtagCombinedSVLL);
881 fChain->SetBranchAddress("jetBtagCombinedSVMVA", jetBtagCombinedSVMVA, &b_jetBtagCombinedSVMVA);
882 fChain->SetBranchAddress("jetCorrFactor", jetCorrFactor, &b_jetCorrFactor);
883 fChain->SetBranchAddress("jetN60", jetN60, &b_jetN60);
884 fChain->SetBranchAddress("jetN90", jetN90, &b_jetN90);
885 fChain->SetBranchAddress("jetNeutralEmEnergy", jetNeutralEmEnergy, &b_jetNeutralEmEnergy);
886 fChain->SetBranchAddress("jetTriggered", jetTriggered, &b_jetTriggered);
887 fChain->SetBranchAddress("jetSVPT", jetSVPT, &b_jetSVPT);
888 fChain->SetBranchAddress("jetSVL2D", jetSVL2D, &b_jetSVL2D);
889 fChain->SetBranchAddress("jetSVL2Dxy", jetSVL2Dxy, &b_jetSVL2Dxy);
890 fChain->SetBranchAddress("jetSVL2DxyErr", jetSVL2DxyErr, &b_jetSVL2DxyErr);
891 fChain->SetBranchAddress("jetSVL2DxySig", jetSVL2DxySig, &b_jetSVL2DxySig);
892 fChain->SetBranchAddress("jetSVL3D", jetSVL3D, &b_jetSVL3D);
893 fChain->SetBranchAddress("jetSVL3DErr", jetSVL3DErr, &b_jetSVL3DErr);
894 fChain->SetBranchAddress("jetSVL3DSig", jetSVL3DSig, &b_jetSVL3DSig);
895 fChain->SetBranchAddress("jetSVMass", jetSVMass, &b_jetSVMass);
896 fChain->SetBranchAddress("jetSVNtracks", jetSVNtracks, &b_jetSVNtracks);
897 fChain->SetBranchAddress("genJetET", genJetET, &b_genJetET);
898 fChain->SetBranchAddress("genJetPX", genJetPX, &b_genJetPX);
899 fChain->SetBranchAddress("genJetPY", genJetPY, &b_genJetPY);
900 fChain->SetBranchAddress("genJetPZ", genJetPZ, &b_genJetPZ);
901 fChain->SetBranchAddress("genJetPhi", genJetPhi, &b_genJetPhi);
902 fChain->SetBranchAddress("genJetTheta", genJetTheta, &b_genJetTheta);
903 fChain->SetBranchAddress("genJetEta", genJetEta, &b_genJetEta);
904 fChain->SetBranchAddress("genJetPID", genJetPID, &b_genJetPID);
905 fChain->SetBranchAddress("jetPID", jetPID, &b_jetPID);
906 fChain->SetBranchAddress("jetClosestBPartonDeltaR", jetClosestBPartonDeltaR, &b_jetClosestBPartonDeltaR);
907 fChain->SetBranchAddress("jetClosestCPartonDeltaR", jetClosestCPartonDeltaR, &b_jetClosestCPartonDeltaR);
908 fChain->SetBranchAddress("btagParamDiscCut_MISTAGSSVM", &btagParamDiscCut_MISTAGSSVM, &b_btagParamDiscCut_MISTAGSSVM);
909 fChain->SetBranchAddress("btagParamDiscCut_PTRELSSVM", &btagParamDiscCut_PTRELSSVM, &b_btagParamDiscCut_PTRELSSVM);
910 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHEL", &btagParamDiscCut_PTRELTCHEL, &b_btagParamDiscCut_PTRELTCHEL);
911 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHEM", &btagParamDiscCut_PTRELTCHEM, &b_btagParamDiscCut_PTRELTCHEM);
912 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHET", &btagParamDiscCut_PTRELTCHET, &b_btagParamDiscCut_PTRELTCHET);
913 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHPL", &btagParamDiscCut_PTRELTCHPL, &b_btagParamDiscCut_PTRELTCHPL);
914 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHPM", &btagParamDiscCut_PTRELTCHPM, &b_btagParamDiscCut_PTRELTCHPM);
915 fChain->SetBranchAddress("btagParamDiscCut_PTRELTCHPT", &btagParamDiscCut_PTRELTCHPT, &b_btagParamDiscCut_PTRELTCHPT);
916 fChain->SetBranchAddress("btagParamDiscCut_SYSTEM8SSVM", &btagParamDiscCut_SYSTEM8SSVM, &b_btagParamDiscCut_SYSTEM8SSVM);
917 fChain->SetBranchAddress("jetBtagParam_MISTAGSSVM_BTAGLEFF", jetBtagParam_MISTAGSSVM_BTAGLEFF, &b_jetBtagParam_MISTAGSSVM_BTAGLEFF);
918 fChain->SetBranchAddress("jetBtagParam_MISTAGSSVM_BTAGLERR", jetBtagParam_MISTAGSSVM_BTAGLERR, &b_jetBtagParam_MISTAGSSVM_BTAGLERR);
919 fChain->SetBranchAddress("jetBtagParam_MISTAGSSVM_BTAGLEFFCORR", jetBtagParam_MISTAGSSVM_BTAGLEFFCORR, &b_jetBtagParam_MISTAGSSVM_BTAGLEFFCORR);
920 fChain->SetBranchAddress("jetBtagParam_MISTAGSSVM_BTAGLERRCORR", jetBtagParam_MISTAGSSVM_BTAGLERRCORR, &b_jetBtagParam_MISTAGSSVM_BTAGLERRCORR);
921 fChain->SetBranchAddress("jetBtagParam_PTRELSSVM_BTAGBEFFCORR", jetBtagParam_PTRELSSVM_BTAGBEFFCORR, &b_jetBtagParam_PTRELSSVM_BTAGBEFFCORR);
922 fChain->SetBranchAddress("jetBtagParam_PTRELSSVM_BTAGBERRCORR", jetBtagParam_PTRELSSVM_BTAGBERRCORR, &b_jetBtagParam_PTRELSSVM_BTAGBERRCORR);
923 fChain->SetBranchAddress("jetBtagParam_SYSTEM8SSVM_BTAGBEFF", jetBtagParam_SYSTEM8SSVM_BTAGBEFF, &b_jetBtagParam_SYSTEM8SSVM_BTAGBEFF);
924 fChain->SetBranchAddress("jetBtagParam_SYSTEM8SSVM_BTAGBERR", jetBtagParam_SYSTEM8SSVM_BTAGBERR, &b_jetBtagParam_SYSTEM8SSVM_BTAGBERR);
925 fChain->SetBranchAddress("jetBtagParam_PTRELTCHEL_BTAGBEFFCORR", jetBtagParam_PTRELTCHEL_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHEL_BTAGBEFFCORR);
926 fChain->SetBranchAddress("jetBtagParam_PTRELTCHEM_BTAGBEFFCORR", jetBtagParam_PTRELTCHEM_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHEM_BTAGBEFFCORR);
927 fChain->SetBranchAddress("jetBtagParam_PTRELTCHET_BTAGBEFFCORR", jetBtagParam_PTRELTCHET_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHET_BTAGBEFFCORR);
928 fChain->SetBranchAddress("jetBtagParam_PTRELTCHPL_BTAGBEFFCORR", jetBtagParam_PTRELTCHPL_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHPL_BTAGBEFFCORR);
929 fChain->SetBranchAddress("jetBtagParam_PTRELTCHPM_BTAGBEFFCORR", jetBtagParam_PTRELTCHPM_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHPM_BTAGBEFFCORR);
930 fChain->SetBranchAddress("jetBtagParam_PTRELTCHPT_BTAGBEFFCORR", jetBtagParam_PTRELTCHPT_BTAGBEFFCORR, &b_jetBtagParam_PTRELTCHPT_BTAGBEFFCORR);
931 fChain->SetBranchAddress("numGeneralTracks", &numGeneralTracks, &b_numGeneralTracks);
932 fChain->SetBranchAddress("generalTracksPt", generalTracksPt, &b_generalTracksPt);
933 fChain->SetBranchAddress("generalTracksEta", generalTracksEta, &b_generalTracksEta);
934 fChain->SetBranchAddress("generalTracksTheta", generalTracksTheta, &b_generalTracksTheta);
935 fChain->SetBranchAddress("generalTracksBeamSpotCorrectedD0", generalTracksBeamSpotCorrectedD0, &b_generalTracksBeamSpotCorrectedD0);
936 fChain->SetBranchAddress("generalTracksPhi", generalTracksPhi, &b_generalTracksPhi);
937 fChain->SetBranchAddress("generalTracksCharge", generalTracksCharge, &b_generalTracksCharge);
938 fChain->SetBranchAddress("processId", &processId, &b_processId);
939 fChain->SetBranchAddress("processPtHat", &processPtHat, &b_processPtHat);
940 fChain->SetBranchAddress("processMCWeight", &processMCWeight, &b_processMCWeight);
941 fChain->SetBranchAddress("beamSpotX", &beamSpotX, &b_beamSpotX);
942 fChain->SetBranchAddress("beamSpotY", &beamSpotY, &b_beamSpotY);
943 fChain->SetBranchAddress("beamSpotZ", &beamSpotZ, &b_beamSpotZ);
944 fChain->SetBranchAddress("topo_sphericity", &topo_sphericity, &b_topo_sphericity);
945 fChain->SetBranchAddress("topo_aplanarity", &topo_aplanarity, &b_topo_aplanarity);
946 fChain->SetBranchAddress("topo_sphericity_e", &topo_sphericity_e, &b_topo_sphericity_e);
947 fChain->SetBranchAddress("topo_aplanarity_e", &topo_aplanarity_e, &b_topo_aplanarity_e);
948 fChain->SetBranchAddress("topo_ht", &topo_ht, &b_topo_ht);
949 fChain->SetBranchAddress("topo_ht_e", &topo_ht_e, &b_top_ht_e);
950 fChain->SetBranchAddress("topo_sqrts", &topo_sqrts, &b_topo_sqrts);
951 fChain->SetBranchAddress("topo_sqrts_e", &topo_sqrts_e, &b_top_sqrts_e);
952 fChain->SetBranchAddress("topo_oblateness", &topo_oblateness, &b_topo_oblateness);
953 fChain->SetBranchAddress("metEt", &metEt, &b_metEt);
954 fChain->SetBranchAddress("metPhi", &metPhi, &b_metPhi);
955 fChain->SetBranchAddress("metPt", &metPt, &b_metPt);
956 fChain->SetBranchAddress("metPx", &metPx, &b_metPx);
957 fChain->SetBranchAddress("metPy", &metPy, &b_metPy);
958 fChain->SetBranchAddress("genMetEt", &genMetEt, &b_genMetEt);
959 fChain->SetBranchAddress("genMetPhi", &genMetPhi, &b_genMetPhi);
960 fChain->SetBranchAddress("genMetPt", &genMetPt, &b_genMetPt);
961 fChain->SetBranchAddress("genMetPx", &genMetPx, &b_genMetPx);
962 fChain->SetBranchAddress("genMetPy", &genMetPy, &b_genMetPy);
963 fChain->SetBranchAddress("metMaxEtEM", &metMaxEtEM, &b_metMaxEtEM);
964 fChain->SetBranchAddress("metMaxEtHad", &metMaxEtHad, &b_metMaxEtHad);
965 fChain->SetBranchAddress("metEtFracHad", &metEtFracHad, &b_metEtFracHad);
966 fChain->SetBranchAddress("metEtFracEM", &metEtFracEM, &b_metEtFracEM);
967 fChain->SetBranchAddress("metHadEtHB", &metHadEtHB, &b_metHadEtHB);
968 fChain->SetBranchAddress("metHadEtHO", &metHadEtHO, &b_metHadEtHO);
969 fChain->SetBranchAddress("metHadEtHF", &metHadEtHF, &b_metHadEtHF);
970 fChain->SetBranchAddress("metHadEtHE", &metHadEtHE, &b_metHadEtHE);
971 fChain->SetBranchAddress("metEmEtHF", &metEmEtHF, &b_metEmEtHF);
972 fChain->SetBranchAddress("metEmEtEE", &metEmEtEE, &b_metEmEtEE);
973 fChain->SetBranchAddress("metEmEtEB", &metEmEtEB, &b_metEmEtEB);
974 fChain->SetBranchAddress("metSignificance", &metSignificance, &b_metSignificance);
975 fChain->SetBranchAddress("metScalarEt", &metScalarEt, &b_metScalarEt);
976 fChain->SetBranchAddress("metEtUncorrected", &metEtUncorrected, &b_metEtUncorrected);
977 fChain->SetBranchAddress("metPhiUncorrected", &metPhiUncorrected, &b_metPhiUncorrected);
978 fChain->SetBranchAddress("mhtPt", &mhtPt, &b_mhtPt);
979 fChain->SetBranchAddress("mhtPy", &mhtPy, &b_mhtPy);
980 fChain->SetBranchAddress("mhtPx", &mhtPx, &b_mhtPx);
981 fChain->SetBranchAddress("mhtPhi", &mhtPhi, &b_mhtPhi);
982 fChain->SetBranchAddress("mhtSumEt", &mhtSumEt, &b_mhtSumEt);
983 fChain->SetBranchAddress("mhtSignif", &mhtSignif, &b_mhtSignif);
984 fChain->SetBranchAddress("nZCandidates", &nZCandidates, &b_nZCandidates);
985 fChain->SetBranchAddress("ZCandidates", ZCandidates, &b_ZCandidates);
986 fChain->SetBranchAddress("nTriggerBits", &nTriggerBits, &b_nTriggerBits);
987 fChain->SetBranchAddress("TriggerBits", TriggerBits, &b_TriggerBits);
988 fChain->SetBranchAddress("HLT_Ele15_LW_L1R", &HLT_Ele15_LW_L1R, &b_HLT_Ele15_LW_L1R);
989 fChain->SetBranchAddress("flavorhistory", &flavorhistory, &b_flavorhistory);
990 fChain->SetBranchAddress("myProcess", &myProcess, &b_myProcess);
991 fChain->SetBranchAddress("genParEta", genParEta, &b_genParEta);
992 fChain->SetBranchAddress("genParPhi", genParPhi, &b_genParPhi);
993 fChain->SetBranchAddress("genParTheta", genParTheta, &b_genParTheta);
994 fChain->SetBranchAddress("genParE", genParE, &b_genParE);
995 fChain->SetBranchAddress("genParEt", genParEt, &b_genParEt);
996 fChain->SetBranchAddress("genParP", genParP, &b_genParP);
997 fChain->SetBranchAddress("genParPt", genParPt, &b_genParPt);
998 fChain->SetBranchAddress("genParId", genParId, &b_genParId);
999 fChain->SetBranchAddress("genParStat", genParStat, &b_genParStat);
1000 fChain->SetBranchAddress("ndaughters", ndaughters, &b_ndaughters);
1001 fChain->SetBranchAddress("genParCharge", genParCharge, &b_genParCharge);
1002 fChain->SetBranchAddress("genEta", genEta, &b_genEta);
1003 fChain->SetBranchAddress("genPhi", genPhi, &b_genPhi);
1004 fChain->SetBranchAddress("genTheta", genTheta, &b_genTheta);
1005 fChain->SetBranchAddress("genE", genE, &b_genE);
1006 fChain->SetBranchAddress("genEt", genEt, &b_genEt);
1007 fChain->SetBranchAddress("genP", genP, &b_genP);
1008 fChain->SetBranchAddress("genPt", genPt, &b_genPt);
1009 fChain->SetBranchAddress("genId", genId, &b_genId);
1010 fChain->SetBranchAddress("genStat", genStat, &b_genStat);
1011 fChain->SetBranchAddress("genCharge", genCharge, &b_genCharge);
1012 fChain->SetBranchAddress("numTau", &numTau, &b_numTau);
1013 fChain->SetBranchAddress("tauE", tauE, &b_tauE);
1014 fChain->SetBranchAddress("tauPt", tauPt, &b_tauPt);
1015 fChain->SetBranchAddress("tauPhi", tauPhi, &b_tauPhi);
1016 fChain->SetBranchAddress("tauEta", tauEta, &b_tauEta);
1017 fChain->SetBranchAddress("numPhoton", &numPhoton, &b_numPhoton);
1018 fChain->SetBranchAddress("photonE", photonE, &b_photonE);
1019 fChain->SetBranchAddress("photonPt", photonPt, &b_photonPt);
1020 fChain->SetBranchAddress("photonPhi", photonPhi, &b_photonPhi);
1021 fChain->SetBranchAddress("photonEta", photonEta, &b_photonEta);
1022 fChain->SetBranchAddress("eventRun", &eventRun, &b_eventRun);
1023 fChain->SetBranchAddress("eventNum", &eventNum, &b_eventNum);
1024 fChain->SetBranchAddress("eventLumiblock", &eventLumiblock, &b_eventLumiblock);
1025 Notify();
1026 }
1027
1028 Bool_t eventLoop::Notify()
1029 {
1030 // The Notify() function is called when a new file is opened. This
1031 // can be either for a new TTree in a TChain or when when a new TTree
1032 // is started when using PROOF. It is normally not necessary to make changes
1033 // to the generated code, but the routine can be extended by the
1034 // user if needed. The return value is currently not used.
1035
1036 return kTRUE;
1037 }
1038
1039 void eventLoop::Show(Long64_t entry)
1040 {
1041 // Print contents of entry.
1042 // If entry is not specified, print current entry
1043 if (!fChain) return;
1044 fChain->Show(entry);
1045 }
1046
1047 Int_t eventLoop::Cut()
1048 {
1049 // This function may be called from Loop.
1050 // returns 1 if entry is accepted.
1051 // returns -1 otherwise.
1052
1053 if (nGoodJets() < minGoodJets_) return -1;
1054 //number of primary vertices is missing....
1055 //i'm going to remove all jet pt cuts for the moment
1056 // if (jetPt[0] <=100) return -1; //jets are already sorted by Pt
1057
1058 if ( nGoodElectrons() != 0 ) return -1;
1059 if ( nGoodMuons() != 0 ) return -1;
1060
1061 return 1;
1062 }
1063
1064 UInt_t eventLoop::nGoodJets() {
1065 UInt_t ngood=0;
1066 for (int i=0; i< numJet; i++) {
1067 if ( isJetGood(i) ) ngood++;
1068 }
1069
1070 return ngood;
1071 }
1072
1073 Bool_t eventLoop::isJetGood(UInt_t index) {
1074 return ( jetPt[index] > minJetPt_Good_ && fabs(jetEta[index])< maxJetEta_Good_ );
1075 }
1076
1077 UInt_t eventLoop::nGoodElectrons() {
1078
1079 UInt_t ngood = 0;
1080 for ( int i=0; i< numEle; i++) {
1081
1082 if (eleTrackPt[i] < 15 ) continue;
1083 if (fabs(eleEta[i]) > 2.5) continue;
1084
1085 //FIXME...i'm taking this directly from my old code
1086 //but why would it not be fabs() of this?
1087 if ( eleBeamSpotCorrectedTrackD0[i] > 0.2 ) continue;
1088 //&& (fabs(ele->eta)>1.567 || fabs(ele->eta)<1.47) );
1089
1090 //this may not be exactly the same iso as i was using before
1091 if ( eleComRelIso[i] >0.5 ) continue;
1092
1093 //from when i was using dmp's code. how to duplicate?
1094 // if ( ele->IDLoose != 1) continue;
1095
1096 //if we get to here it must be good
1097 ngood++;
1098 }
1099 return ngood;
1100 }
1101
1102 UInt_t eventLoop::nGoodMuons() {
1103 UInt_t ngood=0;
1104 for (int i=0; i<numMuo; i++) {
1105 //it doesn't look like we have the muon ID
1106 if (muoPt[i] < 10) continue;
1107 if ( fabs( muoEta[i]) >2.4) continue;
1108 //probably not the same variable that i was using before
1109 if (muonComRelIso[i] >0.1) continue;
1110
1111 if (muonNDOF[i] == 0) {
1112 std::cout<<"muon ndof is 0!"<<std::endl;
1113 continue;
1114 }
1115 //i am assuming this is chi^2 and not chi^2/dof
1116 if ( muonChi2[i]/muonNDOF[i] > 10) continue;
1117 //FIXME ... again, shouldn't this be fabs()?
1118 if (muonBeamSpotCorrectedD0[i] > 0.2) continue;
1119 if (muonTrackNHits[i] < 11) continue;
1120
1121 ngood++;
1122 }
1123 return ngood;
1124 }
1125
1126
1127 double eventLoop::getDeltaPhi(Double_t phi1, Double_t phi2) {
1128 return acos(cos(phi1-phi2));
1129 }
1130
1131
1132 #endif // #ifdef eventLoop_cxx