14 const Int_t kMaxfTracks = 10000;
15 const Int_t kMaxfHits = 400000;
30 Int_t fEvtHdr_fEvtNum;
33 Double32_t fEvtHdr_fField;
34 Double32_t fVertex[3];
35 Double32_t fCovariantMatrix[6];
37 UInt_t fTracks_fUniqueID[kMaxfTracks];
38 UInt_t fTracks_fBits[kMaxfTracks];
39 Char_t fTracks_beg[kMaxfTracks];
40 Double32_t fTracks_fInvpT[kMaxfTracks];
41 Double32_t fTracks_fTanL[kMaxfTracks];
42 Double32_t fTracks_fPhi[kMaxfTracks];
43 Double32_t fTracks_fRho[kMaxfTracks];
45 Double32_t fTracks_fInvpTGl[kMaxfTracks];
46 Double32_t fTracks_fTanLGl[kMaxfTracks];
47 Double32_t fTracks_fPhiGl[kMaxfTracks];
48 Double32_t fTracks_fRhoGl[kMaxfTracks];
50 UInt_t fTracks_fNpoint[kMaxfTracks];
51 UInt_t fTracks_fNPpoint[kMaxfTracks];
52 Short_t fTracks_fValid[kMaxfTracks];
53 UInt_t fTracks_fNsp[kMaxfTracks];
54 UInt_t fTracks_fIdHitT[kMaxfTracks][1000];
55 Double32_t fTracks_fdEdx[kMaxfTracks];
56 Double32_t fTracks_fLength[kMaxfTracks];
57 Char_t fTracks_end[kMaxfTracks];
59 UInt_t fHits_fUniqueID[kMaxfHits];
60 UInt_t fHits_fBits[kMaxfHits];
61 Char_t fHits_start[kMaxfHits];
62 Int_t fHits_Id[kMaxfHits];
63 Int_t fHits_sector[kMaxfHits];
64 Int_t fHits_barrel[kMaxfHits];
65 Int_t fHits_layer[kMaxfHits];
66 Int_t fHits_ladder[kMaxfHits];
67 Int_t fHits_wafer[kMaxfHits];
68 Int_t fHits_hybrid[kMaxfHits];
69 Int_t fHits_rdo[kMaxfHits];
70 Double32_t fHits_xG[kMaxfHits];
71 Double32_t fHits_yG[kMaxfHits];
72 Double32_t fHits_zG[kMaxfHits];
73 Double32_t fHits_xGC[kMaxfHits];
74 Double32_t fHits_yGC[kMaxfHits];
75 Double32_t fHits_zGC[kMaxfHits];
76 Double32_t fHits_xL[kMaxfHits];
77 Double32_t fHits_yL[kMaxfHits];
78 Double32_t fHits_zL[kMaxfHits];
79 Double32_t fHits_u[kMaxfHits];
80 Double32_t fHits_v[kMaxfHits];
81 Double32_t fHits_w[kMaxfHits];
82 Double32_t fHits_tuP[kMaxfHits];
83 Double32_t fHits_tvP[kMaxfHits];
84 Double32_t fHits_uP[kMaxfHits];
85 Double32_t fHits_vP[kMaxfHits];
86 Double32_t fHits_pT[kMaxfHits];
87 Double32_t fHits_pMom[kMaxfHits];
88 Double32_t fHits_xPG[kMaxfHits];
89 Double32_t fHits_yPG[kMaxfHits];
90 Double32_t fHits_zPG[kMaxfHits];
91 Double32_t fHits_cxPG[kMaxfHits];
92 Double32_t fHits_cyPG[kMaxfHits];
93 Double32_t fHits_czPG[kMaxfHits];
94 Double32_t fHits_wGu[kMaxfHits];
95 Double32_t fHits_wGv[kMaxfHits];
96 Double32_t fHits_wGw[kMaxfHits];
97 Double32_t fHits_xPL[kMaxfHits];
98 Double32_t fHits_yPL[kMaxfHits];
99 Double32_t fHits_zPL[kMaxfHits];
100 #ifdef __USE_GLOBAL__
101 Double32_t fHits_uPGl[kMaxfHits];
102 Double32_t fHits_vPGl[kMaxfHits];
103 Double32_t fHits_tuPGl[kMaxfHits];
104 Double32_t fHits_tvPGl[kMaxfHits];
105 Double32_t fHits_xPGlG[kMaxfHits];
106 Double32_t fHits_yPGlG[kMaxfHits];
107 Double32_t fHits_zPGlG[kMaxfHits];
108 Double32_t fHits_cxPGlG[kMaxfHits];
109 Double32_t fHits_cyPGlG[kMaxfHits];
110 Double32_t fHits_czPGlG[kMaxfHits];
111 Double32_t fHits_xPGlL[kMaxfHits];
112 Double32_t fHits_yPGlL[kMaxfHits];
113 Double32_t fHits_zPGlL[kMaxfHits];
115 Double32_t fHits_uM[kMaxfHits];
116 Double32_t fHits_vM[kMaxfHits];
117 Double32_t fHits_anode[kMaxfHits];
118 Double32_t fHits_timeb[kMaxfHits];
119 Int_t fHits_NoHitPerTrack[kMaxfHits];
120 Char_t fHits_end[kMaxfHits];
123 Double32_t fHits_uD[kMaxfHits];
124 Double32_t fHits_vD[kMaxfHits];
125 Double32_t fHits_uHat[kMaxfHits];
126 Double32_t fHits_vHat[kMaxfHits];
127 Int_t fHits_NofHits[kMaxfHits];
128 Int_t fHits_NofFHits[kMaxfHits];
129 Int_t fHits_isFitted[kMaxfHits];
130 Int_t fHits_isTrack[kMaxfHits];
131 Int_t fHits_isUsedInFit[kMaxfHits];
132 UInt_t fHits_hitFlag[kMaxfHits];
136 TBranch *b_EventT_fUniqueID;
137 TBranch *b_EventT_fBits;
138 TBranch *b_EventT_fNPTracks;
139 TBranch *b_EventT_fNtrack;
140 TBranch *b_EventT_fNhit;
141 TBranch *b_EventT_fFlag;
142 TBranch *b_EventT_fEvtHdr_fEvtNum;
143 TBranch *b_EventT_fEvtHdr_fRun;
144 TBranch *b_EventT_fEvtHdr_fDate;
145 TBranch *b_EventT_fEvtHdr_fField;
146 TBranch *b_EventT_fVertex;
147 TBranch *b_EventT_fCovariantMatrix;
148 TBranch *b_EventT_fTracks_;
149 TBranch *b_fTracks_fUniqueID;
150 TBranch *b_fTracks_fBits;
151 TBranch *b_fTracks_beg;
152 TBranch *b_fTracks_fInvpT;
153 TBranch *b_fTracks_fTanL;
154 TBranch *b_fTracks_fPhi;
155 TBranch *b_fTracks_fRho;
156 #ifdef __USE_GLOBAL__
157 TBranch *b_fTracks_fInvpTGl;
158 TBranch *b_fTracks_fTanLGl;
159 TBranch *b_fTracks_fPhiGl;
160 TBranch *b_fTracks_fRhoGl;
162 TBranch *b_fTracks_fNpoint;
163 TBranch *b_fTracks_fNPpoint;
164 TBranch *b_fTracks_fValid;
165 TBranch *b_fTracks_fNsp;
166 TBranch *b_fTracks_fIdHitT;
167 TBranch *b_fTracks_fdEdx;
168 TBranch *b_fTracks_fLength;
169 TBranch *b_fTracks_end;
170 TBranch *b_EventT_fHits_;
171 TBranch *b_fHits_fUniqueID;
172 TBranch *b_fHits_fBits;
173 TBranch *b_fHits_start;
175 TBranch *b_fHits_sector;
176 TBranch *b_fHits_barrel;
177 TBranch *b_fHits_layer;
178 TBranch *b_fHits_ladder;
179 TBranch *b_fHits_wafer;
180 TBranch *b_fHits_hybrid;
181 TBranch *b_fHits_rdo;
185 TBranch *b_fHits_xGC;
186 TBranch *b_fHits_yGC;
187 TBranch *b_fHits_zGC;
194 TBranch *b_fHits_tuP;
195 TBranch *b_fHits_tvP;
199 TBranch *b_fHits_pMom;
200 TBranch *b_fHits_xPG;
201 TBranch *b_fHits_yPG;
202 TBranch *b_fHits_zPG;
203 TBranch *b_fHits_cxPG;
204 TBranch *b_fHits_cyPG;
205 TBranch *b_fHits_czPG;
206 TBranch *b_fHits_wGu;
207 TBranch *b_fHits_wGv;
208 TBranch *b_fHits_wGw;
209 TBranch *b_fHits_xPL;
210 TBranch *b_fHits_yPL;
211 TBranch *b_fHits_zPL;
212 #ifdef __USE_GLOBAL__
213 TBranch *b_fHits_uPGl;
214 TBranch *b_fHits_vPGl;
215 TBranch *b_fHits_tuPGl;
216 TBranch *b_fHits_tvPGl;
217 TBranch *b_fHits_xPGlG;
218 TBranch *b_fHits_yPGlG;
219 TBranch *b_fHits_zPGlG;
220 TBranch *b_fHits_cxPGlG;
221 TBranch *b_fHits_cyPGlG;
222 TBranch *b_fHits_czPGlG;
223 TBranch *b_fHits_xPGlL;
224 TBranch *b_fHits_yPGlL;
225 TBranch *b_fHits_zPGlL;
229 TBranch *b_fHits_anode;
230 TBranch *b_fHits_timeb;
231 TBranch *b_fHits_NoHitPerTrack;
234 TBranch *b_fHits_uHat;
235 TBranch *b_fHits_vHat;
236 TBranch *b_fHits_NofHits;
237 TBranch *b_fHits_NofFHits;
238 TBranch *b_fHits_isFitted;
239 TBranch *b_fHits_isTrack;
240 TBranch *b_fHits_isUsedInFit;
241 TBranch *b_fHits_hitFlag;
242 TBranch *b_fHits_end;
243 TBranch *b_EventT_fIsValid;
245 TBase(TTree *tree=0);
247 virtual Int_t
Cut(Long64_t entry);
248 virtual Int_t GetEntry(Long64_t entry);
249 virtual Long64_t LoadTree(Long64_t entry);
250 virtual void Init(TTree *tree);
252 virtual void MakeNt();
253 virtual Bool_t Notify();
254 virtual void Show(Long64_t entry = -1);
259 TBase::TBase(TTree *tree)
264 TFile *f = (TFile*)gROOT->GetListOfFiles()->FindObject(
"Event_6065058_raw_3020003.root");
266 f =
new TFile(
"Event_6065058_raw_3020003.root");
268 tree = (TTree*)gDirectory->Get(
"T");
277 delete fChain->GetCurrentFile();
280 Int_t TBase::GetEntry(Long64_t entry)
283 if (!fChain)
return 0;
284 return fChain->GetEntry(entry);
286 Long64_t TBase::LoadTree(Long64_t entry)
289 if (!fChain)
return -5;
290 Long64_t centry = fChain->LoadTree(entry);
291 if (centry < 0)
return centry;
292 if (!fChain->InheritsFrom(TChain::Class()))
return centry;
293 TChain *chain = (TChain*)fChain;
294 if (chain->GetTreeNumber() !=
fCurrent) {
301 void TBase::Init(TTree *tree)
315 fChain->SetMakeClass(1);
317 fChain->SetBranchAddress(
"fUniqueID", &
fUniqueID, &b_EventT_fUniqueID);
318 fChain->SetBranchAddress(
"fBits", &fBits, &b_EventT_fBits);
319 fChain->SetBranchAddress(
"fNPTracks", &fNPTracks, &b_EventT_fNPTracks);
320 fChain->SetBranchAddress(
"fNtrack", &fNtrack, &b_EventT_fNtrack);
321 fChain->SetBranchAddress(
"fNhit", &fNhit, &b_EventT_fNhit);
322 fChain->SetBranchAddress(
"fFlag", &fFlag, &b_EventT_fFlag);
323 fChain->SetBranchAddress(
"fEvtHdr.fEvtNum", &fEvtHdr_fEvtNum, &b_EventT_fEvtHdr_fEvtNum);
324 fChain->SetBranchAddress(
"fEvtHdr.fRun", &fEvtHdr_fRun, &b_EventT_fEvtHdr_fRun);
325 fChain->SetBranchAddress(
"fEvtHdr.fDate", &fEvtHdr_fDate, &b_EventT_fEvtHdr_fDate);
326 fChain->SetBranchAddress(
"fEvtHdr.fField", &fEvtHdr_fField, &b_EventT_fEvtHdr_fField);
327 fChain->SetBranchAddress(
"fVertex[3]", fVertex, &b_EventT_fVertex);
328 fChain->SetBranchAddress(
"fCovariantMatrix[6]", fCovariantMatrix, &b_EventT_fCovariantMatrix);
329 fChain->SetBranchAddress(
"fTracks", &fTracks_, &b_EventT_fTracks_);
330 fChain->SetBranchAddress(
"fTracks.fUniqueID", fTracks_fUniqueID, &b_fTracks_fUniqueID);
331 fChain->SetBranchAddress(
"fTracks.fBits", fTracks_fBits, &b_fTracks_fBits);
332 fChain->SetBranchAddress(
"fTracks.beg", fTracks_beg, &b_fTracks_beg);
333 fChain->SetBranchAddress(
"fTracks.fInvpT", fTracks_fInvpT, &b_fTracks_fInvpT);
334 fChain->SetBranchAddress(
"fTracks.fTanL", fTracks_fTanL, &b_fTracks_fTanL);
335 fChain->SetBranchAddress(
"fTracks.fPhi", fTracks_fPhi, &b_fTracks_fPhi);
336 fChain->SetBranchAddress(
"fTracks.fRho", fTracks_fRho, &b_fTracks_fRho);
337 #ifdef __USE_GLOBAL__
338 fChain->SetBranchAddress(
"fTracks.fInvpTGl", fTracks_fInvpTGl, &b_fTracks_fInvpTGl);
339 fChain->SetBranchAddress(
"fTracks.fTanLGl", fTracks_fTanLGl, &b_fTracks_fTanLGl);
340 fChain->SetBranchAddress(
"fTracks.fPhiGl", fTracks_fPhiGl, &b_fTracks_fPhiGl);
341 fChain->SetBranchAddress(
"fTracks.fRhoGl", fTracks_fRhoGl, &b_fTracks_fRhoGl);
343 fChain->SetBranchAddress(
"fTracks.fNpoint", fTracks_fNpoint, &b_fTracks_fNpoint);
344 fChain->SetBranchAddress(
"fTracks.fValid", fTracks_fValid, &b_fTracks_fValid);
345 fChain->SetBranchAddress(
"fTracks.fNsp", fTracks_fNsp, &b_fTracks_fNsp);
346 fChain->SetBranchAddress(
"fTracks.fIdHitT[1000]", fTracks_fIdHitT, &b_fTracks_fIdHitT);
347 fChain->SetBranchAddress(
"fTracks.fdEdx", fTracks_fdEdx, &b_fTracks_fdEdx);
348 fChain->SetBranchAddress(
"fTracks.fLength", fTracks_fLength, &b_fTracks_fLength);
349 fChain->SetBranchAddress(
"fTracks.end", fTracks_end, &b_fTracks_end);
350 fChain->SetBranchAddress(
"fHits", &fHits_, &b_EventT_fHits_);
351 fChain->SetBranchAddress(
"fHits.fUniqueID", fHits_fUniqueID, &b_fHits_fUniqueID);
352 fChain->SetBranchAddress(
"fHits.fBits", fHits_fBits, &b_fHits_fBits);
353 fChain->SetBranchAddress(
"fHits.start", fHits_start, &b_fHits_start);
354 fChain->SetBranchAddress(
"fHits.Id", fHits_Id, &b_fHits_Id);
355 fChain->SetBranchAddress(
"fHits.sector", fHits_sector, &b_fHits_sector);
356 fChain->SetBranchAddress(
"fHits.barrel", fHits_barrel, &b_fHits_barrel);
357 fChain->SetBranchAddress(
"fHits.layer", fHits_layer, &b_fHits_layer);
358 fChain->SetBranchAddress(
"fHits.ladder", fHits_ladder, &b_fHits_ladder);
359 fChain->SetBranchAddress(
"fHits.wafer", fHits_wafer, &b_fHits_wafer);
360 fChain->SetBranchAddress(
"fHits.hybrid", fHits_hybrid, &b_fHits_hybrid);
361 fChain->SetBranchAddress(
"fHits.rdo", fHits_rdo, &b_fHits_rdo);
362 fChain->SetBranchAddress(
"fHits.xG", fHits_xG, &b_fHits_xG);
363 fChain->SetBranchAddress(
"fHits.yG", fHits_yG, &b_fHits_yG);
364 fChain->SetBranchAddress(
"fHits.zG", fHits_zG, &b_fHits_zG);
365 fChain->SetBranchAddress(
"fHits.xGC", fHits_xGC, &b_fHits_xGC);
366 fChain->SetBranchAddress(
"fHits.yGC", fHits_yGC, &b_fHits_yGC);
367 fChain->SetBranchAddress(
"fHits.zGC", fHits_zGC, &b_fHits_zGC);
368 fChain->SetBranchAddress(
"fHits.xL", fHits_xL, &b_fHits_xL);
369 fChain->SetBranchAddress(
"fHits.yL", fHits_yL, &b_fHits_yL);
370 fChain->SetBranchAddress(
"fHits.zL", fHits_zL, &b_fHits_zL);
371 fChain->SetBranchAddress(
"fHits.u", fHits_u, &b_fHits_u);
372 fChain->SetBranchAddress(
"fHits.v", fHits_v, &b_fHits_v);
373 fChain->SetBranchAddress(
"fHits.w", fHits_w, &b_fHits_w);
374 fChain->SetBranchAddress(
"fHits.tuP", fHits_tuP, &b_fHits_tuP);
375 fChain->SetBranchAddress(
"fHits.tvP", fHits_tvP, &b_fHits_tvP);
376 fChain->SetBranchAddress(
"fHits.uP", fHits_uP, &b_fHits_uP);
377 fChain->SetBranchAddress(
"fHits.vP", fHits_vP, &b_fHits_vP);
378 fChain->SetBranchAddress(
"fHits.pT", fHits_pT, &b_fHits_pT);
379 fChain->SetBranchAddress(
"fHits.pMom", fHits_pMom, &b_fHits_pMom);
380 fChain->SetBranchAddress(
"fHits.xPG", fHits_xPG, &b_fHits_xPG);
381 fChain->SetBranchAddress(
"fHits.yPG", fHits_yPG, &b_fHits_yPG);
382 fChain->SetBranchAddress(
"fHits.zPG", fHits_zPG, &b_fHits_zPG);
383 fChain->SetBranchAddress(
"fHits.cxPG", fHits_cxPG, &b_fHits_cxPG);
384 fChain->SetBranchAddress(
"fHits.cyPG", fHits_cyPG, &b_fHits_cyPG);
385 fChain->SetBranchAddress(
"fHits.czPG", fHits_czPG, &b_fHits_czPG);
386 fChain->SetBranchAddress(
"fHits.wGu", fHits_wGu, &b_fHits_wGu);
387 fChain->SetBranchAddress(
"fHits.wGv", fHits_wGv, &b_fHits_wGv);
388 fChain->SetBranchAddress(
"fHits.wGw", fHits_wGw, &b_fHits_wGw);
389 fChain->SetBranchAddress(
"fHits.xPL", fHits_xPL, &b_fHits_xPL);
390 fChain->SetBranchAddress(
"fHits.yPL", fHits_yPL, &b_fHits_yPL);
391 fChain->SetBranchAddress(
"fHits.zPL", fHits_zPL, &b_fHits_zPL);
392 #ifdef __USE_GLOBAL__
393 fChain->SetBranchAddress(
"fHits.uPGl", fHits_uPGl, &b_fHits_uPGl);
394 fChain->SetBranchAddress(
"fHits.vPGl", fHits_vPGl, &b_fHits_vPGl);
395 fChain->SetBranchAddress(
"fHits.tuPGl", fHits_tuPGl, &b_fHits_tuPGl);
396 fChain->SetBranchAddress(
"fHits.tvPGl", fHits_tvPGl, &b_fHits_tvPGl);
397 fChain->SetBranchAddress(
"fHits.xPGlG", fHits_xPGlG, &b_fHits_xPGlG);
398 fChain->SetBranchAddress(
"fHits.yPGlG", fHits_yPGlG, &b_fHits_yPGlG);
399 fChain->SetBranchAddress(
"fHits.zPGlG", fHits_zPGlG, &b_fHits_zPGlG);
400 fChain->SetBranchAddress(
"fHits.cxPGlG", fHits_cxPGlG, &b_fHits_cxPGlG);
401 fChain->SetBranchAddress(
"fHits.cyPGlG", fHits_cyPGlG, &b_fHits_cyPGlG);
402 fChain->SetBranchAddress(
"fHits.czPGlG", fHits_czPGlG, &b_fHits_czPGlG);
403 fChain->SetBranchAddress(
"fHits.xPGlL", fHits_xPGlL, &b_fHits_xPGlL);
404 fChain->SetBranchAddress(
"fHits.yPGlL", fHits_yPGlL, &b_fHits_yPGlL);
405 fChain->SetBranchAddress(
"fHits.zPGlL", fHits_zPGlL, &b_fHits_zPGlL);
407 fChain->SetBranchAddress(
"fHits.uM", fHits_uM, &b_fHits_uM);
408 fChain->SetBranchAddress(
"fHits.vM", fHits_vM, &b_fHits_vM);
409 fChain->SetBranchAddress(
"fHits.anode", fHits_anode, &b_fHits_anode);
410 fChain->SetBranchAddress(
"fHits.timeb", fHits_timeb, &b_fHits_timeb);
411 fChain->SetBranchAddress(
"fHits.NoHitPerTrack", fHits_NoHitPerTrack, &b_fHits_NoHitPerTrack);
412 fChain->SetBranchAddress(
"fHits.uD", fHits_uD, &b_fHits_uD);
413 fChain->SetBranchAddress(
"fHits.vD", fHits_vD, &b_fHits_vD);
414 fChain->SetBranchAddress(
"fHits.uHat", fHits_uHat, &b_fHits_uHat);
416 fChain->SetBranchAddress(
"fHits.end", fHits_end, &b_fHits_end);
419 fChain->SetBranchAddress(
"fIsValid", &fIsValid, &b_EventT_fIsValid);
423 Bool_t TBase::Notify()
434 void TBase::Show(Long64_t entry)
441 Int_t TBase::Cut(Long64_t entry)
UInt_t fUniqueID
current Tree number in a TChain
Int_t fCurrent
pointer to the analyzed TTree or TChain