ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/TRootMET.h
Revision: 1.1
Committed: Wed Nov 19 19:08:06 2008 UTC (16 years, 5 months ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: Common-2008_11_24, Common-2008_11_19
Log Message:
First skeleton for common code

File Contents

# User Rev Content
1 lethuill 1.1 #ifndef TRootMET_h
2     #define TRootMET_h
3    
4     #include "../interface/TRootParticle.h"
5    
6     #include "Rtypes.h"
7     #include "TObject.h"
8    
9    
10     using namespace std;
11    
12     class TRootMET : public TRootParticle
13     {
14    
15     public:
16    
17     TRootMET() :
18     TRootParticle()
19     ,maxEtInEmTowers_(0.)
20     ,maxEtInHadTowers_(0.)
21     ,hadEtInHO_(0.)
22     ,hadEtInHB_(0.)
23     ,hadEtInHF_(0.)
24     ,hadEtInHE_(0.)
25     ,emEtInEB_(0.)
26     ,emEtInEE_(0.)
27     ,emEtInHF_(0.)
28     ,etFractionHadronic_(0.)
29     ,etFractionEm_(0.)
30     ,metSignificance_(0.)
31     ,caloMETInpHF_(0.)
32     ,caloMETInmHF_(0.)
33     ,caloSETInpHF_(0.)
34     ,caloSETInmHF_(0.)
35     ,caloMETPhiInpHF_(0.)
36     ,caloMETPhiInmHF_(0.)
37     {;}
38    
39     TRootMET(const TRootMET& met) :
40     TRootParticle(met)
41     ,maxEtInEmTowers_(met.maxEtInEmTowers_)
42     ,maxEtInHadTowers_(met.maxEtInHadTowers_)
43     ,hadEtInHO_(met.hadEtInHO_)
44     ,hadEtInHB_(met.hadEtInHB_)
45     ,hadEtInHF_(met.hadEtInHF_)
46     ,hadEtInHE_(met.hadEtInHE_)
47     ,emEtInEB_(met.emEtInEB_)
48     ,emEtInEE_(met.emEtInEE_)
49     ,emEtInHF_(met.emEtInHF_)
50     ,etFractionHadronic_(met.etFractionHadronic_)
51     ,etFractionEm_(met.etFractionEm_)
52     ,metSignificance_(met.metSignificance_)
53     ,caloMETInpHF_(met.caloMETInpHF_)
54     ,caloMETInmHF_(met.caloMETInmHF_)
55     ,caloSETInpHF_(met.caloSETInpHF_)
56     ,caloSETInmHF_(met.caloSETInmHF_)
57     ,caloMETPhiInpHF_(met.caloMETPhiInpHF_)
58     ,caloMETPhiInmHF_(met.caloMETPhiInmHF_)
59     {;}
60    
61     TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e) :
62     TRootParticle(px,py,pz,e)
63     ,maxEtInEmTowers_(0.)
64     ,maxEtInHadTowers_(0.)
65     ,hadEtInHO_(0.)
66     ,hadEtInHB_(0.)
67     ,hadEtInHF_(0.)
68     ,hadEtInHE_(0.)
69     ,emEtInEB_(0.)
70     ,emEtInEE_(0.)
71     ,emEtInHF_(0.)
72     ,etFractionHadronic_(0.)
73     ,etFractionEm_(0.)
74     ,metSignificance_(0.)
75     ,caloMETInpHF_(0.)
76     ,caloMETInmHF_(0.)
77     ,caloSETInpHF_(0.)
78     ,caloSETInmHF_(0.)
79     ,caloMETPhiInpHF_(0.)
80     ,caloMETPhiInmHF_(0.)
81     {;}
82    
83     TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z) :
84     TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z)
85     ,maxEtInEmTowers_(0.)
86     ,maxEtInHadTowers_(0.)
87     ,hadEtInHO_(0.)
88     ,hadEtInHB_(0.)
89     ,hadEtInHF_(0.)
90     ,hadEtInHE_(0.)
91     ,emEtInEB_(0.)
92     ,emEtInEE_(0.)
93     ,emEtInHF_(0.)
94     ,etFractionHadronic_(0.)
95     ,etFractionEm_(0.)
96     ,metSignificance_(0.)
97     ,caloMETInpHF_(0.)
98     ,caloMETInmHF_(0.)
99     ,caloSETInpHF_(0.)
100     ,caloSETInmHF_(0.)
101     ,caloMETPhiInpHF_(0.)
102     ,caloMETPhiInmHF_(0.)
103     {;}
104    
105     TRootMET(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z, Int_t type, Float_t charge) :
106     TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge)
107     ,maxEtInEmTowers_(0.)
108     ,maxEtInHadTowers_(0.)
109     ,hadEtInHO_(0.)
110     ,hadEtInHB_(0.)
111     ,hadEtInHF_(0.)
112     ,hadEtInHE_(0.)
113     ,emEtInEB_(0.)
114     ,emEtInEE_(0.)
115     ,emEtInHF_(0.)
116     ,etFractionHadronic_(0.)
117     ,etFractionEm_(0.)
118     ,metSignificance_(0.)
119     ,caloMETInpHF_(0.)
120     ,caloMETInmHF_(0.)
121     ,caloSETInpHF_(0.)
122     ,caloSETInmHF_(0.)
123     ,caloMETPhiInpHF_(0.)
124     ,caloMETPhiInmHF_(0.)
125     {;}
126    
127     TRootMET(const TLorentzVector &momentum) :
128     TRootParticle(momentum)
129     ,maxEtInEmTowers_(0.)
130     ,maxEtInHadTowers_(0.)
131     ,hadEtInHO_(0.)
132     ,hadEtInHB_(0.)
133     ,hadEtInHF_(0.)
134     ,hadEtInHE_(0.)
135     ,emEtInEB_(0.)
136     ,emEtInEE_(0.)
137     ,emEtInHF_(0.)
138     ,etFractionHadronic_(0.)
139     ,etFractionEm_(0.)
140     ,metSignificance_(0.)
141     ,caloMETInpHF_(0.)
142     ,caloMETInmHF_(0.)
143     ,caloSETInpHF_(0.)
144     ,caloSETInmHF_(0.)
145     ,caloMETPhiInpHF_(0.)
146     ,caloMETPhiInmHF_(0.)
147     {;}
148    
149     TRootMET(const TLorentzVector &momentum, const TVector3 &vertex, Int_t type, Float_t charge) :
150     TRootParticle(momentum, vertex, type, charge)
151     ,maxEtInEmTowers_(0.)
152     ,maxEtInHadTowers_(0.)
153     ,hadEtInHO_(0.)
154     ,hadEtInHB_(0.)
155     ,hadEtInHF_(0.)
156     ,hadEtInHE_(0.)
157     ,emEtInEB_(0.)
158     ,emEtInEE_(0.)
159     ,emEtInHF_(0.)
160     ,etFractionHadronic_(0.)
161     ,etFractionEm_(0.)
162     ,metSignificance_(0.)
163     ,caloMETInpHF_(0.)
164     ,caloMETInmHF_(0.)
165     ,caloSETInpHF_(0.)
166     ,caloSETInmHF_(0.)
167     ,caloMETPhiInpHF_(0.)
168     ,caloMETPhiInmHF_(0.)
169     {;}
170    
171     ~TRootMET() {;}
172    
173     Float_t maxEtInEmTowers() const { return maxEtInEmTowers_; }
174     Float_t maxEtInHadTowers() const { return maxEtInHadTowers_; }
175     Float_t hadEtInHO() const { return hadEtInHO_; }
176     Float_t hadEtInHB() const { return hadEtInHB_; }
177     Float_t hadEtInHF() const { return hadEtInHF_; }
178     Float_t hadEtInHE() const { return hadEtInHE_; }
179     Float_t emEtInEB() const { return emEtInEB_; }
180     Float_t emEtInEE() const { return emEtInEE_; }
181     Float_t emEtInHF() const { return emEtInHF_; }
182     Float_t etFractionHadronic() const { return etFractionHadronic_; }
183     Float_t etFractionEm() const { return etFractionEm_; }
184     Float_t metSignificance() const { return metSignificance_; }
185     Float_t caloMETInpHF() const { return caloMETInpHF_; }
186     Float_t caloMETInmHF() const { return caloMETInmHF_; }
187     Float_t caloSETInpHF() const { return caloSETInpHF_; }
188     Float_t caloSETInmHF() const { return caloSETInmHF_; }
189     Float_t caloMETPhiInpHF() const { return caloMETPhiInpHF_; }
190     Float_t caloMETPhiInmHF() const { return caloMETPhiInmHF_; }
191    
192     void setMaxEtInEmTowers(Float_t maxEtInEmTowers) { maxEtInEmTowers_ = maxEtInEmTowers; }
193     void setMaxEtInHadTowers(Float_t maxEtInHadTowers) { maxEtInHadTowers_ = maxEtInHadTowers; }
194     void setHadEtInHO(Float_t hadEtInHO) { hadEtInHO_ = hadEtInHO; }
195     void setHadEtInHB(Float_t hadEtInHB) { hadEtInHB_ = hadEtInHB; }
196     void setHadEtInHF(Float_t hadEtInHF) { hadEtInHF_ = hadEtInHF; }
197     void setHadEtInHE(Float_t hadEtInHE) { hadEtInHE_ = hadEtInHE; }
198     void setEmEtInEB(Float_t emEtInEB) { emEtInEB_ = emEtInEB; }
199     void setEmEtInEE(Float_t emEtInEE) { emEtInEE_ = emEtInEE; }
200     void setEmEtInHF(Float_t emEtInHF) { emEtInHF_ = emEtInHF; }
201     void setEtFractionHadronic(Float_t etFractionHadronic) { etFractionHadronic_ = etFractionHadronic; }
202     void setEtFractionEm(Float_t etFractionEm) { etFractionEm_ = etFractionEm; }
203     void setMETSignificance(Float_t metSignificance) { metSignificance_ = metSignificance; }
204     void setCaloMETInpHF(Float_t caloMETInpHF) { caloMETInpHF_ = caloMETInpHF; }
205     void setCaloMETInmHF(Float_t caloMETInmHF) { caloMETInmHF_ = caloMETInmHF; }
206     void setCaloSETInpHF(Float_t caloSETInpHF) { caloSETInpHF_ = caloSETInpHF; }
207     void setCaloSETInmHF(Float_t caloSETInmHF) { caloSETInmHF_ = caloSETInmHF; }
208     void setCaloMETPhiInpHF(Float_t caloMETPhiInpHF) { caloMETPhiInpHF_ = caloMETPhiInpHF; }
209     void setCaloMETPhiInmHF(Float_t caloMETPhiInmHF) { caloMETPhiInmHF_ = caloMETPhiInmHF; }
210    
211     void setCaloMETFraction(
212     Float_t maxEtInEmTowers
213     ,Float_t maxEtInHadTowers
214     ,Float_t hadEtInHO
215     ,Float_t hadEtInHB
216     ,Float_t hadEtInHF
217     ,Float_t hadEtInHE
218     ,Float_t emEtInEB
219     ,Float_t emEtInEE
220     ,Float_t emEtInHF
221     ,Float_t etFractionHadronic
222     ,Float_t etFractionEm
223     ,Float_t metSignificance
224     ,Float_t caloMETInpHF
225     ,Float_t caloMETInmHF
226     ,Float_t caloSETInpHF
227     ,Float_t caloSETInmHF
228     ,Float_t caloMETPhiInpHF
229     ,Float_t caloMETPhiInmHF
230     )
231     {
232     maxEtInEmTowers_ = maxEtInEmTowers;
233     maxEtInEmTowers_ = maxEtInEmTowers;
234     maxEtInHadTowers_ = maxEtInHadTowers;
235     hadEtInHO_ = hadEtInHO;
236     hadEtInHB_ = hadEtInHB;
237     hadEtInHF_ = hadEtInHF;
238     hadEtInHE_ = hadEtInHE;
239     emEtInEB_ = emEtInEB;
240     emEtInEE_ = emEtInEE;
241     emEtInHF_ = emEtInHF;
242     etFractionHadronic_ = etFractionHadronic;
243     etFractionEm_ = etFractionEm;
244     metSignificance_ = metSignificance;
245     caloMETInpHF_ = caloMETInpHF;
246     caloMETInmHF_ = caloMETInmHF;
247     caloSETInpHF_ = caloSETInpHF;
248     caloSETInmHF_ = caloSETInmHF;
249     caloMETPhiInpHF_ = caloMETPhiInpHF;
250     caloMETPhiInmHF_ = caloMETPhiInmHF;
251     }
252    
253    
254     friend std::ostream& operator<< (std::ostream& stream, const TRootMET& met) {
255     stream << "TRootMET (Pt,Px,Py)=("<< met.Pt() <<","<< met.Px() <<","<< met.Py() << ")"
256     << " vertex(x,y,z)=("<< met.vx() <<","<< met.vy() <<","<< met.vz() << ")"
257     << " hadEt in (HO,HB,HF,HE)=("<< met.hadEtInHO() <<","<< met.hadEtInHB() <<","<< met.hadEtInHF() <<","<< met.hadEtInHE() << ")"
258     << " emEt in (EB,EF,HF)=("<< met.emEtInEB() <<","<< met.emEtInEE() <<","<< met.emEtInHF() << ")";
259     return stream;
260     };
261    
262    
263     private:
264    
265     Float_t maxEtInEmTowers_; // Maximum ET in EM towers
266     Float_t maxEtInHadTowers_; // Maximum ET in HCAL towers
267     Float_t hadEtInHO_; // Hadronic ET fraction in HO
268     Float_t hadEtInHB_; // Hadronic ET in HB
269     Float_t hadEtInHF_; // Hadronic ET in HF
270     Float_t hadEtInHE_; // Hadronic ET in HE
271     Float_t emEtInEB_; // Em ET in EB
272     Float_t emEtInEE_; // Em ET in EE
273     Float_t emEtInHF_; // Em ET in HF
274     Float_t etFractionHadronic_; // Hadronic ET fraction
275     Float_t etFractionEm_; // Em ET fraction
276     Float_t metSignificance_; // Em ET fraction
277     Float_t caloMETInpHF_; // CaloMET in HF+
278     Float_t caloMETInmHF_; // CaloMET in HF-
279     Float_t caloSETInpHF_; // CaloSET in HF+
280     Float_t caloSETInmHF_; // CaloSET in HF-
281     Float_t caloMETPhiInpHF_; // CaloMET-phi in HF+
282     Float_t caloMETPhiInmHF_; // CaloMET-phi in HF-
283    
284     ClassDef (TRootMET,1);
285     };
286    
287     #endif