34 #ifndef PndFtsHoughTrackFinder_H 35 #define PndFtsHoughTrackFinder_H 41 #include "FairLogger.h" 111 void throwError(
const TString s)
const {
throw std::runtime_error(s.Data()); };
155 const std::vector<PndFtsHoughTracklet> &trackletsLineBehindDipole);
std::vector< PndFtsHoughTracklet > FindLinesBeforeDipoleZx()
const UInt_t fMinPeakHeightZxLineBehindDipole
Minimum required height for peaks in Hough spaces.
void FindZyLineMatchingToLineParabolaLineInZx()
Int_t getNLinesBehindDipoleFound() const
Interface between PandaRoot (data input and output) and PndFtsHoughTrackFinder (implementation of PR ...
Double_t getZRefLabSys() const
PndFtsHoughTrackFinderParams fParams
Double_t getThetaZyRad(const Double_t) const
void throwError(const TString s) const
For error reporting.
Parameters for Hough space track finder. Created: 09.02.2015.
PndFtsHoughTrackerTask * fTrackerTask
Task which handles PandaRoot input/output and provides settings for FTS PR. Has to be set using the c...
Bool_t LineBehindDipoleMatchesToLinePlusParabola(const PndFtsHoughTrackCand &lineParabola, const PndFtsHoughTracklet &lineBehindDipole) const
Bool_t FilterTrackletsBasedOnSharedHits(UInt_t maxAcceptableSharedHits, std::vector< PndFtsHoughTracklet > &tracklets)
Filters a vector of tracklets based on the number of shared hits.
const UInt_t fMinPeakHeightZyLine
zy line
virtual void FindTracks()
Performs the track finding.
PndTrack GetPndTrack(int i)
Returns the number of found tracks.
Class for saving the result of one Hough transform for FTS PR.
PndTrackCand GetPndTrackCand(int i)
Returns the track cand. with index i.
const UInt_t fMinPeakHeightZxParabola
Minimum required height for peaks in Hough spaces.
std::vector< PndFtsHoughTrackCand > fHoughTrackCandsZxPlaneOnly
For internal storing of track cands. (zx plane track model only)
Double_t getThetaRadVal() const
Int_t fNLinesBehindDipoleFound
Int_t getNLinesBeforeDipoleFound() const
Implementation of the Hough transform based FTS PR. Creates Hough spaces, finds peaks (=tracklets) an...
friend F32vec4 fabs(const F32vec4 &a)
void OverwriteTrackFinderParams(PndFtsHoughTrackFinderParams newParams)
static const Double_t fThetaRadLineBehindDipoleMatchesToParabolaIfBelow
Minimum required height for peaks in Hough spaces.
Int_t getNTracksFound() const
const UInt_t fMinPeakHeightZxLineBeforeDipole
Minimum required height for peaks in Hough spaces.
Int_t getNParabolasFound() const
PndFtsHoughTrackFinder(PndFtsHoughTrackerTask *trackerTask)
Set pointer to tracker task (super important as it provides an I/O interface to PandaRoot) ...
virtual ~PndFtsHoughTrackFinder()
Destructor.
std::vector< PndFtsHoughTracklet > FindLinesBehindDipoleZx()
Class for saving a FTS track cand. for Hough transform based FTS PR.
void FindMatchingParabolaToLineBeforeDipoleZxAndAddLineBehindDipole(const std::vector< PndFtsHoughTracklet > &trackletsLineBeforeDipole, const std::vector< PndFtsHoughTracklet > &trackletsLineBehindDipole)
PndFtsHoughTrackCand GetHoughTrack(int i) const
Returns the track cand. with index i.
std::vector< PndFtsHoughTrackCand > fHoughTrackCandsComplete
For internal storing of complete track cands.
Int_t fNLinesBeforeDipoleFound