3 if ( nStations != 3 && nStations != 4 ) {
4 cout <<
"WRONG number of stations, only 3 or 4 allowed." << endl;
12 baseName.Form(
"Gem_%dStations_%d_%dpart_n%d",nStations,pdgC,nparts,
nEvents);
23 FairRunAna *
fRun=
new FairRunAna();
24 fRun->SetInputFile(MCFile);
25 fRun->SetOutputFile(outFile);
29 if ( nStations == 4 ) allDigiFile = sysFile+
"/macro/params/gem_4Stations.digi.par";
31 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
32 FairParRootFileIo*
parInput1 =
new FairParRootFileIo();
33 parInput1->open(parFile.Data());
35 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
36 parIo1->open(allDigiFile.Data(),
"in");
38 rtdb->setFirstInput(parInput1);
39 rtdb->setSecondInput(parIo1);
44 fRun->AddTask(gemDigitize);
47 fRun->AddTask(gemFindHits);
57 fRun->AddTask(finderTask);
75 FairGeane *
Geane =
new FairGeane();
84 fRun->AddTask(recoKalman);
89 fRun->AddTask(trackFinderQA);
100 cout << endl << endl;
101 cout <<
"Macro finished succesfully." << endl;
102 cout <<
"Output file is " << outFile << endl;
103 cout <<
"Parameter file is " << parFile << endl;
104 cout <<
"Real time " << rtime <<
" s, CPU time " << ctime <<
" s" << endl;
PndGemFindHits * gemFindHits
void SetPrimary(const Int_t &primary)
OnHits track finding algorithm.
Int_t gem_boxTracksN(Int_t nStations, Int_t nparts, Int_t nEvents=1000, Int_t pdgC=211, int verboseLevel=0)
void UseFinder(PndGemTrackFinder *finder)
void SetTrackOutBranchName(const TString &name)
void SetVerbose(const Int_t &verbose)
void SetVerbose(const Int_t &verbose)
FairParRootFileIo * parInput1
PndGemDigitize * gemDigitize
FairParAsciiFileIo * parIo1
void SetTrackInBranchName(const TString &name)
PndRecoKalmanTask * recoKalman
track finding quality assesment task
Task class for track finding in the Gem.
void SetUseHitOrDigi(TString useHitOrDigi="hit")