28 |
|
const HbbAnalysis::BaseVars & aReco, |
29 |
|
const HbbAnalysis::JetVars & aAll, |
30 |
|
const HbbAnalysis::CaloJetVars & aCalo, |
31 |
< |
const HbbAnalysis::JetBtagVars & aBtag |
32 |
< |
){ |
31 |
> |
const HbbAnalysis::JetBtagVars & aBtag, |
32 |
> |
const HbbAnalysis::JetIDVars & aId, |
33 |
> |
const HbbAnalysis::JetECorVars & aCor |
34 |
> |
){ |
35 |
|
Clear(); |
36 |
|
jetType_ = 0;//calo jet |
37 |
|
genVars(aGen); |
40 |
|
commonVars(aAll); |
41 |
|
caloVars(aCalo); |
42 |
|
btagVars(aBtag); |
43 |
+ |
idVars(aId); |
44 |
+ |
ecorVars(aCor); |
45 |
+ |
}; |
46 |
+ |
|
47 |
+ |
Jet(const HbbAnalysis::GenVars & aGen, |
48 |
+ |
const HbbAnalysis::GenVars & aGenJet, |
49 |
+ |
const HbbAnalysis::BaseVars & aReco, |
50 |
+ |
const HbbAnalysis::JetVars & aAll, |
51 |
+ |
const HbbAnalysis::CaloJetVars & aCalo, |
52 |
+ |
const HbbAnalysis::JPTJetVars & aJpt, |
53 |
+ |
const HbbAnalysis::JPTPFJetVars & aJptPf, |
54 |
+ |
const HbbAnalysis::JetBtagVars & aBtag, |
55 |
+ |
const HbbAnalysis::JetIDVars & aId, |
56 |
+ |
const HbbAnalysis::JetECorVars & aCor |
57 |
+ |
){ |
58 |
+ |
Clear(); |
59 |
+ |
jetType_ = 2;//jpt jet |
60 |
+ |
genVars(aGen); |
61 |
+ |
genJetVars(aGenJet); |
62 |
+ |
recoVars(aReco); |
63 |
+ |
commonVars(aAll); |
64 |
+ |
caloVars(aCalo); |
65 |
+ |
jptVars(aJpt); |
66 |
+ |
jptPfVars(aJptPf); |
67 |
+ |
btagVars(aBtag); |
68 |
+ |
idVars(aId); |
69 |
+ |
ecorVars(aCor); |
70 |
|
}; |
71 |
|
|
72 |
|
Jet(const HbbAnalysis::GenVars & aGen, |
74 |
|
const HbbAnalysis::BaseVars & aReco, |
75 |
|
const HbbAnalysis::JetVars & aAll, |
76 |
|
const HbbAnalysis::PFJetVars & aPF, |
77 |
< |
const HbbAnalysis::JetBtagVars & aBtag |
78 |
< |
){ |
77 |
> |
const HbbAnalysis::JPTPFJetVars & aJptPF, |
78 |
> |
const HbbAnalysis::JetBtagVars & aBtag, |
79 |
> |
const HbbAnalysis::JetECorVars & aCor |
80 |
> |
){ |
81 |
|
Clear(); |
82 |
|
jetType_ = 1;//PF jet |
83 |
|
genVars(aGen); |
84 |
|
genJetVars(aGenJet); |
85 |
|
recoVars(aReco); |
86 |
|
commonVars(aAll); |
87 |
+ |
jptPfVars(aJptPF); |
88 |
|
pfVars(aPF); |
89 |
|
btagVars(aBtag); |
90 |
+ |
ecorVars(aCor); |
91 |
|
}; |
92 |
|
|
93 |
|
inline const unsigned short jetType() const { |
114 |
|
return calo_; |
115 |
|
}; |
116 |
|
|
117 |
+ |
inline const HbbAnalysis::JPTJetVars & jptVars() const { |
118 |
+ |
return jpt_; |
119 |
+ |
}; |
120 |
+ |
|
121 |
+ |
inline const HbbAnalysis::JPTPFJetVars & jptPfVars() const { |
122 |
+ |
return jptPf_; |
123 |
+ |
}; |
124 |
+ |
|
125 |
|
inline const HbbAnalysis::PFJetVars & pfVars() const { |
126 |
|
return pf_; |
127 |
|
}; |
130 |
|
return btag_; |
131 |
|
}; |
132 |
|
|
133 |
+ |
inline const HbbAnalysis::JetIDVars & idVars() const { |
134 |
+ |
return id_; |
135 |
+ |
}; |
136 |
+ |
|
137 |
+ |
inline const HbbAnalysis::JetECorVars & ecorVars() const { |
138 |
+ |
return ecor_; |
139 |
+ |
}; |
140 |
+ |
|
141 |
|
inline void jetType(const unsigned short aType) { |
142 |
|
jetType_ = aType; |
143 |
|
}; |
161 |
|
inline void caloVars(const HbbAnalysis::CaloJetVars & aCalo) { |
162 |
|
calo_ = aCalo; |
163 |
|
}; |
164 |
< |
|
164 |
> |
|
165 |
> |
inline void jptVars(const HbbAnalysis::JPTJetVars & aJPT) { |
166 |
> |
jpt_ = aJPT; |
167 |
> |
}; |
168 |
> |
|
169 |
> |
inline void jptPfVars(const HbbAnalysis::JPTPFJetVars & aJPTPF){ |
170 |
> |
jptPf_ = aJPTPF; |
171 |
> |
}; |
172 |
> |
|
173 |
|
inline void pfVars(const HbbAnalysis::PFJetVars & aPF){ |
174 |
|
pf_ = aPF; |
175 |
|
}; |
178 |
|
btag_ = aBtag; |
179 |
|
}; |
180 |
|
|
181 |
+ |
inline void idVars(const HbbAnalysis::JetIDVars & aId){ |
182 |
+ |
id_ = aId; |
183 |
+ |
}; |
184 |
+ |
|
185 |
+ |
inline void ecorVars(const HbbAnalysis::JetECorVars & aCor){ |
186 |
+ |
ecor_ = aCor; |
187 |
+ |
}; |
188 |
+ |
|
189 |
|
inline void Clear(){ |
190 |
|
gen_.valid = false; |
191 |
|
gen_.E = 0; |
192 |
|
gen_.pT = 0; |
193 |
|
gen_.eta = 0; |
194 |
+ |
gen_.y = 0; |
195 |
|
gen_.phi = 0; |
196 |
|
gen_.charge = 0; |
197 |
|
gen_.pdgId = 0; |
205 |
|
genJet_.E = 0; |
206 |
|
genJet_.pT = 0; |
207 |
|
genJet_.eta = 0; |
208 |
+ |
genJet_.y = 0; |
209 |
|
genJet_.phi = 0; |
210 |
|
genJet_.charge = 0; |
211 |
|
genJet_.pdgId = 0; |
218 |
|
reco_.E = 0; |
219 |
|
reco_.pT = 0; |
220 |
|
reco_.eta = 0; |
221 |
+ |
reco_.y = 0; |
222 |
|
reco_.phi = 0; |
223 |
|
reco_.charge = 0; |
224 |
|
reco_.vx = 0; |
225 |
|
reco_.vy = 0; |
226 |
|
reco_.vz = 0; |
227 |
+ |
reco_.hltMatch = false; |
228 |
|
|
229 |
|
common_.flavour = 0; |
230 |
|
common_.partonFlavour = 0; |
231 |
|
common_.nAssociatedTracks = 0; |
232 |
|
common_.rawpT = 0; |
233 |
+ |
common_.etaMean = 0; |
234 |
+ |
common_.phiMean = 0; |
235 |
+ |
common_.etaEtaMoment = 0; |
236 |
+ |
common_.phiPhiMoment = 0; |
237 |
+ |
common_.etaPhiMoment = 0; |
238 |
|
//common_.rawEta = 0; |
239 |
|
//common_.rawPhi = 0; |
240 |
|
|
253 |
|
calo_.n90 = 0; |
254 |
|
calo_.n60 = 0; |
255 |
|
|
256 |
< |
pf_.chargedHadronEnergy = 0; |
257 |
< |
pf_.chargedHadronEnergyFraction = 0; |
258 |
< |
pf_.neutralHadronEnergy = 0; |
259 |
< |
pf_.neutralHadronEnergyFraction = 0; |
260 |
< |
pf_.chargedEmEnergy = 0; |
261 |
< |
pf_.chargedEmEnergyFraction = 0; |
256 |
> |
jpt_.zspCorrection = 0; |
257 |
> |
jpt_.elecMultiplicity = 0; |
258 |
> |
jpt_.calopT = 0; |
259 |
> |
jpt_.caloEta = 0; |
260 |
> |
jpt_.particleStatusPt.clear(); |
261 |
> |
//jpt_.pionsInCone.clear(); |
262 |
> |
//jpt_.pionsCurledOut.clear(); |
263 |
> |
//jpt_.pionsCurledIn.clear(); |
264 |
> |
//jpt_.elecsInCone.clear(); |
265 |
> |
//jpt_.elecsCurledOut.clear(); |
266 |
> |
//jpt_.elecsCurledIn.clear(); |
267 |
> |
//jpt_.muonsInCone.clear(); |
268 |
> |
//jpt_.muonsCurledOut.clear(); |
269 |
> |
//jpt_.muonsCurledIn.clear(); |
270 |
> |
|
271 |
> |
jptPf_.chargedHadronEnergy = 0; |
272 |
> |
jptPf_.chargedHadronEnergyFraction = 0; |
273 |
> |
jptPf_.neutralHadronEnergy = 0; |
274 |
> |
jptPf_.neutralHadronEnergyFraction = 0; |
275 |
> |
jptPf_.chargedEmEnergy = 0; |
276 |
> |
jptPf_.chargedEmEnergyFraction = 0; |
277 |
> |
jptPf_.neutralEmEnergy = 0; |
278 |
> |
jptPf_.neutralEmEnergyFraction = 0; |
279 |
> |
jptPf_.chargedMultiplicity = 0; |
280 |
> |
jptPf_.muonMultiplicity = 0; |
281 |
> |
|
282 |
|
pf_.chargedMuEnergy = 0; |
283 |
|
pf_.chargedMuEnergyFraction = 0; |
190 |
– |
pf_.neutralEmEnergy = 0; |
191 |
– |
pf_.neutralEmEnergyFraction = 0; |
192 |
– |
pf_.chargedMultiplicity = 0; |
284 |
|
pf_.neutralMultiplicity = 0; |
194 |
– |
pf_.muonMultiplicity = 0; |
285 |
|
|
286 |
|
btag_.cSV = 0; |
287 |
|
btag_.cSVMVA = 0; |
288 |
|
btag_.iPMVA = 0; |
289 |
|
btag_.bProba = 0; |
290 |
|
btag_.probability = 0; |
291 |
< |
btag_.sSV = 0; |
292 |
< |
btag_.softElectron = 0; |
291 |
> |
btag_.sSVHE = 0; |
292 |
> |
btag_.sSVHP = 0; |
293 |
> |
btag_.softElectronByPt = 0; |
294 |
> |
btag_.softElectronByIP3d = 0; |
295 |
|
btag_.softMuon = 0; |
296 |
< |
btag_.softMuonNoIP = 0; |
296 |
> |
btag_.softMuonByPt = 0; |
297 |
> |
btag_.softMuonByIP3d = 0; |
298 |
|
btag_.tCHE = 0; |
299 |
|
btag_.tCHP = 0; |
300 |
|
|
301 |
+ |
id_.fHPD = 0; |
302 |
+ |
id_.fRBX = 0; |
303 |
+ |
id_.n90Hits = 0; |
304 |
+ |
id_.hitsInN90 = 0; |
305 |
+ |
id_.restrictedEMF = 0; |
306 |
+ |
id_.nHCALTowers = 0; |
307 |
+ |
id_.nECALTowers = 0; |
308 |
+ |
|
309 |
+ |
ecor_.Levels.clear(); |
310 |
|
}; |
311 |
|
|
312 |
|
template <class T> |
313 |
|
const double deltaRwithLepton(const std::vector<T> & aCol) const; |
314 |
+ |
void setRecopT(double new_pt) { |
315 |
+ |
reco_.pT = new_pt; |
316 |
+ |
} |
317 |
|
|
318 |
|
private: |
319 |
|
|
323 |
|
HbbAnalysis::BaseVars reco_; |
324 |
|
HbbAnalysis::JetVars common_; |
325 |
|
HbbAnalysis::CaloJetVars calo_; |
326 |
+ |
HbbAnalysis::JPTJetVars jpt_; |
327 |
+ |
HbbAnalysis::JPTPFJetVars jptPf_; |
328 |
|
HbbAnalysis::PFJetVars pf_; |
329 |
|
HbbAnalysis::JetBtagVars btag_; |
330 |
< |
|
330 |
> |
HbbAnalysis::JetIDVars id_; |
331 |
> |
HbbAnalysis::JetECorVars ecor_; |
332 |
|
}; |
333 |
|
|
334 |
|
inline bool operator < (const Jet & one, const Jet & two) |
348 |
|
|
349 |
|
for (iLepton= aCol.begin(); |
350 |
|
iLepton != aCol.end(); |
351 |
< |
iLepton++) |
351 |
> |
++iLepton) |
352 |
|
{ |
353 |
|
double lDeltaEta = recoVars().eta-(*iLepton).recoVars().eta; |
354 |
|
double lDeltaPhi = recoVars().phi-(*iLepton).recoVars().phi; |
355 |
< |
if (lDeltaPhi<0) lDeltaPhi+= 2*TMath::Pi(); |
355 |
> |
//phi between -pi and pi: no need to add 2pi if negative.... |
356 |
|
|
357 |
|
double lDeltaR = sqrt(lDeltaEta*lDeltaEta+lDeltaPhi*lDeltaPhi); |
358 |
|
|