8 if (fff.IsZombie()) fileok=
false;
9 TTree *
t=(TTree*)fff.Get(
"pndsim");
10 if (t==0
x0) fileok=
false;
12 if (!fileok) cout <<
"Skipping broken file '"<<fn<<
"'"<<endl;
22 for (
int i=min;
i<=
max;++
i) {
23 TString fname = TString::Format(
"%s_%d_pid.root",pref.Data(),
i);
26 if (firstfile) fRun->SetInputFile(fname);
27 else fRun->AddFile(fname);
38 double pbarmom = 9.808065;
41 FairRunAna *
fRun=
new FairRunAna();
48 inParFile =
"simparams.root";
50 fRun->SetInputFile(pref);
55 OutFile = TString::Format(
"%s_ana_%d_%d.root",pref.Data(),
min,
max);
56 inParFile = TString::Format(
"%s_%d_par.root",pref.Data(),
min);
62 TString pidParFile =
TString(gSystem->Getenv(
"VMCWORKDIR"))+
"/macro/params/all.par";
66 FairLogger::GetLogger()->SetLogToFile(kFALSE);
67 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
70 FairParRootFileIo* parIO =
new FairParRootFileIo();
71 parIO->open(inParFile);
72 FairParAsciiFileIo* parIOPid =
new FairParAsciiFileIo();
73 parIOPid->open(pidParFile.Data(),
"in");
75 rtdb->setFirstInput(parIO);
76 rtdb->setSecondInput(parIOPid);
77 rtdb->setOutput(parIO);
79 fRun->SetOutputFile(OutFile);
83 fRun->AddTask(anaTask);
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
bool checkfile(TString fn)
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
void tut_ana_task_d0(TString pref="pid_complete.root", int min=-1, int max=1, int nevts=0)
void attachFiles(FairRunAna *fRun, TString pref, int min, int max)