ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/Objects/Jet.h
Revision: 1.10
Committed: Wed Jun 19 22:08:51 2013 UTC (11 years, 10 months ago) by rkogler
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.9: +0 -13 lines
Log Message:
clean up: removed some not needed data members

File Contents

# User Rev Content
1 peiffer 1.1 #ifndef Jet_H
2     #define Jet_H
3    
4 peiffer 1.9 #include "FlavorParticle.h"
5 peiffer 1.1
6 peiffer 1.3 /**
7     * @short jet class
8     * @author Thomas Peiffer
9     */
10 peiffer 1.1
11 peiffer 1.9 class Jet : public FlavorParticle{
12 peiffer 1.1
13     public:
14    
15     Jet(){
16     m_nTracks=0;
17     m_jetArea=0;
18     m_numberOfDaughters=0;
19     m_neutralEmEnergyFraction=0;
20     m_neutralHadronEnergyFraction=0;
21     m_chargedEmEnergyFraction=0;
22     m_chargedHadronEnergyFraction=0;
23     m_muonEnergyFraction=0;
24     m_photonEnergyFraction=0;
25     m_chargedMultiplicity=0;
26     m_neutralMultiplicity=0;
27     m_muonMultiplicity=0;
28     m_electronMultiplicity=0;
29     m_photonMultiplicity=0;
30     m_btag_simpleSecondaryVertexHighEff=0;
31     m_btag_simpleSecondaryVertexHighPur=0;
32     m_btag_combinedSecondaryVertex=0;
33     m_btag_combinedSecondaryVertexMVA=0;
34     m_btag_jetBProbability=0;
35     m_btag_jetProbability=0;
36     m_JEC_factor_raw=0;
37 peiffer 1.7 m_genjet_index=-1;
38 rkogler 1.8 m_pfconstituents_indices.clear();
39 peiffer 1.7 m_genjet=NULL;
40 peiffer 1.1 };
41    
42     ~Jet(){
43     };
44    
45 peiffer 1.2 LorentzVector genjet_v4() const{
46 peiffer 1.7
47     return genjet().v4();
48     };
49    
50     Particle genjet() const{
51     if(m_genjet)
52     return *m_genjet;
53     else{
54     //return 0 particle
55     Particle p;
56     return p;
57     }
58 peiffer 1.1 };
59    
60 rkogler 1.8 std::vector<unsigned int> pfconstituents_indices() const{return m_pfconstituents_indices;}
61 rkogler 1.6
62 rkogler 1.8 void add_pfconstituents_index(int ind){m_pfconstituents_indices.push_back(ind);}
63 rkogler 1.6
64 peiffer 1.2 int nTracks() const{return m_nTracks;}
65     float jetArea() const{return m_jetArea;}
66     int numberOfDaughters() const{return m_numberOfDaughters;}
67     float neutralEmEnergyFraction() const{return m_neutralEmEnergyFraction;}
68     float neutralHadronEnergyFraction() const{return m_neutralHadronEnergyFraction;}
69     float chargedEmEnergyFraction() const{return m_chargedEmEnergyFraction;}
70     float chargedHadronEnergyFraction() const{return m_chargedHadronEnergyFraction;}
71     float muonEnergyFraction() const{return m_muonEnergyFraction;}
72     float photonEnergyFraction() const{return m_photonEnergyFraction;}
73     int chargedMultiplicity() const{return m_chargedMultiplicity;}
74     int neutralMultiplicity() const{return m_neutralMultiplicity;}
75     int muonMultiplicity() const{return m_muonMultiplicity;}
76     int electronMultiplicity() const{return m_electronMultiplicity;}
77     int photonMultiplicity() const{return m_photonMultiplicity;}
78     float btag_simpleSecondaryVertexHighEff() const{return m_btag_simpleSecondaryVertexHighEff;}
79     float btag_simpleSecondaryVertexHighPur() const{return m_btag_simpleSecondaryVertexHighPur;}
80     float btag_combinedSecondaryVertex() const{return m_btag_combinedSecondaryVertex;}
81     float btag_combinedSecondaryVertexMVA() const{return m_btag_combinedSecondaryVertexMVA;}
82     float btag_jetBProbability() const{return m_btag_jetBProbability;}
83     float btag_jetProbability() const{return m_btag_jetProbability;}
84     float JEC_factor_raw() const{return m_JEC_factor_raw;}
85 peiffer 1.7 float genjet_pt() const{return genjet().pt();}
86     float genjet_eta() const{return genjet().eta();}
87     float genjet_phi() const{return genjet().phi();}
88     float genjet_energy() const{return genjet().energy();}
89     float genjet_index() const{return m_genjet_index;}
90 peiffer 1.1
91     void set_nTracks(int x){m_nTracks=x;}
92     void set_jetArea(float x){m_jetArea=x;}
93     void set_numberOfDaughters(int x){m_numberOfDaughters=x;}
94     void set_neutralEmEnergyFraction(float x){m_neutralEmEnergyFraction=x;}
95     void set_neutralHadronEnergyFraction(float x){m_neutralHadronEnergyFraction=x;}
96     void set_chargedEmEnergyFraction(float x){m_chargedEmEnergyFraction=x;}
97     void set_chargedHadronEnergyFraction(float x){m_chargedHadronEnergyFraction=x;}
98     void set_muonEnergyFraction(float x){m_muonEnergyFraction=x;}
99     void set_photonEnergyFraction(float x){m_photonEnergyFraction=x;}
100     void set_chargedMultiplicity(int x){m_chargedMultiplicity=x;}
101     void set_neutralMultiplicity(int x){m_neutralMultiplicity=x;}
102     void set_muonMultiplicity(int x){m_muonMultiplicity=x;}
103     void set_electronMultiplicity(int x){m_electronMultiplicity=x;}
104     void set_photonMultiplicity(int x){m_photonMultiplicity=x;}
105     void set_btag_simpleSecondaryVertexHighEff(float x){m_btag_simpleSecondaryVertexHighEff=x;}
106     void set_btag_simpleSecondaryVertexHighPur(float x){m_btag_simpleSecondaryVertexHighPur=x;}
107     void set_btag_combinedSecondaryVertex(float x){m_btag_combinedSecondaryVertex=x;}
108     void set_btag_combinedSecondaryVertexMVA(float x){m_btag_combinedSecondaryVertexMVA=x;}
109     void set_btag_jetBProbability(float x){m_btag_jetBProbability=x;}
110     void set_btag_jetProbability(float x){m_btag_jetProbability=x;}
111     void set_JEC_factor_raw(float x){m_JEC_factor_raw=x;}
112 peiffer 1.7 void set_genjet_index(int x){m_genjet_index=x;}
113 peiffer 1.1
114 peiffer 1.7 bool has_genjet() const{return m_genjet_index>=0;}
115    
116     void set_genjet(std::vector<Particle>* genjets){
117     if(!genjets) return;
118     if(m_genjet_index<0 || m_genjet_index>(int)genjets->size()) return;
119     m_genjet = &genjets->at(m_genjet_index);
120     }
121 peiffer 1.4
122 peiffer 1.5 bool pfID(){
123     //pf ID has already been applied when using goodPatJets
124     if(numberOfDaughters()>1
125     && neutralHadronEnergyFraction()<0.99
126     && neutralEmEnergyFraction()<0.99){
127    
128     if(fabs(eta())>=2.4)
129     return true;
130    
131     if(chargedEmEnergyFraction()<0.99
132     && chargedHadronEnergyFraction()>0
133     && chargedMultiplicity()>0)
134     return true;
135     }
136     return false;
137     }
138    
139 peiffer 1.1 private:
140    
141     int m_nTracks;
142     float m_jetArea;
143     int m_numberOfDaughters;
144     float m_neutralEmEnergyFraction;
145     float m_neutralHadronEnergyFraction;
146     float m_chargedEmEnergyFraction;
147     float m_chargedHadronEnergyFraction;
148     float m_muonEnergyFraction;
149     float m_photonEnergyFraction;
150     int m_chargedMultiplicity;
151     int m_neutralMultiplicity;
152     int m_muonMultiplicity;
153     int m_electronMultiplicity;
154     int m_photonMultiplicity;
155     float m_btag_simpleSecondaryVertexHighEff;
156     float m_btag_simpleSecondaryVertexHighPur;
157     float m_btag_combinedSecondaryVertex;
158     float m_btag_combinedSecondaryVertexMVA;
159     float m_btag_jetBProbability;
160     float m_btag_jetProbability;
161     float m_JEC_factor_raw;
162 peiffer 1.7 int m_genjet_index;
163 rkogler 1.8 Particle* m_genjet;
164 peiffer 1.1
165 rkogler 1.8 std::vector<unsigned int> m_pfconstituents_indices;
166    
167 rkogler 1.6
168 peiffer 1.1 };
169    
170     #endif