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";
65 FairLogger::GetLogger()->SetLogToFile(kFALSE);
66 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
69 FairParRootFileIo* parIO =
new FairParRootFileIo();
70 parIO->open(inParFile);
71 FairParAsciiFileIo* parIOPid =
new FairParAsciiFileIo();
72 parIOPid->open(pidParFile.Data(),
"in");
74 rtdb->setFirstInput(parIO);
75 rtdb->setSecondInput(parIOPid);
76 rtdb->setOutput(parIO);
78 fRun->SetOutputFile(OutFile);
82 fRun->AddTask(anaTask);
void tut_ana_task(TString pref="pid_complete.root", int min=-1, int max=1, int nevts=0)
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
void attachFiles(FairRunAna *fRun, TString pref, int min, int max)
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
bool checkfile(TString fn)