![]() |
PandaRoot
|
Class for Hough space based on TH2S (for the moment). Saves the hits which enter this Hough space and finds peaks. More...
#include <PndFtsHoughSpace.h>
Public Member Functions | |
| PndFtsHoughSpace (const char *name=nullptr, const Int_t refIndex=-1, PndFtsHoughSpaceBinning binning=PndFtsHoughSpaceBinning(), Double_t zRefPos=0., Double_t interceptZx=0., PndFtsHoughTrackCand *associatedTrackCand=nullptr, PndFtsHoughTrackerTask *trackerTask=nullptr) | |
| ~PndFtsHoughSpace () | |
| std::vector< PndFtsHoughTracklet > | FindAllPeaksScanPathsMergeBins (const UInt_t minHeight) |
| Finds all peaks that satisfy the minimum height requirement minHeight. More... | |
| std::vector< PndFtsHoughTracklet > | FindAllPeaksScanPathsMergeBinsCalculatingPaths (const UInt_t minHeight) |
| Finds all peaks that satisfy the minimum height requirement minHeight. More... | |
| std::vector< PndFtsHoughTracklet > | FindAllPeaksWithTSpectrum2 (const UInt_t minHeight) |
| Finds all peaks that satisfy the minimum height requirement minHeight. More... | |
| std::vector< PndFtsHoughTracklet > | FindAllPeaksBinsWoMergingWithSearchWindow (const UInt_t minHeight, const Int_t vicinityLength=0) |
| Finds all peaks that satisfy the minimum height requirement minHeight. More... | |
| std::vector< PndFtsHoughTracklet > | FindAllPeaksBlanko (const UInt_t minHeight) |
| Finds all peaks that satisfy the minimum height requirement minHeight. More... | |
| void | FillHoughSpace () |
| Fills the Hough space using the equation which corresponds to the name of the Hough space. More... | |
| void | Print () const |
| void | setVerbose (Int_t verbose) |
| Double_t | getInterceptZx () const |
| Double_t | getZRefPos () const |
| UInt_t | GetNHits () const |
| ClassDef (PndFtsHoughSpace, 1) | |
Class for Hough space based on TH2S (for the moment). Saves the hits which enter this Hough space and finds peaks.
Note //! after a member means for root that it should not write it to disk when the object is saved
TODO Save path through Hough spaces with global indices!!! TODO: Separate peak finder from Hough space
The angle (theta in rad) is always on x-axis, the value on the y-axis depends on the kind of Hough transform:
| HT type | yValue |
|---|---|
| parabola | Q/p_{zx} |
| line | intercept (Achsenabschnitt) (in z-x- or z-y-plane) |
All FTS hits are scanned within the constructor by filterInputHits(). The hits which are relevant for this Hough space are saved in fHitId and can be accessed with getHit(UInt_t index).
Created: 21.02.2014
Definition at line 61 of file PndFtsHoughSpace.h.
| PndFtsHoughSpace::PndFtsHoughSpace | ( | const char * | name = nullptr, |
| const Int_t | refIndex = -1, |
||
| PndFtsHoughSpaceBinning | binning = PndFtsHoughSpaceBinning(), |
||
| Double_t | zRefPos = 0., |
||
| Double_t | interceptZx = 0., |
||
| PndFtsHoughTrackCand * | associatedTrackCand = nullptr, |
||
| PndFtsHoughTrackerTask * | trackerTask = nullptr |
||
| ) |
| PndFtsHoughSpace::~PndFtsHoughSpace | ( | ) |
| PndFtsHoughSpace::ClassDef | ( | PndFtsHoughSpace | , |
| 1 | |||
| ) |
Referenced by GetNHits().
| void PndFtsHoughSpace::FillHoughSpace | ( | ) |
Fills the Hough space using the equation which corresponds to the name of the Hough space.
If something goes wrong the function throws a runtime_error (probably Hough space name is set incorrectly).
!!! WARNING The theta values (in rad) are NOT the same as in the interaction point. They are always calculated relative to a shifted coordinate system and only 2-dimensional (either in z-x- or z-y-plane) !!!
The angle (theta in rad) to the z-axis in the z-x- or z-y-plane at a z reference position will be scanned from theta corresponding to lowest bin to theta corresponding to highest bin of x-axis.
TODO For each hit the "path" through the 2d histogram is saved for peak finding.
y component of B field will be read from field maps if fKeepBConstant is kFALSE.
| [in] | Running | index, only needed for Debugging output of Hough spaces |
| std::vector<PndFtsHoughTracklet> PndFtsHoughSpace::FindAllPeaksBinsWoMergingWithSearchWindow | ( | const UInt_t | minHeight, |
| const Int_t | vicinityLength = 0 |
||
| ) |
Finds all peaks that satisfy the minimum height requirement minHeight.
| minHeight | only bins of at least this height are regarded as possibly belonging to a peak. |
| std::vector<PndFtsHoughTracklet> PndFtsHoughSpace::FindAllPeaksBlanko | ( | const UInt_t | minHeight | ) |
Finds all peaks that satisfy the minimum height requirement minHeight.
| minHeight | only bins of at least this height are regarded as possibly belonging to a peak. |
| std::vector<PndFtsHoughTracklet> PndFtsHoughSpace::FindAllPeaksScanPathsMergeBins | ( | const UInt_t | minHeight | ) |
Finds all peaks that satisfy the minimum height requirement minHeight.
| minHeight | only bins of at least this height are regarded as possibly belonging to a peak. |
| std::vector<PndFtsHoughTracklet> PndFtsHoughSpace::FindAllPeaksScanPathsMergeBinsCalculatingPaths | ( | const UInt_t | minHeight | ) |
Finds all peaks that satisfy the minimum height requirement minHeight.
| minHeight | only bins of at least this height are regarded as possibly belonging to a peak. |
| std::vector<PndFtsHoughTracklet> PndFtsHoughSpace::FindAllPeaksWithTSpectrum2 | ( | const UInt_t | minHeight | ) |
Finds all peaks that satisfy the minimum height requirement minHeight.
| minHeight | only bins of at least this height are regarded as possibly belonging to a peak. |
|
inline |
Definition at line 149 of file PndFtsHoughSpace.h.
|
inline |
Definition at line 153 of file PndFtsHoughSpace.h.
References ClassDef(), cos(), and sin().
Referenced by Print().
|
inline |
Definition at line 151 of file PndFtsHoughSpace.h.
|
inline |
Definition at line 309 of file PndFtsHoughSpace.h.
References PndFtsHoughTrackerTask::GetEventNr(), PndFtsHoughTrackerTask::GetFtsHit(), PndFtsHoughTrackerTask::GetFtsTube(), GetNHits(), PndFtsTube::GetPosition(), PndFtsHit::GetSkewed(), PndFtsTube::GetWireDirection(), PndFtsHoughTrackCand::getXLabSys(), and i.
|
inline |
Definition at line 147 of file PndFtsHoughSpace.h.