ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbbAnalysis/VHbbDataFormats/interface/VHbbEvent.h
Revision: 1.6
Committed: Mon Jul 25 08:55:40 2011 UTC (13 years, 9 months ago) by tboccali
Content type: text/plain
Branch: MAIN
CVS Tags: AndreaAug10th, HBB_EDMNtupleV1_ProcV2, Jul28th2011, Jul26th2011, Jul25th2011
Changes since 1.5: +9 -9 lines
Log Message:
as asked by andrea fourMomentum->p4

File Contents

# Content
1 #ifndef VHbbEvent__H
2 #define VHbbEvent__H
3
4 #include <TLorentzVector.h>
5 #include <TVector2.h>
6 #include <vector>
7
8 class VHbbEvent{
9 public:
10
11
12 class SimpleJet {
13 public:
14 SimpleJet(): flavour(-99), tche(-99), tchp(-99), jpb(-99), jp(-99),
15 ssvhe(-99), csv(-99), csvmva(-99), ntracks(-99), charge(-99),
16 bestMCid(-99), bestMCmomid(-99){}
17 public:
18 double Pt() {return p4.Pt();}
19 int flavour;
20 float tche,tchp, jpb,jp , ssvhe, csv, csvmva;
21 int ntracks;
22 float charge;
23 TLorentzVector p4;
24 TLorentzVector chargedTracksFourMomentum;
25
26 int bestMCid, bestMCmomid;
27 // new
28 TVector2 tVector;
29 };
30
31
32 class HardJet {
33 public:
34 HardJet(): constituents(-99){}
35 public:
36 int constituents;
37 TLorentzVector p4;
38 std::vector<TLorentzVector> subFourMomentum;
39 std::vector<float> etaSub, phiSub;
40 };
41
42
43 class METInfo {
44 public:
45 METInfo(): sumEt(-99), metSig(-99), eLong(-99){}
46 public:
47 float sumEt, metSig, eLong;
48 TLorentzVector p4;
49 };
50
51 class MuonInfo {
52 public:
53 MuonInfo(): charge(-99),tIso(-99), eIso(-99), hIso(-99),
54 acop(-99), ipDb(-99), ipErrDb(-99), zPVPt(-99),zPVProb(-99), chi2(-99), globChi2(-99),
55 cat(-99), nHits(-99), nPixelHits(-99), globNHits(-99),validMuStations(-99),
56 mcId(-99), mcMomId(-99), mcgMomId(-99){}
57 public:
58 TLorentzVector p4;
59 int charge;
60 float tIso, eIso, hIso, acop, ipDb, ipErrDb, zPVPt,zPVProb, chi2, globChi2;
61 int cat, nHits, nPixelHits, globNHits, validMuStations;
62 TLorentzVector mcFourMomentum;
63 int mcId, mcMomId, mcgMomId;
64 };
65
66 class ElectronInfo {
67 public:
68 ElectronInfo() : scEta(-99), scPhi(-99), charge(-99),
69 tIso(-99), eIso(-99), hIso(-99),
70 acop(-99), id95(-99),id85(-99),id70(-99),id95r(-99),
71 id70r(-99), id85r(-99),mcId(-99), mcMomId(-99), mcgMomId (-99){}
72 public:
73 TLorentzVector p4;
74 float scEta, scPhi;
75 int charge;
76 float tIso, eIso, hIso, acop;
77 float id95,id85,id70,id95r, id70r, id85r;
78 TLorentzVector mcFourMomentum;
79 int mcId, mcMomId, mcgMomId;
80 };
81
82 class TauInfo{
83 public:
84 TauInfo() : charge(-99), tIso(-99), eIso(-99), hIso(-99), acop(-99),
85 idbyIso(-99),idbyTrackIso(-99),idbyTaNCfrOnePercent(-99),
86 idbyTaNCfrHalfPercent(-99), idbyTaNCfrQuarterPercent(-99),
87 idbyTaNCfrTenthPercent(-99), idbyTaNC(-99), mcId(-99), mcMomId(-99), mcgMomId(-99) {}
88 public:
89 TLorentzVector p4;
90 int charge;
91 float tIso, eIso, hIso, acop;
92 float idbyIso,idbyTrackIso,idbyTaNCfrOnePercent,idbyTaNCfrHalfPercent, idbyTaNCfrQuarterPercent, idbyTaNCfrTenthPercent, idbyTaNC;
93 TLorentzVector mcFourMomentum;
94 int mcId, mcMomId, mcgMomId;
95 };
96
97
98 class DiMuonInfo {
99 public:
100 TLorentzVector p4;
101 MuonInfo daughter1, daughter2;
102 };
103
104
105 class DiElectronInfo {
106 public:
107 TLorentzVector p4;
108 ElectronInfo daughter1, daughter2;
109 };
110
111
112
113 public:
114 std::vector<SimpleJet> simpleJets;
115 std::vector<SimpleJet> simpleJets2; //???
116 std::vector<SimpleJet> subJets; //???
117 std::vector<HardJet> hardJets;
118
119 METInfo calomet;
120 METInfo tcmet;
121 METInfo pfmet;
122
123 std::vector<MuonInfo> muInfo;
124 std::vector<ElectronInfo> eleInfo;
125 std::vector<TauInfo> tauInfo;
126
127 std::vector<DiMuonInfo> diMuonInfo;
128 std::vector<DiElectronInfo> diElectronInfo;
129
130 // HiggsCandidate dijetHiggs;
131 // HiggsCandidate fatjetHiggs;
132
133 // to be decided.. one single or many V?
134 // VCandidate vcand;
135 // WCandidate wele;
136 // WCandidate wmu;
137 //WCandidate wtau;
138 // ZCandidate zmu;
139 // ZCandidate zele;
140 //ZInvCandidate znunu;
141
142 //
143 // really needed????
144 //
145
146 };
147 #endif