ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/CITCommon/CommonData/interface/ZeeEventTree.h
Revision: 1.7
Committed: Thu Oct 4 14:00:59 2012 UTC (12 years, 7 months ago) by sixie
Content type: text/plain
Branch: MAIN
Changes since 1.6: +24 -32 lines
Log Message:
update regression energies

File Contents

# User Rev Content
1 sixie 1.1 #ifndef ZeeEventTree_H
2     #define ZeeEventTree_H
3    
4     #include "TFile.h"
5     #include "TTree.h"
6     #include "TError.h"
7     #include <cmath>
8     #include "assert.h"
9    
10 sixie 1.2 namespace citana
11     {
12     class ZeeEventTree {
13    
14     public:
15    
16     enum ZeeEventTreeType { kCITZeeEvent = 0,
17     kHggFutyanZeeDataEvent,
18     kHggFutyanZeeMCEvent,
19     };
20    
21     enum DiElecTrigBits { kEle17SC8Trigger = 1UL<<0,
22     kEle20SC4Trigger = 1UL<<1,
23     kEle32SC17Trigger = 1UL<<2,
24     kEle17Ele8Loose = 1UL<<3,
25     kEle17Ele8Tight = 1UL<<4,
26     kSingleEleTight = 1UL<<5
27     };
28    
29     /// variables
30     UInt_t fTreeType;
31     Float_t fWeight;
32     UInt_t fRunNumber;
33     UInt_t fLumiSectionNumber;
34     UInt_t fEventNumber;
35 sixie 1.6 UInt_t fNPU;
36 sixie 1.2 Float_t fRho;
37     UInt_t fNVertices;
38     UInt_t fEventTriggerBits;
39    
40     Float_t fMass;
41 sixie 1.3 Float_t fMassRegression;
42 sixie 1.2
43    
44     Float_t fEle1Pt;
45     Float_t fEle1Eta;
46     Float_t fEle1Phi;
47     Float_t fEle1SCEt;
48     Float_t fEle1SCEta;
49     Float_t fEle1SCPhi;
50     Float_t fEle1GenPt;
51     Float_t fEle1EnergyCorrAndSmeared;
52     Float_t fEle1Energy;
53     Float_t fEle1EnergyRegression;
54 sixie 1.7 Float_t fEle1EnergyRegressionV0;
55     Float_t fEle1EnergyRegressionV1;
56     Float_t fEle1EnergyRegressionV2;
57 sixie 1.2 Int_t fEle1Charge;
58     Float_t fEle1HZZICHEP2012IDMVA;
59     Float_t fEle1PFIso04;
60     Float_t fEle1R9;
61     Bool_t fEle1PassLooseSimpleCuts;
62     Bool_t fEle1PassMediumSimpleCuts;
63     Bool_t fEle1PassTightSimpleCuts;
64     Bool_t fEle1PassHZZICHEP2012;
65    
66    
67     Float_t fEle2Pt;
68     Float_t fEle2Eta;
69     Float_t fEle2Phi;
70     Float_t fEle2SCEt;
71     Float_t fEle2SCEta;
72     Float_t fEle2SCPhi;
73     Float_t fEle2GenPt;
74     Float_t fEle2EnergyCorrAndSmeared;
75     Float_t fEle2Energy;
76     Float_t fEle2EnergyRegression;
77 sixie 1.7 Float_t fEle2EnergyRegressionV0;
78     Float_t fEle2EnergyRegressionV1;
79     Float_t fEle2EnergyRegressionV2;
80 sixie 1.2 Int_t fEle2Charge;
81     Float_t fEle2HZZICHEP2012IDMVA;
82     Float_t fEle2PFIso04;
83     Float_t fEle2R9;
84     Bool_t fEle2PassLooseSimpleCuts;
85     Bool_t fEle2PassMediumSimpleCuts;
86     Bool_t fEle2PassTightSimpleCuts;
87     Bool_t fEle2PassHZZICHEP2012;
88    
89    
90     Int_t fRunNumber_int;
91     Int_t fLumiSectionNumber_int;
92     Int_t fEventNumber_int;
93     Int_t fNVertices_int;
94     Double_t dEle1Pt;
95     Double_t dEle1Eta;
96     Double_t dEle1Phi;
97     Double_t dEle1EnergyCorrAndSmeared;
98     Double_t dEle2Pt;
99     Double_t dEle2Eta;
100     Double_t dEle2Phi;
101     Double_t dEle2EnergyCorrAndSmeared;
102    
103    
104    
105     public:
106     /// this is the main element
107     TTree *tree_;
108     TFile *f_;
109 sixie 1.1
110 sixie 1.2 /// hold the names of variables to facilitate things (filled during Init)
111     std::vector<std::string> variables_;
112    
113     /// default constructor
114     ZeeEventTree() {
115     fTreeType = kCITZeeEvent;
116     };
117     /// default destructor
118     ~ZeeEventTree(){
119     if (f_) f_->Close();
120     };
121    
122     /// initialize varibles and fill list of available variables
123     void InitVariables() {
124     fWeight = 0.0;
125     fRunNumber = 0.0;
126     fLumiSectionNumber = 0.0;
127     fEventNumber = 0.0;
128 sixie 1.6 fNPU = 0.0;
129 sixie 1.2 fRho = 0.0;
130     fNVertices = 0.0;
131     fEventTriggerBits = 0;
132     fMass = 0.0;
133     fEle1Pt = 0.0;
134     fEle1Eta = 0.0;
135     fEle1Phi = 0.0;
136     fEle1SCEt = 0.0;
137     fEle1SCEta = 0.0;
138     fEle1SCPhi = 0.0;
139     fEle1GenPt = 0.0;
140     fEle1EnergyCorrAndSmeared = 0.0;
141     fEle1Energy = 0.0;
142     fEle1EnergyRegression = 0.0;
143 sixie 1.7 fEle1EnergyRegressionV0 = 0.0;
144     fEle1EnergyRegressionV1 = 0.0;
145     fEle1EnergyRegressionV2 = 0.0;
146 sixie 1.2 fEle1Charge = 0;
147     fEle1HZZICHEP2012IDMVA = 0.0;
148     fEle1PFIso04 = 0.0;
149     fEle1R9 = 0.0;
150     fEle1PassLooseSimpleCuts = kFALSE;
151     fEle1PassMediumSimpleCuts = kFALSE;
152     fEle1PassTightSimpleCuts = kFALSE;
153     fEle1PassHZZICHEP2012 = kFALSE;
154     fEle2Pt = 0.0;
155     fEle2Eta = 0.0;
156     fEle2Phi = 0.0;
157     fEle2SCEt = 0.0;
158     fEle2SCEta = 0.0;
159     fEle2SCPhi = 0.0;
160     fEle2GenPt = 0.0;
161     fEle2EnergyCorrAndSmeared = 0.0;
162     fEle2Energy = 0.0;
163     fEle2EnergyRegression = 0.0;
164 sixie 1.7 fEle2EnergyRegressionV0 = 0.0;
165     fEle2EnergyRegressionV1 = 0.0;
166     fEle2EnergyRegressionV2 = 0.0;
167 sixie 1.2 fEle2Charge = 0;
168     fEle2HZZICHEP2012IDMVA = 0.0;
169     fEle2PFIso04 = 0.0;
170     fEle2R9 = 0.0;
171     fEle2PassLooseSimpleCuts = kFALSE;
172     fEle2PassMediumSimpleCuts = kFALSE;
173     fEle2PassTightSimpleCuts = kFALSE;
174     fEle2PassHZZICHEP2012 = kFALSE;
175    
176     fRunNumber_int = 0;
177     fLumiSectionNumber_int = 0;
178     fEventNumber_int = 0;
179     fNVertices_int = 0;
180     dEle1Pt = 0;
181     dEle1Eta = 0;
182     dEle1Phi = 0;
183     dEle1EnergyCorrAndSmeared = 0;
184     dEle2Pt = 0;
185     dEle2Eta = 0;
186     dEle2Phi = 0;
187     dEle2EnergyCorrAndSmeared = 0;
188 sixie 1.1
189 sixie 1.2 }
190 sixie 1.1
191 sixie 1.2 /// load a ZeeEventTree
192     void LoadTree(const char* file, UInt_t Type = kCITZeeEvent){
193     fTreeType = Type;
194     f_ = TFile::Open(file);
195     assert(f_);
196     if (Type == kCITZeeEvent) {
197     tree_ = dynamic_cast<TTree*>(f_->Get("ZeeEvent"));
198     } else if (Type == kHggFutyanZeeDataEvent) {
199     tree_ = dynamic_cast<TTree*>(f_->Get("Data"));
200     } else if (Type == kHggFutyanZeeMCEvent) {
201     tree_ = dynamic_cast<TTree*>(f_->Get("DYJetsToLL"));
202     } else {
203     cout << "Warning: Type " << Type << " is not supported \n";
204     }
205 sixie 1.5 InitTree(Type);
206 sixie 1.2 assert(tree_);
207     }
208 sixie 1.1
209 sixie 1.2 /// create a ZeeEventTree
210     void CreateTree(){
211     tree_ = new TTree("ZeeEvent","ZeeEvent");
212     f_ = 0;
213    
214     //book the branches
215     tree_->Branch("weight",&fWeight,"weight/F");
216     tree_->Branch("run",&fRunNumber,"run/i");
217     tree_->Branch("lumi",&fLumiSectionNumber,"lumi/i");
218     tree_->Branch("event",&fEventNumber,"event/i");
219 sixie 1.6 tree_->Branch("npu",&fNPU,"npu/i");
220 sixie 1.2 tree_->Branch("rho",&fRho,"rho/F");
221     tree_->Branch("vertices",&fNVertices,"vertices/i");
222     tree_->Branch("triggerbits",&fEventTriggerBits,"triggerbits/i");
223     tree_->Branch("mass",&fMass,"mass/F");
224    
225     tree_->Branch("Ele1Pt",&fEle1Pt,"Ele1Pt/F");
226     tree_->Branch("Ele1Eta",&fEle1Eta,"Ele1Eta/F");
227     tree_->Branch("Ele1Phi",&fEle1Phi,"Ele1Phi/F");
228     tree_->Branch("Ele1SCEt",&fEle1SCEt,"Ele1SCEt/F");
229     tree_->Branch("Ele1SCEta",&fEle1SCEta,"Ele1SCEta/F");
230     tree_->Branch("Ele1SCPhi",&fEle1SCPhi,"Ele1SCPhi/F");
231     tree_->Branch("Ele1GenPt",&fEle1GenPt,"Ele1GenPt/F");
232     tree_->Branch("Ele1EnergyCorrAndSmeared",&fEle1EnergyCorrAndSmeared,"Ele1EnergyCorrAndSmeared/F");
233     tree_->Branch("Ele1Energy",&fEle1Energy,"Ele1Energy/F");
234     tree_->Branch("Ele1EnergyRegression",&fEle1EnergyRegression,"Ele1EnergyRegression/F");
235 sixie 1.7 tree_->Branch("Ele1EnergyRegressionV0",&fEle1EnergyRegressionV0,"Ele1EnergyRegressionV0/F");
236     tree_->Branch("Ele1EnergyRegressionV1",&fEle1EnergyRegressionV1,"Ele1EnergyRegressionV1/F");
237     tree_->Branch("Ele1EnergyRegressionV2",&fEle1EnergyRegressionV2,"Ele1EnergyRegressionV2/F");
238 sixie 1.2 tree_->Branch("Ele1Charge",&fEle1Charge,"Ele1Charge/I");
239     tree_->Branch("Ele1HZZICHEP2012IDMVA",&fEle1HZZICHEP2012IDMVA,"Ele1HZZICHEP2012IDMVA/F");
240     tree_->Branch("Ele1PFIso04",&fEle1PFIso04,"Ele1PFIso04/F");
241     tree_->Branch("Ele1R9",&fEle1R9,"Ele1R9/F");
242     tree_->Branch("Ele1PassLooseSimpleCuts",&fEle1PassLooseSimpleCuts,"Ele1PassLooseSimpleCuts/O");
243     tree_->Branch("Ele1PassMediumSimpleCuts",&fEle1PassMediumSimpleCuts,"Ele1PassMediumSimpleCuts/O");
244     tree_->Branch("Ele1PassTightSimpleCuts",&fEle1PassTightSimpleCuts,"Ele1PassTightSimpleCuts/O");
245     tree_->Branch("Ele1PassHZZICHEP2012",&fEle1PassHZZICHEP2012,"Ele1PassHZZICHEP2012/O");
246     tree_->Branch("Ele2Pt",&fEle2Pt,"Ele2Pt/F");
247     tree_->Branch("Ele2Eta",&fEle2Eta,"Ele2Eta/F");
248     tree_->Branch("Ele2Phi",&fEle2Phi,"Ele2Phi/F");
249     tree_->Branch("Ele2SCEt",&fEle2SCEt,"Ele2SCEt/F");
250     tree_->Branch("Ele2SCEta",&fEle2SCEta,"Ele2SCEta/F");
251     tree_->Branch("Ele2SCPhi",&fEle2SCPhi,"Ele2SCPhi/F");
252     tree_->Branch("Ele2GenPt",&fEle2GenPt,"Ele2GenPt/F");
253     tree_->Branch("Ele2EnergyCorrAndSmeared",&fEle2EnergyCorrAndSmeared,"Ele2EnergyCorrAndSmeared/F");
254 sixie 1.4 tree_->Branch("Ele2Energy",&fEle2Energy,"Ele2Energy/F");
255 sixie 1.2 tree_->Branch("Ele2EnergyRegression",&fEle2EnergyRegression,"Ele2EnergyRegression/F");
256 sixie 1.7 tree_->Branch("Ele2EnergyRegressionV0",&fEle2EnergyRegressionV0,"Ele2EnergyRegressionV0/F");
257     tree_->Branch("Ele2EnergyRegressionV1",&fEle2EnergyRegressionV1,"Ele2EnergyRegressionV1/F");
258     tree_->Branch("Ele2EnergyRegressionV2",&fEle2EnergyRegressionV2,"Ele2EnergyRegressionV2/F");
259 sixie 1.4 tree_->Branch("Ele2Charge",&fEle2Charge,"Ele2Charge/I");
260 sixie 1.2 tree_->Branch("Ele2HZZICHEP2012IDMVA",&fEle2HZZICHEP2012IDMVA,"Ele2HZZICHEP2012IDMVA/F");
261     tree_->Branch("Ele2PFIso04",&fEle2PFIso04,"Ele2PFIso04/F");
262     tree_->Branch("Ele2R9",&fEle2R9,"Ele2R9/F");
263     tree_->Branch("Ele2PassLooseSimpleCuts",&fEle2PassLooseSimpleCuts,"Ele2PassLooseSimpleCuts/O");
264     tree_->Branch("Ele2PassMediumSimpleCuts",&fEle2PassMediumSimpleCuts,"Ele2PassMediumSimpleCuts/O");
265     tree_->Branch("Ele2PassTightSimpleCuts",&fEle2PassTightSimpleCuts,"Ele2PassTightSimpleCuts/O");
266     tree_->Branch("Ele2PassHZZICHEP2012",&fEle2PassHZZICHEP2012,"Ele2PassHZZICHEP2012/O");
267    
268     }
269    
270     // initialze a ZeeEventTree
271     void InitTree(UInt_t Type = kCITZeeEvent){
272     assert(tree_);
273     // don't forget to set pointers to zero before you set address
274     // or you will fully appreciate that "ROOT sucks" :)
275     InitVariables();
276     //Set branch address
277     Int_t currentState = gErrorIgnoreLevel;
278    
279     if (Type == kCITZeeEvent) {
280 sixie 1.5 cout << "CITZeeEvent\n";
281 sixie 1.2 tree_->SetBranchAddress("weight",&fWeight);
282     tree_->SetBranchAddress("run",&fRunNumber);
283     tree_->SetBranchAddress("lumi",&fLumiSectionNumber);
284     tree_->SetBranchAddress("event",&fEventNumber);
285 sixie 1.6 tree_->SetBranchAddress("npu",&fNPU);
286 sixie 1.2 tree_->SetBranchAddress("rho",&fRho);
287     tree_->SetBranchAddress("vertices",&fNVertices);
288     tree_->SetBranchAddress("triggerbits",&fEventTriggerBits);
289     tree_->SetBranchAddress("mass",&fMass);
290     tree_->SetBranchAddress("Ele1Pt",&fEle1Pt);
291     tree_->SetBranchAddress("Ele1Eta",&fEle1Eta);
292     tree_->SetBranchAddress("Ele1Phi",&fEle1Phi);
293     tree_->SetBranchAddress("Ele1SCEt",&fEle1SCEt);
294     tree_->SetBranchAddress("Ele1SCEta",&fEle1SCEta);
295     tree_->SetBranchAddress("Ele1SCPhi",&fEle1SCPhi);
296     tree_->SetBranchAddress("Ele1GenPt",&fEle1GenPt);
297     tree_->SetBranchAddress("Ele1EnergyCorrAndSmeared",&fEle1EnergyCorrAndSmeared);
298     tree_->SetBranchAddress("Ele1Energy",&fEle1Energy);
299     tree_->SetBranchAddress("Ele1EnergyRegression",&fEle1EnergyRegression);
300 sixie 1.7 tree_->SetBranchAddress("Ele1EnergyRegressionV0",&fEle1EnergyRegressionV0);
301     tree_->SetBranchAddress("Ele1EnergyRegressionV1",&fEle1EnergyRegressionV1);
302     tree_->SetBranchAddress("Ele1EnergyRegressionV2",&fEle1EnergyRegressionV2);
303 sixie 1.2 tree_->SetBranchAddress("Ele1Charge",&fEle1Charge);
304     tree_->SetBranchAddress("Ele1HZZICHEP2012IDMVA",&fEle1HZZICHEP2012IDMVA);
305     tree_->SetBranchAddress("Ele1PFIso04",&fEle1PFIso04);
306     tree_->SetBranchAddress("Ele1R9",&fEle1R9);
307     tree_->SetBranchAddress("Ele1PassLooseSimpleCuts",&fEle1PassLooseSimpleCuts);
308     tree_->SetBranchAddress("Ele1PassMediumSimpleCuts",&fEle1PassMediumSimpleCuts);
309     tree_->SetBranchAddress("Ele1PassTightSimpleCuts",&fEle1PassTightSimpleCuts);
310     tree_->SetBranchAddress("Ele1PassHZZICHEP2012",&fEle1PassHZZICHEP2012);
311     tree_->SetBranchAddress("Ele2Pt",&fEle2Pt);
312     tree_->SetBranchAddress("Ele2Eta",&fEle2Eta);
313     tree_->SetBranchAddress("Ele2Phi",&fEle2Phi);
314     tree_->SetBranchAddress("Ele2SCEt",&fEle2SCEt);
315     tree_->SetBranchAddress("Ele2SCEta",&fEle2SCEta);
316     tree_->SetBranchAddress("Ele2SCPhi",&fEle2SCPhi);
317     tree_->SetBranchAddress("Ele2GenPt",&fEle2GenPt);
318     tree_->SetBranchAddress("Ele2EnergyCorrAndSmeared",&fEle2EnergyCorrAndSmeared);
319     tree_->SetBranchAddress("Ele2Energy",&fEle2Energy);
320     tree_->SetBranchAddress("Ele2EnergyRegression",&fEle2EnergyRegression);
321 sixie 1.7 tree_->SetBranchAddress("Ele2EnergyRegressionV0",&fEle2EnergyRegressionV0);
322     tree_->SetBranchAddress("Ele2EnergyRegressionV1",&fEle2EnergyRegressionV1);
323     tree_->SetBranchAddress("Ele2EnergyRegressionV2",&fEle2EnergyRegressionV2);
324 sixie 1.2 tree_->SetBranchAddress("Ele2Charge",&fEle2Charge);
325     tree_->SetBranchAddress("Ele2HZZICHEP2012IDMVA",&fEle2HZZICHEP2012IDMVA);
326     tree_->SetBranchAddress("Ele2PFIso04",&fEle2PFIso04);
327     tree_->SetBranchAddress("Ele2R9",&fEle2R9);
328     tree_->SetBranchAddress("Ele2PassLooseSimpleCuts",&fEle2PassLooseSimpleCuts);
329     tree_->SetBranchAddress("Ele2PassMediumSimpleCuts",&fEle2PassMediumSimpleCuts);
330     tree_->SetBranchAddress("Ele2PassTightSimpleCuts",&fEle2PassTightSimpleCuts);
331     tree_->SetBranchAddress("Ele2PassHZZICHEP2012",&fEle2PassHZZICHEP2012);
332     } else if (Type == kHggFutyanZeeDataEvent || Type == kHggFutyanZeeMCEvent ) {
333 sixie 1.5 cout << "other type\n";
334 sixie 1.2 //************************************************************
335     //The commented out branches don't exist in this version
336     //************************************************************
337    
338     tree_->SetBranchAddress("weight",&fWeight);
339     tree_->SetBranchAddress("run",&fRunNumber_int);
340     tree_->SetBranchAddress("lumi",&fLumiSectionNumber_int);
341     tree_->SetBranchAddress("event",&fEventNumber_int);
342     //tree_->SetBranchAddress("rho",&fRho);
343     tree_->SetBranchAddress("nvtx",&fNVertices_int);
344     //tree_->SetBranchAddress("triggerbits",&fEventTriggerBits);
345     tree_->SetBranchAddress("dipho_mass",&fMass);
346     tree_->SetBranchAddress("pho1_pt",&dEle1Pt);
347     tree_->SetBranchAddress("pho1_eta",&dEle1Eta);
348     tree_->SetBranchAddress("pho1_phi",&dEle1Phi);
349     //tree_->SetBranchAddress("Ele1SCEt",&fEle1SCEt);
350     tree_->SetBranchAddress("pho1_sceta",&fEle1SCEta);
351     tree_->SetBranchAddress("pho1_scphi",&fEle1SCPhi);
352     //tree_->SetBranchAddress("Ele1GenPt",&fEle1GenPt);
353     tree_->SetBranchAddress("pho1_energy",&dEle1EnergyCorrAndSmeared);
354     tree_->SetBranchAddress("pho1_energy_noregr",&fEle1Energy);
355     tree_->SetBranchAddress("pho1_energy_regr",&fEle1EnergyRegression);
356     //tree_->SetBranchAddress("Ele1Charge",&fEle1Charge);
357     //tree_->SetBranchAddress("Ele1HZZICHEP2012IDMVA",&fEle1HZZICHEP2012IDMVA);
358     //tree_->SetBranchAddress("Ele1PFIso04",&fEle1PFIso04);
359     tree_->SetBranchAddress("pho1_r9",&fEle1R9);
360     //tree_->SetBranchAddress("Ele1PassLooseSimpleCuts",&fEle1PassLooseSimpleCuts);
361     //tree_->SetBranchAddress("Ele1PassMediumSimpleCuts",&fEle1PassMediumSimpleCuts);
362     //tree_->SetBranchAddress("Ele1PassTightSimpleCuts",&fEle1PassTightSimpleCuts);
363     //tree_->SetBranchAddress("Ele1PassHZZICHEP2012",&fEle1PassHZZICHEP2012);
364    
365     tree_->SetBranchAddress("pho2_pt",&dEle2Pt);
366     tree_->SetBranchAddress("pho2_eta",&dEle2Eta);
367     tree_->SetBranchAddress("pho2_phi",&dEle2Phi);
368     //tree_->SetBranchAddress("Ele2SCEt",&fEle2SCEt);
369     tree_->SetBranchAddress("pho2_sceta",&fEle2SCEta);
370     tree_->SetBranchAddress("pho2_scphi",&fEle2SCPhi);
371     //tree_->SetBranchAddress("Ele2GenPt",&fEle2GenPt);
372     tree_->SetBranchAddress("pho2_energy",&dEle2EnergyCorrAndSmeared);
373     tree_->SetBranchAddress("pho2_energy_noregr",&fEle2Energy);
374     tree_->SetBranchAddress("pho2_energy_regr",&fEle2EnergyRegression);
375     //tree_->SetBranchAddress("Ele2Charge",&fEle2Charge);
376     //tree_->SetBranchAddress("Ele2HZZICHEP2012IDMVA",&fEle2HZZICHEP2012IDMVA);
377     //tree_->SetBranchAddress("Ele2PFIso04",&fEle2PFIso04);
378     tree_->SetBranchAddress("pho2_r9",&fEle2R9);
379     //tree_->SetBranchAddress("Ele2PassLooseSimpleCuts",&fEle2PassLooseSimpleCuts);
380     //tree_->SetBranchAddress("Ele2PassMediumSimpleCuts",&fEle2PassMediumSimpleCuts);
381     //tree_->SetBranchAddress("Ele2PassTightSimpleCuts",&fEle2PassTightSimpleCuts);
382     //tree_->SetBranchAddress("Ele2PassHZZICHEP2012",&fEle2PassHZZICHEP2012);
383     } else {
384     cout << "Warning: Type " << Type << " is not supported \n";
385     }
386    
387     gErrorIgnoreLevel = currentState;
388     }
389    
390     Float_t Ele1Pt() {
391     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle1Pt;
392     else return fEle1Pt;
393     }
394     Float_t Ele1Eta() {
395     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle1Eta;
396     else return fEle1Eta;
397     }
398     Float_t Ele1Phi() {
399     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle1Phi;
400     else return fEle1Phi;
401     }
402     Float_t Ele1EnergyCorrAndSmeared() {
403     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle1EnergyCorrAndSmeared;
404     else return fEle1EnergyCorrAndSmeared;
405     }
406     Float_t Ele2Pt() {
407     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle2Pt;
408     else return fEle2Pt;
409     }
410     Float_t Ele2Eta() {
411     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle2Eta;
412     else return fEle2Eta;
413     }
414     Float_t Ele2Phi() {
415     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle2Phi;
416     else return fEle2Phi;
417     }
418     Float_t Ele2EnergyCorrAndSmeared() {
419     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return dEle2EnergyCorrAndSmeared;
420     else return fEle2EnergyCorrAndSmeared;
421     }
422     UInt_t RunNumber() {
423     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return fRunNumber_int;
424     else return fRunNumber;
425     }
426     UInt_t LumiSectionNumber() {
427     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return fLumiSectionNumber_int;
428     else return fLumiSectionNumber;
429     }
430     UInt_t EventNumber() {
431     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return fEventNumber_int;
432     else return fEventNumber;
433     }
434     UInt_t NVertices() {
435     if (fTreeType == kHggFutyanZeeDataEvent || fTreeType == kHggFutyanZeeMCEvent) return fNVertices_int;
436     else return fNVertices;
437     }
438 sixie 1.1
439    
440 sixie 1.2 };
441     }
442 sixie 1.1
443    
444     #endif