ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Jet.hh
Revision: 1.1
Committed: Thu Sep 17 19:39:51 2009 UTC (15 years, 7 months ago) by amagnan
Content type: text/plain
Branch: MAIN
CVS Tags: v00-03-00
Log Message:
add Tree

File Contents

# User Rev Content
1 amagnan 1.1 #ifndef HbbAnalysis_Jet_hh
2     #define HbbAnalysis_Jet_hh
3    
4     #include <vector>
5     #include <string>
6    
7     #include "UserCode/HbbAnalysis/interface/Objects.hh"
8    
9     namespace HbbAnalysis {
10    
11     class Jet {
12    
13     public:
14    
15    
16     /** Constructors */
17    
18     Jet(){
19     //Clear();
20     };
21    
22     ~Jet(){};
23    
24     Jet(const HbbAnalysis::GenVars & aGen,
25     const HbbAnalysis::GenVars & aGenJet,
26     const HbbAnalysis::BaseVars & aReco,
27     const HbbAnalysis::JetVars & aAll,
28     const HbbAnalysis::CaloJetVars & aCalo,
29     const HbbAnalysis::JetBtagVars & aBtag
30     ){
31     Clear();
32     jetType_ = 0;//calo jet
33     genVars(aGen);
34     genJetVars(aGenJet);
35     recoVars(aReco);
36     commonVars(aAll);
37     caloVars(aCalo);
38     btagVars(aBtag);
39     };
40    
41     Jet(const HbbAnalysis::GenVars & aGen,
42     const HbbAnalysis::GenVars & aGenJet,
43     const HbbAnalysis::BaseVars & aReco,
44     const HbbAnalysis::JetVars & aAll,
45     const HbbAnalysis::PFJetVars & aPF,
46     const HbbAnalysis::JetBtagVars & aBtag
47     ){
48     Clear();
49     jetType_ = 1;//PF jet
50     genVars(aGen);
51     genJetVars(aGenJet);
52     recoVars(aReco);
53     commonVars(aAll);
54     pfVars(aPF);
55     btagVars(aBtag);
56     };
57    
58     inline const unsigned short jetType() const {
59     return jetType_;
60     };
61    
62     inline const HbbAnalysis::GenVars & genVars() const {
63     return gen_;
64     };
65    
66     inline const HbbAnalysis::GenVars & genJetVars() const {
67     return genJet_;
68     };
69    
70     inline const HbbAnalysis::BaseVars & recoVars() const {
71     return reco_;
72     };
73    
74     inline const HbbAnalysis::JetVars & commonVars() const {
75     return common_;
76     };
77    
78     inline const HbbAnalysis::CaloJetVars & caloVars() const {
79     return calo_;
80     };
81    
82     inline const HbbAnalysis::PFJetVars & pfVars() const {
83     return pf_;
84     };
85    
86     inline const HbbAnalysis::JetBtagVars & btagVars() const {
87     return btag_;
88     };
89    
90     inline void jetType(const unsigned short aType) {
91     jetType_ = aType;
92     };
93    
94     inline void genVars(const HbbAnalysis::GenVars & aGen) {
95     gen_ = aGen;
96     };
97    
98     inline void genJetVars(const HbbAnalysis::GenVars & aGenJet) {
99     genJet_ = aGenJet;
100     };
101    
102     inline void recoVars(const HbbAnalysis::BaseVars & aReco) {
103     reco_ = aReco;
104     };
105    
106     inline void commonVars(const HbbAnalysis::JetVars & aJet) {
107     common_ = aJet;
108     };
109    
110     inline void caloVars(const HbbAnalysis::CaloJetVars & aCalo) {
111     calo_ = aCalo;
112     };
113    
114     inline void pfVars(const HbbAnalysis::PFJetVars & aPF){
115     pf_ = aPF;
116     };
117    
118     inline void btagVars(const HbbAnalysis::JetBtagVars & aBtag){
119     btag_ = aBtag;
120     };
121    
122     inline void Clear(){
123     gen_.valid = false;
124     gen_.pT = 0;
125     gen_.eta = 0;
126     gen_.phi = 0;
127     gen_.charge = 0;
128     gen_.pdgId = 0;
129     gen_.status = 0;
130     gen_.mass = 0;
131     gen_.vx = 0;
132     gen_.vy = 0;
133     gen_.vz = 0;
134    
135     genJet_.valid = false;
136     genJet_.pT = 0;
137     genJet_.eta = 0;
138     genJet_.phi = 0;
139     genJet_.charge = 0;
140     genJet_.pdgId = 0;
141     genJet_.status = 0;
142     genJet_.mass = 0;
143     genJet_.vx = 0;
144     genJet_.vy = 0;
145     genJet_.vz = 0;
146    
147     reco_.pT = 0;
148     reco_.eta = 0;
149     reco_.phi = 0;
150     reco_.charge = 0;
151     reco_.vx = 0;
152     reco_.vy = 0;
153     reco_.vz = 0;
154    
155     common_.flavour = 0;
156     common_.partonFlavour = 0;
157     common_.nAssociatedTracks = 0;
158     common_.rawpT = 0;
159     //common_.rawEta = 0;
160     //common_.rawPhi = 0;
161    
162     calo_.maxEInEmTowers = 0;
163     calo_.maxEInHadTowers = 0;
164     calo_.energyFractionHadronic = 0;
165     calo_.emEnergyFraction = 0;
166     calo_.hadEnergyInHB = 0;
167     calo_.hadEnergyInHO = 0;
168     calo_.hadEnergyInHE = 0;
169     calo_.hadEnergyInHF = 0;
170     calo_.emEnergyInEB = 0;
171     calo_.emEnergyInEE = 0;
172     calo_.emEnergyInHF = 0;
173     calo_.towersArea = 0;
174     calo_.n90 = 0;
175     calo_.n60 = 0;
176    
177     pf_.chargedHadronEnergy = 0;
178     pf_.chargedHadronEnergyFraction = 0;
179     pf_.neutralHadronEnergy = 0;
180     pf_.neutralHadronEnergyFraction = 0;
181     pf_.chargedEmEnergy = 0;
182     pf_.chargedEmEnergyFraction = 0;
183     pf_.chargedMuEnergy = 0;
184     pf_.chargedMuEnergyFraction = 0;
185     pf_.neutralEmEnergy = 0;
186     pf_.neutralEmEnergyFraction = 0;
187     pf_.chargedMultiplicity = 0;
188     pf_.neutralMultiplicity = 0;
189     pf_.muonMultiplicity = 0;
190    
191     btag_.cSV = 0;
192     btag_.cSVMVA = 0;
193     btag_.iPMVA = 0;
194     btag_.bProba = 0;
195     btag_.probability = 0;
196     btag_.sSV = 0;
197     btag_.softElectron = 0;
198     btag_.softMuon = 0;
199     btag_.softMuonNoIP = 0;
200     btag_.tCHE = 0;
201     btag_.tCHP = 0;
202    
203     };
204    
205     private:
206    
207     unsigned short jetType_;
208     HbbAnalysis::GenVars gen_;
209     HbbAnalysis::GenVars genJet_;
210     HbbAnalysis::BaseVars reco_;
211     HbbAnalysis::JetVars common_;
212     HbbAnalysis::CaloJetVars calo_;
213     HbbAnalysis::PFJetVars pf_;
214     HbbAnalysis::JetBtagVars btag_;
215    
216     };
217    
218     inline bool operator < (const Jet & one, const Jet & two)
219     {
220     return one.recoVars().pT < two.recoVars().pT;
221     }
222    
223    
224     }//namespace
225     #endif