FairRoot/PandaRoot
|
Ideal track finder for all types of tracking detectors The PndIdealTrackFinder combines all hits in given branches into PndTrackCand and calculates the PndTrack based on MC information. More...
#include <PndIdealTrackFinder.h>
Public Member Functions | |
PndIdealTrackFinder () | |
virtual | ~PndIdealTrackFinder () |
virtual InitStatus | Init () |
virtual void | AddBranchName (TString name) |
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken. More... | |
virtual void | AddBranchName (TString name, TString mcName) |
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken. More... | |
virtual void | SetOutputBranchName (TString name) |
virtual void | Exec (Option_t *opt) |
void | SetMomentumSmearing (Double_t sigmax=-1., Double_t sigmay=-1., Double_t sigmaz=-1.) |
void | SetRelativeMomentumSmearing (Double_t dpop=-1.) |
void | SetVertexSmearing (Double_t sigmax=-1., Double_t sigmay=-1., Double_t sigmaz=-1.) |
void | SetTrackingEfficiency (Double_t eff=1.) |
void | SetTrackSelector (TString selector) |
void | SetPersistence (Bool_t persistence) |
void | SetPersistency (Bool_t val=kTRUE) |
Bool_t | GetPersistency () |
Protected Member Functions | |
virtual void | CreateTrackCands () |
virtual void | CreateTracks () |
virtual void | FilterTrackCands () |
virtual FairMCPoint * | GetFairMCPoint (TString hitBranch, FairMultiLinkedData_Interface *links, FairMultiLinkedData &array) |
virtual void | SmearVector (TVector3 &vec, const TVector3 &sigma) |
ClassDef (PndIdealTrackFinder, 2) | |
Protected Attributes | |
TString | fOutBranchName |
TClonesArray * | fTrackCand |
TClonesArray * | fTrack |
TClonesArray * | fMCTrack |
PndTrackFunctor * | fTrackSelector |
std::map< TString, TClonesArray * > | fBranchMap |
std::vector< TString > | fBranchNames |
std::map< FairLink, PndTrackCand > | fTrackCandMap |
std::map< FairLink, FairMCPoint > | fFirstPointMap |
std::map< FairLink, FairMCPoint > | fLastPointMap |
std::map< TString, TString > | fPointBranchMap |
TDatabasePDG * | fPdg |
! Particle DB More... | |
Int_t | fHitCount |
TVector3 | fMomSigma |
Momentum smearing sigma [GeV]. More... | |
Double_t | fDPoP |
Relative momentum Smearing. More... | |
Bool_t | fRelative |
flag More... | |
TVector3 | fVtxSigma |
Vertex smearing sigma [cm]. More... | |
Double_t | fEfficiency |
Tracking efficiency - if (0 <= e < 1), some tracks will be discarded. More... | |
Ideal track finder for all types of tracking detectors The PndIdealTrackFinder combines all hits in given branches into PndTrackCand and calculates the PndTrack based on MC information.
PndIdealTrackFinder.h
Definition at line 25 of file PndIdealTrackFinder.h.
PndIdealTrackFinder::PndIdealTrackFinder | ( | ) |
Definition at line 22 of file PndIdealTrackFinder.cxx.
References fPointBranchMap, and PndPersistencyTask::SetPersistency().
|
virtual |
Definition at line 41 of file PndIdealTrackFinder.cxx.
References fTrackSelector.
|
inlinevirtual |
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken.
Definition at line 33 of file PndIdealTrackFinder.h.
References fBranchNames.
Referenced by idealbarreltracking(), idealforwardtracking(), Init(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_newSTT(), recoqa_ca(), recoqa_complete(), and trackingQANewLinks().
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken.
Definition at line 34 of file PndIdealTrackFinder.h.
References fBranchNames, fPointBranchMap, and name.
|
protected |
|
protectedvirtual |
Definition at line 103 of file PndIdealTrackFinder.cxx.
References fBranchMap, fFirstPointMap, fHitCount, fLastPointMap, fTrackCandMap, GetFairMCPoint(), i, point, and TString.
Referenced by PndCloneGenerator::Exec(), and Exec().
|
protectedvirtual |
Definition at line 175 of file PndIdealTrackFinder.cxx.
References fBranchMap, fDPoP, fEfficiency, fFirstPointMap, fLastPointMap, fMomSigma, fPdg, fRelative, fTrack, fTrackCand, fTrackCandMap, fVtxSigma, PndTrackCandHit::GetDetId(), PndTrackCandHit::GetHitId(), PndTrackCand::GetNHits(), PndMCTrack::GetPdgCode(), PndTrackCand::GetSortedHit(), PndGemMCPoint::PositionOut(), PndTrackCand::setMcTrackId(), and SmearVector().
Referenced by PndCloneGenerator::Exec(), and Exec().
|
virtual |
Virtual method Exec
Reimplemented in PndCloneGenerator.
Definition at line 89 of file PndIdealTrackFinder.cxx.
References CreateTrackCands(), CreateTracks(), FilterTrackCands(), fTrack, fTrackCand, and fTrackCandMap.
|
protectedvirtual |
Definition at line 161 of file PndIdealTrackFinder.cxx.
References fTrackCandMap, and fTrackSelector.
Referenced by Exec().
|
protectedvirtual |
Definition at line 255 of file PndIdealTrackFinder.cxx.
References fPointBranchMap.
Referenced by CreateTrackCands(), and PndCloneGenerator::SetFirstLastHit().
|
inlineinherited |
Definition at line 32 of file PndPersistencyTask.h.
References PndPersistencyTask::fPersistency.
Referenced by PndLmdPixelHitProducerFast::GetPersistance(), PndMdtDigitization::Init(), PndMdtHitProducerIdeal::Init(), PndMdtClusterTask::Init(), PndFtsHitProducerRealFast::Init(), PndSttHitProducerRealFast::Init(), PndDiscTaskReconstruction::Init(), PndRichHitProducer::Init(), PndSttHelixHitProducer::Init(), PndDiscTaskPID::Init(), Init(), PndSttMvdGemTracking::Init(), PndMdtTrkProducer::Init(), PndFtsHitProducerRealFull::Init(), PndLmdPixelClusterTask::Init(), PndSttHitProducerRealFull::Init(), PndLmdStripClusterTask::Init(), PndEmcApdHitProducer::Init(), PndMissingPzCleanerTask::Init(), PndEmcMakeRecoHit::Init(), PndEmcMakeClusterOnline::Init(), PndTrackSmearTask::Init(), PndEmcFWEndcapTimebasedWaveforms::Init(), PndSttHitProducerIdeal::Init(), PndEmcFWEndcapDigi::Init(), PndFtsHitProducerIdeal::Init(), PndEmcMakeCluster::Init(), PndMdtPointsToWaveform::Init(), PndDiscTaskDigitization::Init(), PndEmcMakeDigi::Init(), PndSdsTimeWalkCorrTask::Init(), PndLmdPixelHitProducerFast::Init(), PndDrcHitFinder::Init(), PndRichHitFinder::Init(), PndEmcMakeCorr::Init(), PndFtofHitProducerIdeal::Init(), PndEmcHitsToWaveform::Init(), PndSciTDigiTask::Init(), PndDrcHitProducerIdeal::Init(), PndSdsHitProducerIdeal::Init(), PndSciTHitProducerIdeal::Init(), PndEmcHitProducer::Init(), PndRecoMultiKalmanTask2::Init(), PndDrcHitProducerReal::Init(), PndDskFLGHitProducerIdeal::Init(), PndEmcTmpWaveformToDigi::Init(), PndDrcDigiTask::Init(), PndEmcWaveformToDigi::Init(), PndSttMatchTracks::Init(), PndEmcWaveformToCalibratedDigi::Init(), PndTrkTracking2::Init(), PndSttFindTracks::Init(), PndEmcMultiWaveformToCalibratedDigi::Init(), PndDrcTimeDigiTask::Init(), PndRecoKalmanTask2::Init(), PndEmcExpClusterSplitter::Init(), PndSdsNoiseProducer::Init(), PndFtsHoughTrackerTask::Init(), PndEmcPhiBumpSplitter::Init(), PndSdsHybridHitProducer::Init(), PndSdsIdealRecoTask::Init(), PndRecoMultiKalmanTask::Init(), PndSdsIdealClusterTask::Init(), PndRecoKalmanTask::Init(), PndSdsStripHitProducerDif::Init(), PndSdsStripHitProducer::Init(), PndGemDigitize::Init(), PndGemFindHits::Init(), PndSdsPixelClusterTask::Init(), PndSdsStripClusterTask::Init(), PndMvdGemTrackFinderOnHits::Init(), PndBarrelTrackFinder::Init(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcMakeBump::PndEmcMakeBump(), PndUnassignedHitsTask::RegisterBranches(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndEmcMakeBump::SetStorageOfData(), and PndEmcFullDigiTask::StoreDigi().
|
virtual |
Virtual method Init
Definition at line 47 of file PndIdealTrackFinder.cxx.
References AddBranchName(), fBranchMap, fBranchNames, fMCTrack, fOutBranchName, fPdg, fPointBranchMap, fTrack, fTrackCand, fTrackSelector, PndPersistencyTask::GetPersistency(), and i.
|
inline |
Definition at line 44 of file PndIdealTrackFinder.h.
References fabs(), fMomSigma, and fRelative.
|
inlinevirtual |
Definition at line 36 of file PndIdealTrackFinder.h.
References fOutBranchName, and name.
Referenced by idealbarreltracking(), idealforwardtracking(), PndMasterRecoIdealTask::PndMasterRecoIdealTask(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), reco_rich(), and recoideal_complete().
|
inline |
Definition at line 63 of file PndIdealTrackFinder.h.
References PndPersistencyTask::SetPersistency().
Referenced by idealbarreltracking(), idealforwardtracking(), PndMasterRecoIdealTask::PndMasterRecoIdealTask(), reco_complete(), reco_complete_newSTT(), reco_rich(), and recoideal_complete().
|
inlineinherited |
Definition at line 31 of file PndPersistencyTask.h.
References PndPersistencyTask::fPersistency, and val.
Referenced by barrelTrackFinder(), digi_complete(), digi_complete_newSTT(), digiOnly_complete(), PndBarrelTrackFinder::PndBarrelTrackFinder(), PndCATracking::PndCATracking(), PndDrcHitFinder::PndDrcHitFinder(), PndEmc2DLocMaxFinder::PndEmc2DLocMaxFinder(), PndEmcExpClusterSplitter::PndEmcExpClusterSplitter(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcFWEndcapDigi::PndEmcFWEndcapDigi(), PndEmcFWEndcapTimebasedWaveforms::PndEmcFWEndcapTimebasedWaveforms(), PndEmcHitProducer::PndEmcHitProducer(), PndEmcHitsToWaveform::PndEmcHitsToWaveform(), PndEmcMakeBump::PndEmcMakeBump(), PndEmcMakeCluster::PndEmcMakeCluster(), PndEmcMakeClusterOnline::PndEmcMakeClusterOnline(), PndEmcMakeDigi::PndEmcMakeDigi(), PndEmcMakeRecoHit::PndEmcMakeRecoHit(), PndEmcMultiWaveformToCalibratedDigi::PndEmcMultiWaveformToCalibratedDigi(), PndEmcPhiBumpSplitter::PndEmcPhiBumpSplitter(), PndEmcTmpWaveformToDigi::PndEmcTmpWaveformToDigi(), PndEmcWaveformToCalibratedDigi::PndEmcWaveformToCalibratedDigi(), PndEmcWaveformToDigi::PndEmcWaveformToDigi(), PndFtofHitProducerIdeal::PndFtofHitProducerIdeal(), PndFtsCATracking::PndFtsCATracking(), PndFtsHitProducerIdeal::PndFtsHitProducerIdeal(), PndFtsHitProducerRealFast::PndFtsHitProducerRealFast(), PndFtsHitProducerRealFull::PndFtsHitProducerRealFull(), PndFtsHoughTrackerTask::PndFtsHoughTrackerTask(), PndGemDigitize::PndGemDigitize(), PndGemFindHits::PndGemFindHits(), PndIdealTrackFinder(), PndLmdPixelClusterTask::PndLmdPixelClusterTask(), PndLmdPixelHitProducerFast::PndLmdPixelHitProducerFast(), PndMdtClusterTask::PndMdtClusterTask(), PndMdtDigitization::PndMdtDigitization(), PndMdtHitProducerIdeal::PndMdtHitProducerIdeal(), PndMdtPointsToWaveform::PndMdtPointsToWaveform(), PndMdtTrkProducer::PndMdtTrkProducer(), PndMissingPzCleanerTask::PndMissingPzCleanerTask(), PndMvdGemTrackFinderOnHits::PndMvdGemTrackFinderOnHits(), PndMvdHitProducerIdeal::PndMvdHitProducerIdeal(), PndMvdPixelClusterTask::PndMvdPixelClusterTask(), PndMvdTimeWalkCorrTask::PndMvdTimeWalkCorrTask(), PndMvdToPix4ClusterTask::PndMvdToPix4ClusterTask(), PndRecoKalmanTask::PndRecoKalmanTask(), PndRecoKalmanTask2::PndRecoKalmanTask2(), PndRecoMultiKalmanTask::PndRecoMultiKalmanTask(), PndRecoMultiKalmanTask2::PndRecoMultiKalmanTask2(), PndRichHitFinder::PndRichHitFinder(), PndRichHitProducer::PndRichHitProducer(), PndSciTDigiTask::PndSciTDigiTask(), PndSciTHitProducerIdeal::PndSciTHitProducerIdeal(), PndSdsHitProducerIdeal::PndSdsHitProducerIdeal(), PndSdsHybridHitProducer::PndSdsHybridHitProducer(), PndSdsIdealClusterTask::PndSdsIdealClusterTask(), PndSdsIdealRecoTask::PndSdsIdealRecoTask(), PndSdsNoiseProducer::PndSdsNoiseProducer(), PndSdsPixelClusterTask::PndSdsPixelClusterTask(), PndSdsStripClusterTask::PndSdsStripClusterTask(), PndSdsStripHitProducer::PndSdsStripHitProducer(), PndSdsTimeWalkCorrTask::PndSdsTimeWalkCorrTask(), PndSttFindTracks::PndSttFindTracks(), PndSttHelixHitProducer::PndSttHelixHitProducer(), PndSttHitProducerIdeal::PndSttHitProducerIdeal(), PndSttHitProducerRealFast::PndSttHitProducerRealFast(), PndSttHitProducerRealFull::PndSttHitProducerRealFull(), PndSttMatchTracks::PndSttMatchTracks(), PndSttMvdGemTracking::PndSttMvdGemTracking(), PndTrackSmearTask::PndTrackSmearTask(), PndTrkTracking2::PndTrkTracking2(), reco(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), recoideal_complete(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndLmdPixelHitProducerFast::SetPersistance(), PndSdsHitProducerIdeal::SetPersistance(), PndSttMvdGemTracking::SetPersistenc(), PndMdtClusterTask::SetPersistence(), PndSttHelixHitProducer::SetPersistence(), PndMissingPzCleanerTask::SetPersistence(), PndFtsHitProducerRealFast::SetPersistence(), PndFtsHitProducerRealFull::SetPersistence(), PndSttHitProducerIdeal::SetPersistence(), PndSttHitProducerRealFull::SetPersistence(), PndSttHitProducerRealFast::SetPersistence(), PndFtsHitProducerIdeal::SetPersistence(), PndTrackSmearTask::SetPersistence(), PndSciTHitProducerIdeal::SetPersistence(), SetPersistence(), PndSttMatchTracks::SetPersistence(), PndSttFindTracks::SetPersistence(), PndFtsHoughTrackerTask::SetPersistence(), PndTrkTracking2::SetPersistence(), PndEmcMakeRecoHit::SetStorageOfData(), PndEmcMakeClusterOnline::SetStorageOfData(), PndEmcFWEndcapDigi::SetStorageOfData(), PndEmcFWEndcapTimebasedWaveforms::SetStorageOfData(), PndEmcMakeDigi::SetStorageOfData(), PndMdtPointsToWaveform::SetStorageOfData(), PndEmc2DLocMaxFinder::SetStorageOfData(), PndEmcMakeCluster::SetStorageOfData(), PndEmcHitsToWaveform::SetStorageOfData(), PndEmcMakeBump::SetStorageOfData(), PndEmcTmpWaveformToDigi::SetStorageOfData(), PndEmcWaveformToDigi::SetStorageOfData(), PndEmcWaveformToCalibratedDigi::SetStorageOfData(), PndEmcMultiWaveformToCalibratedDigi::SetStorageOfData(), PndEmcExpClusterSplitter::SetStorageOfData(), PndEmcPhiBumpSplitter::SetStorageOfData(), standard_tracking(), and PndEmcFullDigiTask::StoreDigi().
|
inline |
Definition at line 48 of file PndIdealTrackFinder.h.
References fabs(), fDPoP, and fRelative.
Referenced by PndMasterRecoIdealTask::PndMasterRecoIdealTask(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), reco_rich(), and recoideal_complete().
|
inline |
Definition at line 55 of file PndIdealTrackFinder.h.
References fEfficiency.
Referenced by idealbarreltracking(), idealforwardtracking(), PndMasterRecoIdealTask::PndMasterRecoIdealTask(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), reco_rich(), and recoideal_complete().
|
inline |
< The track selector decides if a track is taken or discarded. You can set them via a string. Valid strings can be found in PndTrackFunctor.h
Definition at line 59 of file PndIdealTrackFinder.h.
References fTrackSelector, and PndTrackFunctor::make_PndTrackFunctor().
Referenced by idealbarreltracking(), idealforwardtracking(), PndMasterRecoIdealTask::PndMasterRecoIdealTask(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), reco_rich(), and recoideal_complete().
|
inline |
Definition at line 52 of file PndIdealTrackFinder.h.
References fabs(), and fVtxSigma.
Referenced by PndMasterRecoIdealTask::PndMasterRecoIdealTask(), PndMasterRecoTask::PndMasterRecoTask(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), reco_rich(), and recoideal_complete().
|
protectedvirtual |
Definition at line 278 of file PndIdealTrackFinder.cxx.
References Double_t.
Referenced by CreateTracks().
Definition at line 80 of file PndIdealTrackFinder.h.
Referenced by CreateTrackCands(), CreateTracks(), Init(), and PndCloneGenerator::SetFirstLastHit().
|
protected |
Definition at line 81 of file PndIdealTrackFinder.h.
Referenced by AddBranchName(), and Init().
|
protected |
Relative momentum Smearing.
Definition at line 93 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), and SetRelativeMomentumSmearing().
|
protected |
Tracking efficiency - if (0 <= e < 1), some tracks will be discarded.
Definition at line 96 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), and SetTrackingEfficiency().
|
protected |
Definition at line 83 of file PndIdealTrackFinder.h.
Referenced by CreateTrackCands(), CreateTracks(), and PndCloneGenerator::SetFirstLastHit().
|
protected |
Definition at line 89 of file PndIdealTrackFinder.h.
Referenced by CreateTrackCands().
|
protected |
Definition at line 84 of file PndIdealTrackFinder.h.
Referenced by CreateTrackCands(), CreateTracks(), and PndCloneGenerator::SetFirstLastHit().
|
protected |
Definition at line 78 of file PndIdealTrackFinder.h.
Referenced by Init().
|
protected |
Momentum smearing sigma [GeV].
Definition at line 92 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), and SetMomentumSmearing().
|
protected |
Definition at line 75 of file PndIdealTrackFinder.h.
Referenced by Init(), and SetOutputBranchName().
|
protected |
! Particle DB
Definition at line 87 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), and Init().
Definition at line 85 of file PndIdealTrackFinder.h.
Referenced by AddBranchName(), GetFairMCPoint(), Init(), and PndIdealTrackFinder().
|
protected |
flag
Definition at line 94 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), SetMomentumSmearing(), and SetRelativeMomentumSmearing().
|
protected |
Definition at line 77 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), PndCloneGenerator::Exec(), Exec(), and Init().
|
protected |
Definition at line 76 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), PndCloneGenerator::Exec(), Exec(), and Init().
|
protected |
Definition at line 82 of file PndIdealTrackFinder.h.
Referenced by PndCloneGenerator::CreateTrackCandClones(), CreateTrackCands(), CreateTracks(), PndCloneGenerator::Exec(), Exec(), and FilterTrackCands().
|
protected |
Definition at line 79 of file PndIdealTrackFinder.h.
Referenced by FilterTrackCands(), Init(), SetTrackSelector(), and ~PndIdealTrackFinder().
|
protected |
Vertex smearing sigma [cm].
Definition at line 95 of file PndIdealTrackFinder.h.
Referenced by CreateTracks(), and SetVertexSmearing().