20 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/rootlogon.C");
37 FairRunAna *
fRun=
new FairRunAna();
38 fRun->SetInputFile(inFile);
39 fRun->SetOutputFile(outFile);
46 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
47 FairParRootFileIo*
parInput1 =
new FairParRootFileIo();
48 parInput1->open(parFile.Data());
50 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
51 parIo1->open(allDigiFile.Data(),
"in");
53 rtdb->setFirstInput(parInput1);
54 rtdb->setSecondInput(parIo1);
59 if(mcMode==
"TGeant3") tpcClusterizer->SetMereChargeConversion();
61 fRun->AddTask(tpcClusterizer);
63 PndTpcDriftTask*
tpcDrifter =
new PndTpcDriftTask();
65 tpcDrifter->SetDistort(
false);
66 fRun->AddTask(tpcDrifter);
68 PndTpcGemTask*
tpcGem =
new PndTpcGemTask();
70 fRun->AddTask(tpcGem);
72 PndTpcPadResponseTask*
tpcPadResponse =
new PndTpcPadResponseTask();
74 fRun->AddTask(tpcPadResponse);
76 PndTpcElectronicsTask*
tpcElec =
new PndTpcElectronicsTask();
77 tpcElec->SetPersistence();
78 fRun->AddTask(tpcElec);
80 PndTpcEvtTimeGenTask* evttimegen =
new PndTpcEvtTimeGenTask();
81 evttimegen->SetPersistence();
82 evttimegen->SetEvtRate(1E7);
84 fRun->AddTask(evttimegen);
86 PndTpcClusterFinderTask*
tpcCF =
new PndTpcClusterFinderTask();
88 tpcCF->SetPersistence();
90 tpcCF->SetThreshold(1);
91 tpcCF->SetSingleDigiClusterAmpCut(0.);
92 tpcCF->SetClusterAmpCut(0.);
93 tpcCF->SetErrorPars(600.,400.);
94 tpcCF->SetSimpleClustering();
100 fRun->AddTask(mvddigi);
104 fRun->AddTask(mvdmccls);
111 fRun->AddTask(emcHitsToWaveform);
112 fRun->AddTask(emcWaveformToDigi);
115 fRun->AddTask(emcMakeCluster);
118 fRun->AddTask(emcMakeBump);
121 fRun->AddTask(emcHdrFiller);
126 fRun->AddTask(mdtHitProd);
129 fRun->AddTask(mdtTrkProd);
133 drchit->SetVerbose(iVerbose);
134 fRun->AddTask(drchit);
140 fRun->AddTask(ftsHitProducer);
145 fRun->AddTask(gemDigitize);
148 fRun->AddTask(gemFindHits);
152 fRun->Run(0, nEvents);
164 cout << endl << endl;
165 cout <<
"Macro finished succesfully." << endl;
166 cout <<
"Output file is " << outFile << endl;
167 cout <<
"Parameter file is " << parFile << endl;
168 cout <<
"Real time " << rtime <<
" s, CPU time " << ctime <<
" s" << endl;
PndGemFindHits * gemFindHits
PndEmcHitsToWaveform * emcHitsToWaveform
PndEmcMakeBump * emcMakeBump
PndMvdStripClusterTask * mvdmccls
PndEmcHdrFiller * emcHdrFiller
PndMdtHitProducerIdeal * mdtHitProd
PndTpcClusterizerTask * tpcClusterizer
PndDrcHitProducerReal * drchit
FairParAsciiFileIo * parIo1
PndEmcMakeCluster * emcMakeCluster
PndTpcPadResponseTask * tpcPadResponse
Takes clusters and slits them up into bumps.
void SetVerbose(Int_t iVerbose)
PndGemDigitize * gemDigitize
PndEmcWaveformToDigi * emcWaveformToDigi
Task to cluster PndEmcDigis.
PndTpcElectronicsTask * tpcElec
PndTpcDriftTask * tpcDrifter
PndMdtTrkProducer * mdtTrkProd
PndFtsHitProducerRealFast * ftsHitProducer
FairParRootFileIo * parInput1
PndTpcClusterFinderTask * tpcCF
Task to create Emc header.
void SetPositionSmearing(Float_t res)
Set the smearing of the PndMdtHit position.