11 #ifndef PndIdealTrackFinder_H_
12 #define PndIdealTrackFinder_H_
17 #include "FairMCPoint.h"
21 #include "TClonesArray.h"
22 #include "TDatabasePDG.h"
32 virtual InitStatus
Init();
39 virtual void Exec(Option_t* opt);
70 virtual FairMCPoint*
GetFairMCPoint(
TString hitBranch, FairMultiLinkedData_Interface* links, FairMultiLinkedData& array);
TClonesArray * fTrackCand
virtual void SmearVector(TVector3 &vec, const TVector3 &sigma)
TDatabasePDG * fPdg
! Particle DB
std::map< FairLink, FairMCPoint > fFirstPointMap
virtual InitStatus Init()
void SetTrackingEfficiency(Double_t eff=1.)
Ideal track finder for all types of tracking detectors The PndIdealTrackFinder combines all hits in ...
void SetPersistency(Bool_t val=kTRUE)
virtual void Exec(Option_t *opt)
void SetPersistence(Bool_t persistence)
virtual void SetOutputBranchName(TString name)
virtual ~PndIdealTrackFinder()
std::map< TString, TString > fPointBranchMap
virtual void CreateTrackCands()
std::vector< TString > fBranchNames
virtual void AddBranchName(TString name, TString mcName)
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken...
void SetTrackSelector(TString selector)
static PndTrackFunctor * make_PndTrackFunctor(std::string functorName)
PndTrackFunctor * fTrackSelector
friend F32vec4 fabs(const F32vec4 &a)
Double_t fDPoP
Relative momentum Smearing.
ClassDef(PndIdealTrackFinder, 2)
void SetVertexSmearing(Double_t sigmax=-1., Double_t sigmay=-1., Double_t sigmaz=-1.)
TVector3 fMomSigma
Momentum smearing sigma [GeV].
void SetMomentumSmearing(Double_t sigmax=-1., Double_t sigmay=-1., Double_t sigmaz=-1.)
std::map< TString, TClonesArray * > fBranchMap
virtual FairMCPoint * GetFairMCPoint(TString hitBranch, FairMultiLinkedData_Interface *links, FairMultiLinkedData &array)
std::map< FairLink, FairMCPoint > fLastPointMap
virtual void FilterTrackCands()
Double_t fEfficiency
Tracking efficiency - if (0 <= e < 1), some tracks will be discarded.
virtual void CreateTracks()
virtual void AddBranchName(TString name)
Search for tracks only in given branches. If no BranchName is given all tracking detectors are taken...
void SetRelativeMomentumSmearing(Double_t dpop=-1.)
TVector3 fVtxSigma
Vertex smearing sigma [cm].
std::map< FairLink, PndTrackCand > fTrackCandMap