5 void RunTbyT(Int_t nevents=999,
6 const char *eventFile1=
"/star/data98/reco/AuAu200_production/FullField/eval_Sti/2010/030/11030018/st_physics_11030018_raw_1020001.event.root",
8 const char *eventFile2=
"/star/data99/reco/AuAu200_production/FullField/eval_Stv/2010/030/11030018/st_physics_11030018_raw_1020001.event.root",
10 const char* tFile=
"TbyT.root") {
11 gROOT->LoadMacro(
"bfc.C");
12 TString Chain(
"StEvent,nodefault");
13 bfc(-2,Chain.Data(),0,0,tFile);
14 gSystem->Load(
"StTrackMateMaker");
15 cout <<
"Job will run on File: " << eventFile1 << endl;
16 cout <<
"Correspondibg new File: " << eventFile2 << endl;
17 gSystem->Load(
"StIOMaker");
28 Int_t initStat = chain->Init();
29 if (initStat) chain->Fatal(initStat,
"during Init()");
32 StIOMaker *makers[2] = {ioMaker1, ioMaker2};
34 for (Int_t ev = 0; ev < nevents; ev++) {
37 while ((! events[0] || ! events[1])) {
38 for (Int_t m = 0; m < 2; m++) {
41 iMake = makers[m]->MakeRead(ukey);
43 events[m] = (
StEvent *) makers[m]->GetDataSet(
"StEvent");
46 if (! (events[0] && events[1]))
continue;
47 if (events[0]->runId() != events[1]->runId() ||
48 events[0]->id() != events[1]->id()) {
49 cout <<
"MisMatched runId/Event\t"
50 << events[0]->runId() <<
"/" << events[0]->id() <<
"\t"
51 << events[1]->runId() <<
"/" << events[1]->id() << endl;
52 if (events[0]->runId() < events[1]->runId() ||
53 events[0]->runId() == events[1]->runId() &&
54 events[0]->
id() < events[1]->
id()) {
55 events[0] = 0; ukey =
StUKey(events[1]->runId(),events[1]->
id());
57 events[1] = 0; ukey =
StUKey(events[0]->runId(),events[0]->
id());
63 if (! gROOT->IsBatch()) {
65 }
else {_debugAsk = 0;}
68 events[0] = events[1] = 0;
virtual void Clear(Option_t *opt)
User defined functions.
virtual void Clear(Option_t *option="")
User defined functions.