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

# User Rev Content
1 bendavid 1.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