ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/interface/Jet.hh
(Generate patch)

Comparing UserCode/HbbAnalysis/interface/Jet.hh (file contents):
Revision 1.3 by amagnan, Wed Nov 4 13:51:15 2009 UTC vs.
Revision 1.14 by agilbert, Tue Jun 28 08:07:15 2011 UTC

# Line 28 | Line 28 | namespace HbbAnalysis {
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);
# Line 38 | Line 40 | namespace HbbAnalysis {
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,
# Line 45 | Line 74 | namespace HbbAnalysis {
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 {
# Line 81 | Line 114 | namespace HbbAnalysis {
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      };
# Line 89 | Line 130 | namespace HbbAnalysis {
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      };
# Line 112 | Line 161 | namespace HbbAnalysis {
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      };
# Line 121 | Line 178 | namespace HbbAnalysis {
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;
# Line 139 | Line 205 | namespace HbbAnalysis {
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;
# Line 151 | Line 218 | namespace HbbAnalysis {
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  
# Line 179 | Line 253 | namespace HbbAnalysis {
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  
# Line 218 | Line 323 | namespace HbbAnalysis {
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)
# Line 240 | Line 348 | namespace HbbAnalysis {
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  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines