FairRoot/PandaRoot
|
Class for saving a FTS track cand. for Hough transform based FTS PR. More...
#include <PndFtsHoughTrackCand.h>
Public Member Functions | |
PndFtsHoughTrackCand (PndFtsHoughTrackerTask *trackerTask=0) | |
Set pointer to tracker task (super important as it provides an I/O interface to PandaRoot) More... | |
~PndFtsHoughTrackCand () | |
void | Print () |
Bool_t | isComplete () const |
PndTrackCand | getPndTrackCand () |
PndTrack | getPndTrack () |
FairTrackParP | getTrackParPForHit (const UInt_t i) |
Int_t | getCharge () const |
TVector3 | getP (const Double_t zLabSys) const |
TVector3 | getPos (const Double_t zLabSys) const |
Double_t | getXLabSys (const Double_t zLabSys) const |
Double_t | getThetaZxRad (const Double_t zLabSys) const |
Double_t | getThetaZyRad (const Double_t) const |
Double_t | getZLineParabola () |
Double_t | getZParabolaLine () |
void | SetZxLineBeforeDipole (const PndFtsHoughTracklet zxLineParabola) |
void | SetZxParabola (const PndFtsHoughTracklet zxParabola) |
void | SetZxLineBehindDipole (const PndFtsHoughTracklet zxParabolaLine) |
void | SetZyLine (const PndFtsHoughTracklet zyLine) |
ClassDef (PndFtsHoughTrackCand, 1) | |
Private Member Functions | |
void | throwError (const TString s) const |
For error reporting. More... | |
void | throwIfZOutOfRange (const Double_t &zLabSys) const |
void | addUniqueTrackletHits (const PndFtsHoughTracklet inTracklet) |
Double_t | getQdivPzx () const |
Double_t | getPYLab () const |
std::pair< Double_t, Double_t > | getPZPXLabLine (const Double_t &zLabSys, const PndFtsHoughTracklet *const lineTracklet) const |
std::pair< Double_t, Double_t > | getPZPXLabParabola (const Double_t &zLabSys) const |
Double_t | getXOrYLabForLine (const Double_t &zLabSys, const PndFtsHoughTracklet *const lineTracklet) const |
Double_t | getXLabForParabola (const Double_t &zLabSys) const |
Class for saving a FTS track cand. for Hough transform based FTS PR.
The track cand. consists of several tracklets: In zx-plane line + parabola + line In zy-plane line
This class takes care of geometric calculations for tracklets.
Loosely modeled after tools/riemannfit/PndRiemannTrack.h
TODO Maybe it would be better not to derive from PndTrackCand, but to contain an object of PndTrackCand
Created: 24.01.2014
Definition at line 47 of file PndFtsHoughTrackCand.h.
PndFtsHoughTrackCand::PndFtsHoughTrackCand | ( | PndFtsHoughTrackerTask * | trackerTask = 0 | ) |
Set pointer to tracker task (super important as it provides an I/O interface to PandaRoot)
Definition at line 18 of file PndFtsHoughTrackCand.cxx.
References fTrackerTask, fVerbose, and PndFtsHoughTrackerTask::GetVerbose().
PndFtsHoughTrackCand::~PndFtsHoughTrackCand | ( | ) |
Definition at line 44 of file PndFtsHoughTrackCand.cxx.
|
private |
Definition at line 119 of file PndFtsHoughTrackCand.cxx.
References PndTrackCand::AddHit(), Double_t, fIntTrackCand, PndTrackCandHit::GetDetId(), PndTrackCandHit::GetHitId(), PndTrackCand::GetNHits(), PndTrackCandHit::GetRho(), PndTrackCand::GetSortedHit(), and PndTrackCand::HitInTrack().
Referenced by SetZxLineBeforeDipole(), SetZxLineBehindDipole(), SetZxParabola(), and SetZyLine().
PndFtsHoughTrackCand::ClassDef | ( | PndFtsHoughTrackCand | , |
1 | |||
) |
|
inline |
Definition at line 163 of file PndFtsHoughTrackCand.h.
References getQdivPzx().
Referenced by getPZPXLabLine(), getPZPXLabParabola(), and getTrackParPForHit().
TVector3 PndFtsHoughTrackCand::getP | ( | const Double_t | zLabSys | ) | const |
Definition at line 265 of file PndFtsHoughTrackCand.cxx.
References Double_t, fVerbose, fZCoordLineParabola, fZCoordParabolaLine, fZxLineBeforeDipole, fZxLineBehindDipole, getPYLab(), getPZPXLabLine(), getPZPXLabParabola(), isComplete(), mom, and throwIfZOutOfRange().
Referenced by getTrackParPForHit().
PndTrack PndFtsHoughTrackCand::getPndTrack | ( | ) |
Definition at line 208 of file PndFtsHoughTrackCand.cxx.
References fIntTrackCand, PndTrackCand::GetNHits(), and getTrackParPForHit().
PndTrackCand PndFtsHoughTrackCand::getPndTrackCand | ( | ) |
Definition at line 184 of file PndFtsHoughTrackCand.cxx.
References fIntTrackCand.
TVector3 PndFtsHoughTrackCand::getPos | ( | const Double_t | zLabSys | ) | const |
Definition at line 331 of file PndFtsHoughTrackCand.cxx.
References Double_t, fVerbose, fZyLine, getXLabSys(), getXOrYLabForLine(), isComplete(), and throwIfZOutOfRange().
Referenced by getTrackParPForHit(), and plotHoughTrackCand().
|
inlineprivate |
Definition at line 217 of file PndFtsHoughTrackCand.h.
References Double_t, fZxLineBeforeDipole, fZxParabola, fZyLine, getPZPXLabLine(), PndFtsHoughTracklet::getThetaRadVal(), and PndFtsHoughTracklet::getZRefLabSys().
Referenced by getP().
|
inlineprivate |
Definition at line 203 of file PndFtsHoughTrackCand.h.
References cos(), Double_t, fZxParabola, getCharge(), PndFtsHoughTracklet::getSecondVal(), PndFtsHoughTracklet::getThetaRadVal(), and sin().
Referenced by getP(), and getPYLab().
|
inlineprivate |
Definition at line 188 of file PndFtsHoughTrackCand.h.
References cos(), Double_t, getCharge(), getQdivPzx(), getThetaZxRad(), and sin().
Referenced by getP().
|
inlineprivate |
Definition at line 103 of file PndFtsHoughTrackCand.h.
References fZxParabola, and PndFtsHoughTracklet::getSecondVal().
Referenced by getCharge(), getPZPXLabParabola(), and getXLabForParabola().
Definition at line 300 of file PndFtsHoughTrackCand.cxx.
References atan2(), Double_t, getXLabSys(), and throwIfZOutOfRange().
Referenced by getPZPXLabParabola().
Definition at line 75 of file PndFtsHoughTrackCand.h.
References fZyLine, and PndFtsHoughTracklet::getThetaRadVal().
Referenced by PndFtsHoughTrackFinder::LineBehindDipoleMatchesToLinePlusParabola().
FairTrackParP PndFtsHoughTrackCand::getTrackParPForHit | ( | const UInt_t | i | ) |
Definition at line 220 of file PndFtsHoughTrackCand.cxx.
References Double_t, fIntTrackCand, fTrackerTask, getCharge(), PndFtsHoughTrackerTask::GetFtsHit(), PndFtsHoughTrackerTask::GetFtsHitPosErrors(), PndTrackCandHit::GetHitId(), getP(), getPos(), PndTrackCand::GetSortedHit(), isComplete(), mom, and throwError().
Referenced by getPndTrack().
Definition at line 138 of file PndFtsHoughTrackCand.cxx.
References a, Double_t, fabs(), fZxLineBeforeDipole, fZxParabola, getQdivPzx(), PndFtsHoughTracklet::getSecondVal(), PndFtsHoughTracklet::getThetaRadVal(), PndFtsHoughTracklet::getZRefLabSys(), sin(), and sqrt().
Referenced by getXLabSys().
Definition at line 313 of file PndFtsHoughTrackCand.cxx.
References fZCoordLineParabola, fZCoordParabolaLine, fZxLineBeforeDipole, fZxLineBehindDipole, getXLabForParabola(), getXOrYLabForLine(), throwError(), and throwIfZOutOfRange().
Referenced by PndFtsHoughSpace::CalculateHitPosFromIntersectionsWithZxTrackModel(), getPos(), and getThetaZxRad().
|
inlineprivate |
Definition at line 174 of file PndFtsHoughTrackCand.h.
References Double_t, PndFtsHoughTracklet::getSecondVal(), PndFtsHoughTracklet::getThetaRadVal(), and PndFtsHoughTracklet::getZRefLabSys().
Referenced by getPos(), and getXLabSys().
|
inline |
Definition at line 77 of file PndFtsHoughTrackCand.h.
References fZCoordLineParabola.
Referenced by plotHoughTrackCand().
|
inline |
Definition at line 78 of file PndFtsHoughTrackCand.h.
References fZCoordParabolaLine.
Referenced by plotHoughTrackCand().
|
inline |
Definition at line 60 of file PndFtsHoughTrackCand.h.
References fZxLineBeforeDipole, fZxLineBehindDipole, fZxParabola, fZyLine, and PndFtsHoughTracklet::isSet().
Referenced by getP(), getPos(), and getTrackParPForHit().
void PndFtsHoughTrackCand::Print | ( | ) |
Definition at line 94 of file PndFtsHoughTrackCand.cxx.
References fIntTrackCand, fZxLineBeforeDipole, fZxLineBehindDipole, fZxParabola, fZyLine, PndFtsHoughTracklet::isSet(), PndFtsHoughTracklet::Print(), and PndTrackCand::Print().
Referenced by PndFtsHoughTrackerTask::Exec().
void PndFtsHoughTrackCand::SetZxLineBeforeDipole | ( | const PndFtsHoughTracklet | zxLineParabola | ) |
Definition at line 50 of file PndFtsHoughTrackCand.cxx.
References addUniqueTrackletHits(), fZCoordLineParabola, fZxLineBeforeDipole, PndFtsHoughTracklet::getZRefLabSys(), and PndFtsHoughTracklet::isSet().
Referenced by PndFtsHoughTrackFinder::FindMatchingParabolaToLineBeforeDipoleZxAndAddLineBehindDipole().
void PndFtsHoughTrackCand::SetZxLineBehindDipole | ( | const PndFtsHoughTracklet | zxParabolaLine | ) |
Definition at line 71 of file PndFtsHoughTrackCand.cxx.
References addUniqueTrackletHits(), fZCoordParabolaLine, fZxLineBehindDipole, PndFtsHoughTracklet::getZRefLabSys(), and PndFtsHoughTracklet::isSet().
Referenced by PndFtsHoughTrackFinder::FindMatchingParabolaToLineBeforeDipoleZxAndAddLineBehindDipole().
void PndFtsHoughTrackCand::SetZxParabola | ( | const PndFtsHoughTracklet | zxParabola | ) |
Definition at line 59 of file PndFtsHoughTrackCand.cxx.
References addUniqueTrackletHits(), fZCoordLineParabola, fZxParabola, PndFtsHoughTracklet::getZRefLabSys(), and PndFtsHoughTracklet::isSet().
Referenced by PndFtsHoughTrackFinder::FindMatchingParabolaToLineBeforeDipoleZxAndAddLineBehindDipole().
void PndFtsHoughTrackCand::SetZyLine | ( | const PndFtsHoughTracklet | zyLine | ) |
Definition at line 80 of file PndFtsHoughTrackCand.cxx.
References addUniqueTrackletHits(), fZyLine, and PndFtsHoughTracklet::isSet().
Referenced by PndFtsHoughTrackFinder::FindZyLineMatchingToLineParabolaLineInZx().
|
inlineprivate |
For error reporting.
Definition at line 95 of file PndFtsHoughTrackCand.h.
Referenced by getTrackParPForHit(), getXLabSys(), and throwIfZOutOfRange().
|
inlineprivate |
Definition at line 96 of file PndFtsHoughTrackCand.h.
References throwError().
Referenced by getP(), getPos(), getThetaZxRad(), and getXLabSys().
|
private |
Definition at line 144 of file PndFtsHoughTrackCand.h.
Referenced by addUniqueTrackletHits(), getPndTrack(), getPndTrackCand(), getTrackParPForHit(), and Print().
|
private |
Definition at line 92 of file PndFtsHoughTrackCand.h.
Referenced by getTrackParPForHit(), and PndFtsHoughTrackCand().
|
private |
Definition at line 115 of file PndFtsHoughTrackCand.h.
Referenced by getP(), getPos(), and PndFtsHoughTrackCand().
|
private |
Definition at line 148 of file PndFtsHoughTrackCand.h.
Referenced by getP(), getXLabSys(), getZLineParabola(), SetZxLineBeforeDipole(), and SetZxParabola().
|
private |
Definition at line 150 of file PndFtsHoughTrackCand.h.
Referenced by getP(), getXLabSys(), getZParabolaLine(), and SetZxLineBehindDipole().
|
private |
Definition at line 119 of file PndFtsHoughTrackCand.h.
Referenced by getP(), getPYLab(), getXLabForParabola(), getXLabSys(), isComplete(), Print(), and SetZxLineBeforeDipole().
|
private |
Definition at line 131 of file PndFtsHoughTrackCand.h.
Referenced by getP(), getXLabSys(), isComplete(), Print(), and SetZxLineBehindDipole().
|
private |
Definition at line 125 of file PndFtsHoughTrackCand.h.
Referenced by getPYLab(), getPZPXLabLine(), getQdivPzx(), getXLabForParabola(), isComplete(), Print(), and SetZxParabola().
|
private |
Definition at line 138 of file PndFtsHoughTrackCand.h.
Referenced by getPos(), getPYLab(), getThetaZyRad(), isComplete(), Print(), and SetZyLine().