ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/interface/Objects.h
Revision: 1.1.1.1 (vendor branch)
Committed: Mon Apr 2 15:18:11 2012 UTC (13 years, 1 month ago) by peiffer
Content type: text/plain
Branch: INITIAL
CVS Tags: start
Changes since 1.1: +0 -0 lines
Log Message:
new

File Contents

# User Rev Content
1 peiffer 1.1 #ifndef Objects_H
2     #define Objects_H
3    
4     #include <vector>
5     #include "Math/LorentzVector.h"
6     #include "Math/PtEtaPhiE4D.h"
7     #include "TObject.h"
8    
9     typedef ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiE4D< Double32_t > > LorentzVector;
10    
11     class Particle{
12     public:
13     Particle(){
14     charge=0;
15     pt=0;
16     eta=0;
17     phi=0;
18     energy=0;
19     };
20    
21     ~Particle(){
22     };
23    
24     LorentzVector v4(){
25     LorentzVector v4;
26     v4.SetPt(pt);
27     v4.SetEta(eta);
28     v4.SetPhi(phi);
29     v4.SetE(energy);
30     return v4;
31     };
32    
33     float charge;
34     float pt;
35     float eta;
36     float phi;
37     float energy;
38    
39     };
40    
41     class Jet : public Particle{
42    
43     public:
44    
45     Jet(){
46     nTracks=0;
47     jetArea=0;
48     pileup=0;
49     numberOfDaughters=0;
50     neutralEmEnergyFraction=0;
51     neutralHadronEnergyFraction=0;
52     chargedEmEnergyFraction=0;
53     chargedHadronEnergyFraction=0;
54     muonEnergyFraction=0;
55     photonEnergyFraction=0;
56     chargedMultiplicity=0;
57     neutralMultiplicity=0;
58     muonMultiplicity=0;
59     electronMultiplicity=0;
60     photonMultiplicity=0;
61     btag_simpleSecondaryVertexHighEff=0;
62     btag_simpleSecondaryVertexHighPur=0;
63     btag_combinedSecondaryVertex=0;
64     btag_combinedSecondaryVertexMVA=0;
65     btag_jetBProbability=0;
66     btag_jetProbability=0;
67     };
68    
69     ~Jet(){
70     };
71    
72     int nTracks;
73     float jetArea;
74     float pileup;
75     int numberOfDaughters;
76     float neutralEmEnergyFraction;
77     float neutralHadronEnergyFraction;
78     float chargedEmEnergyFraction;
79     float chargedHadronEnergyFraction;
80     float muonEnergyFraction;
81     float photonEnergyFraction;
82     int chargedMultiplicity;
83     int neutralMultiplicity;
84     int muonMultiplicity;
85     int electronMultiplicity;
86     int photonMultiplicity;
87     float btag_simpleSecondaryVertexHighEff;
88     float btag_simpleSecondaryVertexHighPur;
89     float btag_combinedSecondaryVertex;
90     float btag_combinedSecondaryVertexMVA;
91     float btag_jetBProbability;
92     float btag_jetProbability;
93     };
94    
95    
96     class Electron : public Particle{
97    
98     public:
99     Electron(){
100     vertex_x=0;
101     vertex_y=0;
102     vertex_z=0;
103     supercluster_eta=0;
104     supercluster_phi=0;
105     dB=0;
106     // particleIso=0;
107     neutralHadronIso=0;
108     chargedHadronIso=0;
109     trackIso=0;
110     puChargedHadronIso=0;
111     };
112    
113     ~Electron(){
114     };
115    
116     float vertex_x;
117     float vertex_y;
118     float vertex_z;
119     float supercluster_eta;
120     float supercluster_phi;
121     float dB;
122     //float particleIso;
123     float neutralHadronIso;
124     float chargedHadronIso;
125     float trackIso;
126     float puChargedHadronIso;
127    
128     };
129    
130     class Muon : public Particle{
131    
132     public:
133     Muon(){
134     vertex_x=0;
135     vertex_y=0;
136     vertex_z=0;
137     dB=0;
138     // particleIso=0;
139     neutralHadronIso=0;
140     chargedHadronIso=0;
141     trackIso=0;
142     puChargedHadronIso=0;
143     isGlobalMuon=false;
144     isStandAloneMuon=false;
145     isTrackerMuon=false;
146     numberOfMatchedStations=0;
147     globalTrack_chi2=0;
148     globalTrack_ndof=0;
149     globalTrack_d0=0;
150     globalTrack_d0Error=0;
151     globalTrack_numberOfValidHits=0;
152     globalTrack_numberOfLostHits=0;
153     innerTrack_chi2=0;
154     innerTrack_ndof=0;
155     innerTrack_d0=0;
156     innerTrack_d0Error=0;
157     innerTrack_numberOfValidHits=0;
158     innerTrack_numberOfLostHits=0;
159     outerTrack_chi2=0;
160     outerTrack_ndof=0;
161     outerTrack_d0=0;
162     outerTrack_d0Error=0;
163     outerTrack_numberOfValidHits=0;
164     outerTrack_numberOfLostHits=0;
165     };
166    
167     ~Muon(){
168     };
169    
170     float vertex_x;
171     float vertex_y;
172     float vertex_z;
173     float dB;
174     //float particleIso;
175     float neutralHadronIso;
176     float chargedHadronIso;
177     float trackIso;
178     float puChargedHadronIso;
179     bool isGlobalMuon;
180     bool isStandAloneMuon;
181     bool isTrackerMuon;
182     int numberOfMatchedStations;
183     float globalTrack_chi2;
184     float globalTrack_ndof;
185     float globalTrack_d0;
186     float globalTrack_d0Error;
187     unsigned short globalTrack_numberOfValidHits;
188     unsigned short globalTrack_numberOfLostHits;
189     float innerTrack_chi2;
190     float innerTrack_ndof;
191     float innerTrack_d0;
192     float innerTrack_d0Error;
193     unsigned short innerTrack_numberOfValidHits;
194     unsigned short innerTrack_numberOfLostHits;
195     float outerTrack_chi2;
196     float outerTrack_ndof;
197     float outerTrack_d0;
198     float outerTrack_d0Error;
199     unsigned short outerTrack_numberOfValidHits;
200     unsigned short outerTrack_numberOfLostHits;
201     };
202    
203    
204     class Tau : public Particle{
205    
206     public:
207     Tau(){
208    
209     };
210    
211     ~Tau(){
212     };
213    
214     };
215    
216     class Photon : public Particle{
217    
218     public:
219     Photon(){
220    
221     vertex_x=0;
222     vertex_y=0;
223     vertex_z=0;
224     supercluster_eta=0;
225     supercluster_phi=0;
226     /* neutralHadronIso=0; */
227     /* chargedHadronIso=0; */
228     trackIso=0;
229     };
230    
231     ~Photon(){
232     };
233    
234     float vertex_x;
235     float vertex_y;
236     float vertex_z;
237     float supercluster_eta;
238     float supercluster_phi;
239     /* float neutralHadronIso; */
240     /* float chargedHadronIso; */
241     float trackIso;
242    
243     };
244    
245     class MET{
246    
247     public:
248     MET(){
249     pt=0;
250     phi=0;
251     mEtSig=0;
252    
253     };
254    
255     ~MET(){
256     };
257    
258     float pt;
259     float phi;
260     float mEtSig;
261    
262     };
263    
264     class PrimaryVertex{
265    
266     public:
267     PrimaryVertex(){
268     x=0;
269     y=0;
270     z=0;
271     nTracks=0;
272     //isValid=false;
273     chi2=0;
274     ndof=0;
275    
276     };
277    
278     ~PrimaryVertex(){
279     };
280    
281     float x;
282     float y;
283     float z;
284     unsigned int nTracks;
285     //bool isValid;
286     float chi2;
287     float ndof;
288     };
289    
290     class GenInfo{
291    
292     public:
293     GenInfo(){
294     binningValues.clear();
295     weights.clear();
296     alphaQCD=0;
297     alphaQED=0;
298     qScale=0;
299     pdf_id1=0;
300     pdf_id2=0;
301     pdf_x1=0;
302     pdf_x2=0;
303     pdf_xPDF1=0;
304     pdf_xPDF2=0;
305     pdf_scalePDF=0;
306     pileup_NumInteractions_intime=0;
307     pileup_NumInteractions_ootbefore=0;
308     pileup_NumInteractions_ootafter=0;
309     pileup_TrueNumInteractions=0;
310     }
311    
312     ~GenInfo(){
313     };
314     std::vector<double> binningValues;
315     std::vector<double> weights;
316     float alphaQCD;
317     float alphaQED;
318     float qScale;
319     int pdf_id1;
320     int pdf_id2;
321     float pdf_x1;
322     float pdf_x2;
323     float pdf_xPDF1;
324     float pdf_xPDF2;
325     float pdf_scalePDF;
326     int pileup_NumInteractions_intime;
327     int pileup_NumInteractions_ootbefore;
328     int pileup_NumInteractions_ootafter;
329     float pileup_TrueNumInteractions; //poisson mean
330    
331     };
332    
333    
334     class TopJet : public Jet{
335     public:
336     TopJet(){
337     subjets.clear();
338     };
339     ~TopJet(){
340     };
341    
342     std::vector<Particle> subjets;
343    
344     };
345    
346     class GenParticle : public Particle{
347     public:
348     GenParticle(){
349     pdgId=0;
350     status=0;
351     index=0;
352     mother1=0;
353     mother2=0;
354     daughter1=0;
355     daughter2=0;
356     };
357     ~GenParticle(){
358     };
359     int pdgId;
360     int status;
361     int index;
362     int mother1;
363     int mother2;
364     int daughter1;
365     int daughter2;
366     };
367    
368     #endif