ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/PFJet.h
Revision: 1.1
Committed: Wed Mar 11 18:11:38 2009 UTC (16 years, 1 month ago) by bendavid
Content type: text/plain
Branch: MAIN
Log Message:
Add PFJet class

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: GenJet.h,v 1.5 2009/03/03 17:04:09 loizides Exp $
3 //
4 // PFJet
5 //
6 // This class holds information about reconstructed jet based on pf candidates
7 //
8 // Authors: J.Bendavid
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITANA_DATATREE_PFJET_H
12 #define MITANA_DATATREE_PFJET_H
13
14 #include "MitAna/DataTree/interface/Jet.h"
15 #include "MitAna/DataCont/interface/RefArray.h"
16 #include "MitAna/DataTree/interface/PFCandidate.h"
17
18 namespace mithep
19 {
20 class PFJet : public Jet
21 {
22 public:
23 PFJet() : fChargedHadronEnergy(0), fNeutralHadronEnergy(0), fChargedEmEnergy(0),
24 fChargedMuEnergy(0), fNeutralEmEnergy(0), fChargedMultiplicity(0),
25 fNeutralMultiplicity(0), fMuonMultiplicity(0) {}
26 PFJet(Double_t px, Double_t py, Double_t pz, Double_t e) :
27 Jet(px,py,pz,e),
28 fChargedHadronEnergy(0), fNeutralHadronEnergy(0), fChargedEmEnergy(0),
29 fChargedMuEnergy(0), fNeutralEmEnergy(0), fChargedMultiplicity(0),
30 fNeutralMultiplicity(0), fMuonMultiplicity(0) {}
31
32 void AddPFCand(const PFCandidate *p) { fPFCands.Add(p); }
33 Bool_t HasPFCand(const PFCandidate *p) const { return fPFCands.HasObject(p); }
34 UInt_t NPFCands() const { return fPFCands.GetEntries(); }
35 const PFCandidate *PFCand(UInt_t i) const { return fPFCands.At(i); }
36 UInt_t NConstituents() const { return NPFCands(); }
37
38 Double_t ChargedHadronEnergy() const { return fChargedHadronEnergy; }
39 Double_t NeutralHadronEnergy() const { return fNeutralHadronEnergy; }
40 Double_t ChargedEmEnergy() const { return fChargedEmEnergy; }
41 Double_t ChargedMuEnergy() const { return fChargedMuEnergy; }
42 Double_t NeutralEmEnergy() const { return fNeutralEmEnergy; }
43 UInt_t ChargedMultiplicity() const { return fChargedMultiplicity; }
44 UInt_t NeutralMultiplicity() const { return fNeutralMultiplicity; }
45 UInt_t MuonMultiplicity() const { return fMuonMultiplicity; }
46 void SetChargedHadronEnergy(Double_t e) { fChargedHadronEnergy = e; }
47 void SetNeutralHadronEnergy(Double_t e) { fNeutralHadronEnergy = e; }
48 void SetChargedEmEnergy(Double_t e) { fChargedEmEnergy = e; }
49 void SetChargedMuEnergy(Double_t e) { fChargedMuEnergy = e; }
50 void SetNeutralEmEnergy(Double_t e) { fNeutralEmEnergy = e; }
51 void SetChargedMultiplicity(UInt_t n) { fChargedMultiplicity = n; }
52 void SetNeutralMultiplicity(UInt_t n) { fNeutralMultiplicity = n; }
53 void SetMuonMultiplicity(UInt_t n) { fMuonMultiplicity = n; }
54
55 protected:
56
57 Double32_t fChargedHadronEnergy;
58 Double32_t fNeutralHadronEnergy;
59 Double32_t fChargedEmEnergy;
60 Double32_t fChargedMuEnergy;
61 Double32_t fNeutralEmEnergy;
62 UInt_t fChargedMultiplicity;
63 UInt_t fNeutralMultiplicity;
64 UInt_t fMuonMultiplicity;
65 RefArray<PFCandidate> fPFCands; //pf candidates in the jet
66
67 ClassDef(PFJet, 1) // PFJet class
68 };
69 }
70 #endif