BOSS 7.0.1
BESIII Offline Software System
Loading...
Searching...
No Matches
Reconstruction/TofRec/TofRec-00-04-44/TofRec/TofCheckDigi.h
Go to the documentation of this file.
1#ifndef TOFCHECKDIGI_H
2#define TOFCHECKDIGI_H
3#include "EventModel/EventHeader.h"
4#include "ExtEvent/RecExtTrack.h"
5#include "TofRawEvent/TofDigi.h"
6#include "RawDataProviderSvc/TofData.h"
7#include "TofRec/TofTrack.h"
8#include "GaudiKernel/NTuple.h"
9#include "TrigEvent/TrigData.h"
10
11#include "EventModel/EventModel.h"
12#include "McTruth/McEvent.h"
13#include "McTruth/TofMcHit.h"
14#include "McTruth/McParticle.h"
15
16#include "MdcRecEvent/RecMdcTrack.h"
17#include "MdcRecEvent/RecMdcKalTrack.h"
18#include "EmcRecEventModel/RecEmcShower.h"
19
20using namespace Event;
21class TofCheckDigi{
22 public:
23 TofCheckDigi( NTuple::Tuple*& digi, NTuple::Tuple*& barrel, NTuple::Tuple*& endcap, NTuple::Tuple*& mrpc, NTuple::Tuple*& ext, NTuple::Tuple*& tof, NTuple::Tuple*& bhabha );
25
26 void Fill_Barrel( Event::EventHeader&, TofData*&, double, int );
27 void Fill_Endcap( Event::EventHeader&, TofData*&, double, int );
28 void Fill_MRPC( Event::EventHeader&, TofData*&, double, int );
30 void Fill_TofTrack( Event::EventHeader&, TofTrack*&, double, int );
34
35 void FillCol( Event::EventHeader&, TofDigiCol&, double, int );
36 void FillCol( Event::EventHeader&, TofDataMap&, double, int );
37 void FillCol( Event::EventHeader&, TofDataVector&, double, int );
40
41 private:
42 NTuple::Tuple*& digi_tuple;
43 NTuple::Item<int> digi_run;
44 NTuple::Item<int> digi_event;
45 NTuple::Item<int> digi_barrel;
46 NTuple::Item<int> digi_endcap;
47 NTuple::Item<int> digi_layer;
48 NTuple::Item<int> digi_tofId;
49 NTuple::Item<int> digi_strip;
50 NTuple::Item<int> digi_end;
51 NTuple::Item<double> digi_adc;
52 NTuple::Item<double> digi_tdc;
53 NTuple::Item<int> digi_qclock;
54 NTuple::Item<int> digi_tclock;
55 NTuple::Item<int> digi_overflow;
56 NTuple::Item<int> digi_noq;
57 NTuple::Item<int> digi_not;
58 NTuple::Item<int> digi_multiq;
59 NTuple::Item<int> digi_multit;
60 NTuple::Item<int> digi_overq;
61 NTuple::Item<int> digi_overt;
62 NTuple::Item<double> digi_t0;
63 NTuple::Item<int> digi_t0stat;
64 NTuple::Item<int> digi_crate;
65 NTuple::Item<int> digi_geo;
66 NTuple::Item<int> digi_tdcnum;
67 NTuple::Item<double> digi_err;
68
69 NTuple::Tuple*& barrel_tuple;
70 NTuple::Item<int> barrel_run;
71 NTuple::Item<int> barrel_event;
72 NTuple::Item<int> barrel_tofId;
73 NTuple::Item<int> barrel_tofTrackId;
74 NTuple::Item<int> barrel_layer;
75 NTuple::Item<double> barrel_qchannel1;
76 NTuple::Item<double> barrel_tchannel1;
77 NTuple::Item<double> barrel_qchannel2;
78 NTuple::Item<double> barrel_tchannel2;
79 NTuple::Item<double> barrel_qtc1;
80 NTuple::Item<double> barrel_adc1;
81 NTuple::Item<double> barrel_tdc1;
82 NTuple::Item<double> barrel_qtc2;
83 NTuple::Item<double> barrel_adc2;
84 NTuple::Item<double> barrel_tdc2;
85 NTuple::Item<int> barrel_qclock1;
86 NTuple::Item<int> barrel_tclock1;
87 NTuple::Item<int> barrel_qclock2;
88 NTuple::Item<int> barrel_tclock2;
89 NTuple::Item<int> barrel_quality;
90 NTuple::Item<int> barrel_tmatched;
91 NTuple::Item<int> barrel_qtimes1;
92 NTuple::Item<int> barrel_ttimes1;
93 NTuple::Item<int> barrel_qtimes2;
94 NTuple::Item<int> barrel_ttimes2;
95 NTuple::Item<int> barrel_times1;
96 NTuple::Item<int> barrel_times2;
97 NTuple::Item<int> barrel_times;
98 NTuple::Item<int> barrel_qnum1;
99 NTuple::Item<int> barrel_tnum1;
100 NTuple::Item<int> barrel_qnum2;
101 NTuple::Item<int> barrel_tnum2;
102 NTuple::Item<double> barrel_tsum;
103 NTuple::Item<double> barrel_tsub;
104 NTuple::Item<double> barrel_ztdc;
105 NTuple::Item<double> barrel_zadc;
106 NTuple::Item<double> barrel_t0;
107 NTuple::Item<int> barrel_t0stat;
108
109 NTuple::Tuple*& endcap_tuple;
110 NTuple::Item<int> endcap_run;
111 NTuple::Item<int> endcap_event;
112 NTuple::Item<int> endcap_tofId;
113 NTuple::Item<int> endcap_tofTrackId;
114 NTuple::Item<double> endcap_qchannel;
115 NTuple::Item<double> endcap_tchannel;
116 NTuple::Item<double> endcap_qtc;
117 NTuple::Item<double> endcap_adc;
118 NTuple::Item<double> endcap_tdc;
119 NTuple::Item<int> endcap_quality;
120 NTuple::Item<int> endcap_qclock;
121 NTuple::Item<int> endcap_tclock;
122 NTuple::Item<int> endcap_qtimes;
123 NTuple::Item<int> endcap_ttimes;
124 NTuple::Item<int> endcap_times;
125 NTuple::Item<int> endcap_qnum;
126 NTuple::Item<int> endcap_tnum;
127 NTuple::Item<double> endcap_t0;
128 NTuple::Item<int> endcap_t0stat;
129
130 NTuple::Tuple*& mrpc_tuple;
131 NTuple::Item<int> mrpc_run;
132 NTuple::Item<int> mrpc_event;
133 NTuple::Item<int> mrpc_tofId;
134 NTuple::Item<int> mrpc_strip;
135 NTuple::Item<int> mrpc_tofTrackId;
136 NTuple::Item<double> mrpc_ttch1;
137 NTuple::Item<double> mrpc_tlch1;
138 NTuple::Item<double> mrpc_ttch2;
139 NTuple::Item<double> mrpc_tlch2;
140 NTuple::Item<double> mrpc_tt1;
141 NTuple::Item<double> mrpc_tl1;
142 NTuple::Item<double> mrpc_tt2;
143 NTuple::Item<double> mrpc_tl2;
144 NTuple::Item<double> mrpc_tot1;
145 NTuple::Item<double> mrpc_tot2;
146 NTuple::Item<int> mrpc_quality;
147 NTuple::Item<int> mrpc_tmatched;
148 NTuple::Item<int> mrpc_tttimes1;
149 NTuple::Item<int> mrpc_tltimes1;
150 NTuple::Item<int> mrpc_tttimes2;
151 NTuple::Item<int> mrpc_tltimes2;
152 NTuple::Item<int> mrpc_times1;
153 NTuple::Item<int> mrpc_times2;
154 NTuple::Item<int> mrpc_times;
155 NTuple::Item<int> mrpc_ttnum1;
156 NTuple::Item<int> mrpc_tlnum1;
157 NTuple::Item<int> mrpc_ttnum2;
158 NTuple::Item<int> mrpc_tlnum2;
159 NTuple::Item<double> mrpc_tsum;
160 NTuple::Item<double> mrpc_tsub;
161 NTuple::Item<double> mrpc_ztdc;
162 NTuple::Item<double> mrpc_zadc;
163 NTuple::Item<double> mrpc_t0;
164 NTuple::Item<int> mrpc_t0stat;
165
166 NTuple::Tuple*& ext_tuple;
167 NTuple::Item<int> ext_run;
168 NTuple::Item<int> ext_event;
169 NTuple::Item<int> ext_trackid;
170 NTuple::Item<double> ext_costheta;
171 NTuple::Array<int> ext_kalman;
172 NTuple::Array<double> ext_x1;
173 NTuple::Array<double> ext_x2;
174 NTuple::Array<double> ext_y1;
175 NTuple::Array<double> ext_y2;
176 NTuple::Array<double> ext_z1;
177 NTuple::Array<double> ext_z2;
178 NTuple::Array<int> ext_tofid1;
179 NTuple::Array<int> ext_tofid2;
180 NTuple::Array<int> ext_strip1;
181 NTuple::Array<int> ext_strip2;
182 NTuple::Item<double> ext_p;
183 NTuple::Array<double> ext_texp1;
184 NTuple::Array<double> ext_texp2;
185 NTuple::Array<double> ext_path1;
186 NTuple::Array<double> ext_path2;
187 NTuple::Array<double> ext_zrhit1;
188 NTuple::Array<double> ext_zrhit2;
189 NTuple::Array<double> ext_errzr1;
190 NTuple::Array<double> ext_errzr2;
191 NTuple::Array<double> ext_theta1;
192 NTuple::Array<double> ext_theta2;
193 NTuple::Array<double> ext_phi1;
194 NTuple::Array<double> ext_phi2;
195 NTuple::Array<int> ext_hitcase1;
196 NTuple::Array<int> ext_hitcase2;
197 NTuple::Array<int> ext_hitcase;
198 NTuple::Array<int> ext_quality;
199
200 NTuple::Tuple*& tof_tuple;
201 NTuple::Item<int> tof_run;
202 NTuple::Item<int> tof_event;
203 NTuple::Item<int> tof_toftrackid;
204 NTuple::Item<int> tof_trackid;
205 NTuple::Item<int> tof_charge;
206 NTuple::Array<double> tof_pt;
207 NTuple::Array<double> tof_p;
208 NTuple::Item<int> tof_id1;
209 NTuple::Item<int> tof_id2;
210 NTuple::Item<int> tof_istrip1;
211 NTuple::Item<int> tof_istrip2;
212 NTuple::Item<int> tof_dstrip1;
213 NTuple::Item<int> tof_dstrip2;
214 NTuple::Item<int> tof_barrel;
215 NTuple::Item<int> tof_hitcase;
216 NTuple::Item<double> tof_momentum;
217 NTuple::Item<double> tof_path1;
218 NTuple::Item<double> tof_path2;
219 NTuple::Item<double> tof_zrhit1;
220 NTuple::Item<double> tof_zrhit2;
221 NTuple::Item<double> tof_errzr1;
222 NTuple::Item<double> tof_errzr2;
223 NTuple::Item<double> tof_xhit1;
224 NTuple::Item<double> tof_yhit1;
225 NTuple::Item<double> tof_xhit2;
226 NTuple::Item<double> tof_yhit2;
227 NTuple::Array<double> tof_kal;
228 NTuple::Array<double> tof_zr1;
229 NTuple::Array<double> tof_zr2;
230 NTuple::Item<double> tof_ztdc1;
231 NTuple::Item<double> tof_ztdc2;
232 NTuple::Item<double> tof_zadc1;
233 NTuple::Item<double> tof_zadc2;
234 NTuple::Item<double> tof_zt1;
235 NTuple::Item<double> tof_zt2;
236 NTuple::Item<double> tof_zt3;
237 NTuple::Item<double> tof_zt4;
238 NTuple::Item<double> tof_zq1;
239 NTuple::Item<double> tof_zq2;
240 NTuple::Item<double> tof_zq3;
241 NTuple::Item<double> tof_zq4;
242 NTuple::Item<int> tof_size1;
243 NTuple::Item<int> tof_size2;
244 NTuple::Item<int> tof_size3;
245 NTuple::Item<int> tof_size4;
246 NTuple::Item<double> tof_theta1;
247 NTuple::Item<double> tof_theta2;
248 NTuple::Item<double> tof_phi1;
249 NTuple::Item<double> tof_phi2;
250 NTuple::Item<int> tof_quality1;
251 NTuple::Item<int> tof_quality2;
252 NTuple::Item<int> tof_quality;
253 NTuple::Item<int> tof_changed;
254 NTuple::Item<int> tof_tofid1;
255 NTuple::Item<int> tof_tofid2;
256 NTuple::Item<int> tof_strip1;
257 NTuple::Item<int> tof_strip2;
258 NTuple::Item<int> tof_board1;
259 NTuple::Item<int> tof_board2;
260 NTuple::Item<int> tof_crate1;
261 NTuple::Item<int> tof_crate2;
262 NTuple::Item<int> tof_fee1;
263 NTuple::Item<int> tof_fee2;
264 NTuple::Item<double> tof_channel1;
265 NTuple::Item<double> tof_channel2;
266 NTuple::Item<double> tof_channel3;
267 NTuple::Item<double> tof_channel4;
268 NTuple::Item<double> tof_ph11;
269 NTuple::Item<double> tof_ph12;
270 NTuple::Item<double> tof_ph21;
271 NTuple::Item<double> tof_ph22;
272 NTuple::Item<double> tof_ph1;
273 NTuple::Item<double> tof_ph2;
274 NTuple::Item<double> tof_ph;
275 NTuple::Item<double> tof_tofe11;
276 NTuple::Item<double> tof_tofe12;
277 NTuple::Item<double> tof_tofe21;
278 NTuple::Item<double> tof_tofe22;
279 NTuple::Item<double> tof_tofe1;
280 NTuple::Item<double> tof_tofe2;
281 NTuple::Item<double> tof_tofe;
282 NTuple::Item<double> tof_tofmu11;
283 NTuple::Item<double> tof_tofmu12;
284 NTuple::Item<double> tof_tofmu21;
285 NTuple::Item<double> tof_tofmu22;
286 NTuple::Item<double> tof_tofmu1;
287 NTuple::Item<double> tof_tofmu2;
288 NTuple::Item<double> tof_tofmu;
289 NTuple::Item<double> tof_tofpi11;
290 NTuple::Item<double> tof_tofpi12;
291 NTuple::Item<double> tof_tofpi21;
292 NTuple::Item<double> tof_tofpi22;
293 NTuple::Item<double> tof_tofpi1;
294 NTuple::Item<double> tof_tofpi2;
295 NTuple::Item<double> tof_tofpi;
296 NTuple::Item<double> tof_tofk11;
297 NTuple::Item<double> tof_tofk12;
298 NTuple::Item<double> tof_tofk21;
299 NTuple::Item<double> tof_tofk22;
300 NTuple::Item<double> tof_tofk1;
301 NTuple::Item<double> tof_tofk2;
302 NTuple::Item<double> tof_tofk;
303 NTuple::Item<double> tof_tofp11;
304 NTuple::Item<double> tof_tofp12;
305 NTuple::Item<double> tof_tofp21;
306 NTuple::Item<double> tof_tofp22;
307 NTuple::Item<double> tof_tofp1;
308 NTuple::Item<double> tof_tofp2;
309 NTuple::Item<double> tof_tofp;
310 NTuple::Item<double> tof_qch1;
311 NTuple::Item<double> tof_qch2;
312 NTuple::Item<double> tof_qch3;
313 NTuple::Item<double> tof_qch4;
314 NTuple::Item<double> tof_adc1;
315 NTuple::Item<double> tof_adc2;
316 NTuple::Item<double> tof_adc3;
317 NTuple::Item<double> tof_adc4;
318 NTuple::Item<double> tof_tdc1;
319 NTuple::Item<double> tof_tdc2;
320 NTuple::Item<double> tof_tdc3;
321 NTuple::Item<double> tof_tdc4;
322 NTuple::Item<double> tof_texpe1;
323 NTuple::Item<double> tof_texpmu1;
324 NTuple::Item<double> tof_texppi1;
325 NTuple::Item<double> tof_texpk1;
326 NTuple::Item<double> tof_texpp1;
327 NTuple::Item<double> tof_texpe2;
328 NTuple::Item<double> tof_texpmu2;
329 NTuple::Item<double> tof_texppi2;
330 NTuple::Item<double> tof_texpk2;
331 NTuple::Item<double> tof_texpp2;
332 NTuple::Item<double> tof_texpe;
333 NTuple::Item<double> tof_texpmu;
334 NTuple::Item<double> tof_texppi;
335 NTuple::Item<double> tof_texpk;
336 NTuple::Item<double> tof_texpp;
337 NTuple::Item<double> tof_tdiff1;
338 NTuple::Item<double> tof_tdiff2;
339 NTuple::Item<double> tof_trig;
340 NTuple::Item<double> tof_estime;
341 NTuple::Item<int> tof_t0stat;
342 NTuple::Item<int> tof_mctrkid;
343 NTuple::Item<double> tof_mcp;
344 NTuple::Item<double> tof_mctofp;
345 NTuple::Item<double> tof_mczrhit;
346 NTuple::Item<double> tof_mcpath;
347 NTuple::Item<double> tof_mctexp;
348
349 NTuple::Tuple*& bb_tuple;
350 NTuple::Item<int> bb_run;
351 NTuple::Item<int> bb_event;
352 NTuple::Item<int> bb_trksize;
353 NTuple::Item<int> bb_mdcsize;
354 NTuple::Item<int> bb_emcsize;
355 NTuple::Item<int> bb_trk1;
356 NTuple::Item<double> bb_pmdc1;
357 NTuple::Item<double> bb_ptmdc1;
358 NTuple::Item<double> bb_theta1;
359 NTuple::Item<double> bb_phi1;
360 NTuple::Item<double> bb_x1;
361 NTuple::Item<double> bb_y1;
362 NTuple::Item<double> bb_z1;
363 NTuple::Item<double> bb_r1;
364 NTuple::Item<int> bb_charge1;
365 NTuple::Item<double> bb_chi1;
366 NTuple::Item<double> bb_ndof1;
367 NTuple::Item<int> bb_layer1;
368 NTuple::Item<int> bb_trk2;
369 NTuple::Item<double> bb_pmdc2;
370 NTuple::Item<double> bb_ptmdc2;
371 NTuple::Item<double> bb_theta2;
372 NTuple::Item<double> bb_phi2;
373 NTuple::Item<double> bb_x2;
374 NTuple::Item<double> bb_y2;
375 NTuple::Item<double> bb_z2;
376 NTuple::Item<double> bb_r2;
377 NTuple::Item<int> bb_charge2;
378 NTuple::Item<double> bb_chi2;
379 NTuple::Item<double> bb_ndof2;
380 NTuple::Item<int> bb_layer2;
381 NTuple::Item<double> bb_dang;
382 NTuple::Item<double> bb_dphi;
383 NTuple::Item<double> bb_pe1;
384 NTuple::Item<double> bb_pte1;
385 NTuple::Item<double> bb_pe2;
386 NTuple::Item<double> bb_pte2;
387 NTuple::Item<double> bb_pmu1;
388 NTuple::Item<double> bb_ptmu1;
389 NTuple::Item<double> bb_pmu2;
390 NTuple::Item<double> bb_ptmu2;
391 NTuple::Item<double> bb_extx1;
392 NTuple::Item<double> bb_exty1;
393 NTuple::Item<double> bb_extz1;
394 NTuple::Item<double> bb_extx2;
395 NTuple::Item<double> bb_exty2;
396 NTuple::Item<double> bb_extz2;
397 NTuple::Item<double> bb_emctrk1;
398 NTuple::Item<double> bb_emcx1;
399 NTuple::Item<double> bb_emcy1;
400 NTuple::Item<double> bb_emcz1;
401 NTuple::Item<double> bb_e1;
402 NTuple::Item<double> bb_th1;
403 NTuple::Item<double> bb_ph1;
404 NTuple::Item<double> bb_emctrk2;
405 NTuple::Item<double> bb_emcx2;
406 NTuple::Item<double> bb_emcy2;
407 NTuple::Item<double> bb_emcz2;
408 NTuple::Item<double> bb_e2;
409 NTuple::Item<double> bb_th2;
410 NTuple::Item<double> bb_ph2;
411 NTuple::Item<double> bb_dr1;
412 NTuple::Item<double> bb_drxy1;
413 NTuple::Item<double> bb_dz1;
414 NTuple::Item<double> bb_dr2;
415 NTuple::Item<double> bb_drxy2;
416 NTuple::Item<double> bb_dz2;
417 NTuple::Item<double> bb_etot;
418
419};
420#endif
ObjectVector< RecExtTrack > RecExtTrackCol
ObjectVector< RecMdcKalTrack > RecMdcKalTrackCol
ObjectVector< RecMdcTrack > RecMdcTrackCol
ObjectVector< TofDigi > TofDigiCol
void Fill_TofTrack(Event::EventHeader &, TofTrack *&, double, int, TrigData &)
void Fill_TofTrack(Event::EventHeader &, TofTrack *&, double, int)
void Fill_MRPC(Event::EventHeader &, TofData *&, double, int)
void Fill(Event::EventHeader &, RecMdcTrack *&, RecMdcKalTrack *&, RecExtTrack *&)
void Fill_Endcap(Event::EventHeader &, TofData *&, double, int)
void Fill_TofTrack(Event::EventHeader &, TofTrack *&, double, int, RecMdcKalTrackCol &, TofMcHitCol &, McParticleCol &, std::string)
void Fill_Barrel(Event::EventHeader &, TofData *&, double, int)
void FillCol(Event::EventHeader &, RecMdcTrackCol &, RecMdcKalTrackCol &, RecExtTrackCol &)
void Fill_TofTrack(Event::EventHeader &, TofTrack *&, double, int, RecMdcKalTrackCol &)
TofCheckDigi(NTuple::Tuple *&digi, NTuple::Tuple *&barrel, NTuple::Tuple *&endcap, NTuple::Tuple *&mrpc, NTuple::Tuple *&ext, NTuple::Tuple *&tof, NTuple::Tuple *&bhabha)
void FillCol(Event::EventHeader &, RecExtTrackCol &, RecMdcTrackCol &, RecEmcShowerCol &, RecMdcKalTrackCol &)
void FillCol(Event::EventHeader &, TofDigiCol &, double, int)
void FillCol(Event::EventHeader &, TofDataVector &, double, int)
void FillCol(Event::EventHeader &, TofDataMap &, double, int)
ObjectList< McParticle > McParticleCol
ObjectVector< TofMcHit > TofMcHitCol