50 void bfcread_eventBranch(
53 "/afs/rhic.bnl.gov/star/data/samples/gstar.event.root",
54 const char *fname=
"qa_event.out")
57 cout <<
" events to process = " << nevents << endl;
58 cout <<
" Input File Name = " << MainFile << endl;
59 cout <<
" Output file containing printouts = " << fname << endl;
63 fout <<
" Running: bfcread_eventBranch.C " << endl;
64 fout <<
" events to process = " << nevents << endl;
65 fout <<
" Input File Name = " << MainFile << endl;
66 fout <<
" Output file containing printouts = " << fname << endl;
69 gSystem->Load(
"St_base");
70 gSystem->Load(
"StChain");
71 gSystem->Load(
"libglobal_Tables");
72 gSystem->Load(
"StUtilities");
73 gSystem->Load(
"StIOMaker");
74 gSystem->Load(
"StarClassLibrary");
75 gSystem->Load(
"StBichsel");
76 gSystem->Load(
"StEvent");
78 gSystem->Load(
"StAnalysisMaker");
88 IOMk->SetBranch(
"*",0,
"0");
89 IOMk->SetBranch(
"eventBranch",0,
"r");
107 Float_t countevobj=0.0;
108 Float_t countevtab=0.0;
113 EventLoop:
if (ijk <= nevents && istat!=2) {
118 cout << endl <<
"============================ Event " << ijk
119 <<
" start ============================" << endl;
121 fout << endl <<
"============================ Event " << ijk
122 <<
" start ============================" << endl;
125 istat = chain->
Make(ijk);
129 deventBranch=chain->GetDataSet(
"eventBranch");
134 cout << endl <<
" QAInfo: in eventBranch " << endl;
135 fout << endl <<
" QAInfo: in eventBranch " << endl;
137 while (dde=eventBIter.
Next()) {
141 cout <<
" QAInfo: found object: " << dde->GetName() << endl;
142 fout <<
" QAInfo: found object: " << dde->GetName() << endl;
144 if (dde->InheritsFrom(
"TTable")) {
146 cout <<
" QAInfo: it's a table with #rows = "
148 fout <<
" QAInfo: it's a table with #rows = "
154 TString deName = dde->GetName();
155 if (deName ==
"BfcStatus") {
164 for (ij=0; ij< bfcstat->
GetNRows(); ij++)
167 " QAInfo: BfcStatus table -- row " << ij <<
168 ", Maker: " << bth[ij]->maker_name <<
169 " has istat = " << bth[ij]->status << endl;
171 " QAInfo: BfcStatus table -- row " << ij <<
172 ", Maker: " << bth[ij]->maker_name <<
173 " has istat = " << bth[ij]->status << endl;
176 elseif (deName ==
"StEvent") {
182 cout << endl <<
" QAInfo: ev# " << countev <<
183 ", # objects/tables found in eventBranch = " <<
185 Countevtab << endl << endl;
187 fout << endl <<
" QAInfo: ev# " << countev <<
188 ", # objects/tables found in eventBranch = " <<
190 Countevtab << endl << endl;
195 {cout <<
"Last event processed. Status = " << istat << endl;}
198 {cout <<
"Error event processed. Status = " << istat << endl;}
205 countevobj /= countev;
206 countevtab /= countev;
209 cout <<
" QAInfo: End of Job " << endl;
210 cout <<
" QAInfo: # times Make called = " << ijk << endl;
211 cout <<
" QAInfo: # events read = " << countev << endl;
212 cout <<
" QAInfo: #ev with eventBranch dataset = " << countevB << endl;
213 cout <<
" QAInfo: #ev with StEvent dataset = " << countevSt << endl;
214 cout <<
" QAInfo: #ev with BfcStatus table = " << countevBfc << endl;
215 cout <<
" QAInfo: avg # tables per event = " << countevtab << endl;
216 cout <<
" QAInfo: avg # objects per event = " << countevobj << endl << endl;
219 fout <<
" QAInfo: End of Job " << endl;
220 fout <<
" QAInfo: # times Make called = " << ijk << endl;
221 fout <<
" QAInfo: # events read = " << countev << endl;
222 fout <<
" QAInfo: #ev with eventBranch dataset = " << countevB << endl;
223 fout <<
" QAInfo: #ev with StEvent dataset = " << countevSt << endl;
224 fout <<
" QAInfo: #ev with BfcStatus table = " << countevBfc << endl;
225 fout <<
" QAInfo: avg # tables per event = " << countevtab << endl;
226 fout <<
" QAInfo: avg # objects per event = " << countevobj << endl << endl;
virtual void SetIOMode(Option_t *iomode="w")
number of transactions
virtual void Clear(Option_t *option="")
User defined functions.
A typical Analysis Class.
virtual Long_t GetNRows() const
Returns the number of the used rows for the wrapped table.
virtual TDataSet * Next() const
virtual TDataSet * Find(const char *path) const