19 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/basiclibs.C");
21 gSystem->Load(
"libGeoBase");
22 gSystem->Load(
"libParBase");
23 gSystem->Load(
"libBase");
24 gSystem->Load(
"libPndData");
25 gSystem->Load(
"libField");
26 gSystem->Load(
"libPassive");
27 gSystem->Load(
"libGen");
28 gSystem->Load(
"libEmc");
29 gSystem->Load(
"libgenfit");
30 gSystem->Load(
"libtpc");
31 gSystem->Load(
"libtpcreco");
32 gSystem->Load(
"libtrackrep");
33 gSystem->Load(
"librecotasks");
34 gSystem->Load(
"libMvd");
35 gSystem->Load(
"libMvdReco");
36 gSystem->Load(
"libLHETrack");
51 FairRunAna *
fRun=
new FairRunAna();
52 fRun->SetInputFile(inFile);
53 fRun->SetOutputFile(outFile);
59 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
60 FairParRootFileIo*
parInput1 =
new FairParRootFileIo();
61 parInput1->open(parFile.Data());
63 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
64 parIo1->open(allDigiFile.Data(),
"in");
66 rtdb->setFirstInput(parInput1);
67 rtdb->setSecondInput(parIo1);
74 fRun->AddTask(tpcClusterizer);
78 tpcDrifter->SetDistort(
false);
79 fRun->AddTask(tpcDrifter);
81 PndTpcGemTask*
tpcGem =
new PndTpcGemTask();
83 fRun->AddTask(tpcGem);
86 tpcPadResponse->SetPersistence();
87 fRun->AddTask(tpcPadResponse);
89 PndTpcElectronicsTask*
tpcElec =
new PndTpcElectronicsTask();
90 tpcElec->SetPersistence();
91 fRun->AddTask(tpcElec);
93 PndTpcClusterFinderTask*
tpcCF =
new PndTpcClusterFinderTask();
94 tpcCF->SetPersistence();
131 mvdPixProd->SetVerbose(iVerbose);
132 fRun->AddTask(mvdPixProd);
139 mvdmccls->SetVerbose(iVerbose);
140 fRun->AddTask(mvdmccls);
144 mvdClusterizer->SetVerbose(iVerbose);
145 fRun->AddTask(mvdClusterizer);
154 fRun->AddTask(emcHitProd);
161 fRun->AddTask(emcHitsToWaveform);
162 fRun->AddTask(emcWaveformToDigi);
165 fRun->AddTask(emcMakeCluster);
168 fRun->AddTask(emcHdrFiller);
171 fRun->AddTask(emcMakeBump);
174 fRun->AddTask(emcMakeRecoHit);
178 PndTpcLheHitsMaker*
trackMS =
new PndTpcLheHitsMaker(
"Tracking routine");
181 trackMS->SetTpcMode(2, -1);
182 trackMS->SetMvdMode(2, -1);
183 trackMS->SetEmcMode(0);
184 fRun->AddTask(trackMS);
187 fRun->AddTask(trackFinder);
189 PndTpcLheTrackFitter*
trackFitter =
new PndTpcLheTrackFitter(
"fitting");
190 fRun->AddTask(trackFitter);
194 fRun->Run(0, nEvents);
202 cout << endl << endl;
203 cout <<
"Macro finished succesfully." << endl;
204 cout <<
"Output file is " << outFile << endl;
205 cout <<
"Parameter file is " << parFile << endl;
206 cout <<
"Real time " << rtime <<
" s, CPU time " << ctime <<
" s" << endl;
PndMvdStripHitProducer * mvdHitProd
Create PndEmcRecoHit from PndEmcBump.
PndEmcHitsToWaveform * emcHitsToWaveform
PndMvdPixelClusterTask * mvdClusterizer
Hit Producer Task for strip detectors.
PndMvdHybridHitProducer * mvdPixProd
creates PndEmcHits from PndEmcPoints
PndEmcMakeBump * emcMakeBump
PndMvdStripClusterTask * mvdmccls
TVector2 botAnchor(0., 0.)
PndTpcClusterizerTask * tpcClusterizer
PndEmcHdrFiller * emcHdrFiller
PndEmcMakeCluster * emcMakeCluster
PndLheTrackFitter * trackFitter
PndTpcPadResponseTask * tpcPadResponse
Takes clusters and slits them up into bumps.
FairParRootFileIo * parInput1
PndEmcWaveformToDigi * emcWaveformToDigi
FairParAsciiFileIo * parIo1
Task to cluster PndEmcDigis.
PndLheHitsMaker * trackMS
PndTpcElectronicsTask * tpcElec
PndLheTrackFinder * trackFinder
PndEmcMakeDigi * emcMakeDigi
PndTpcDriftTask * tpcDrifter
PndTpcClusterFinderTask * tpcCF
Task to create Emc header.
Task to create PndEmcDigi from PndEmcHit.
TVector2 topAnchor(0., 0.)