PandaRoot
PndFtsHoughTrackCand Class Reference

Class for saving a FTS track cand. for Hough transform based FTS PR. More...

#include <PndFtsHoughTrackCand.h>

Inheritance diagram for PndFtsHoughTrackCand:

Public Member Functions

 PndFtsHoughTrackCand (PndFtsHoughTrackerTask *trackerTask=nullptr)
 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)
 

Detailed Description

Class for saving a FTS track cand. for Hough transform based FTS PR.

Author
Martin J. Galuska <martin [dot] j [dot] galuska (at) physik [dot] uni (minus) giessen [dot] de>

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 45 of file PndFtsHoughTrackCand.h.

Constructor & Destructor Documentation

◆ PndFtsHoughTrackCand()

PndFtsHoughTrackCand::PndFtsHoughTrackCand ( PndFtsHoughTrackerTask trackerTask = nullptr)

Set pointer to tracker task (super important as it provides an I/O interface to PandaRoot)

◆ ~PndFtsHoughTrackCand()

PndFtsHoughTrackCand::~PndFtsHoughTrackCand ( )

Member Function Documentation

◆ ClassDef()

PndFtsHoughTrackCand::ClassDef ( PndFtsHoughTrackCand  ,
 
)

Referenced by getZParabolaLine().

◆ getCharge()

Int_t PndFtsHoughTrackCand::getCharge ( ) const
inline

Definition at line 157 of file PndFtsHoughTrackCand.h.

References cos(), PndFtsHoughTracklet::getSecondVal(), PndFtsHoughTracklet::getThetaRadVal(), getThetaZxRad(), PndFtsHoughTracklet::getZRefLabSys(), and sin().

Referenced by isComplete().

158 {
159  if (0 < getQdivPzx()) {
160  return 1;
161  } else {
162  return -1;
163  }
164 }

◆ getP()

TVector3 PndFtsHoughTrackCand::getP ( const Double_t  zLabSys) const

Referenced by isComplete().

◆ getPndTrack()

PndTrack PndFtsHoughTrackCand::getPndTrack ( )

Referenced by isComplete().

◆ getPndTrackCand()

PndTrackCand PndFtsHoughTrackCand::getPndTrackCand ( )

Referenced by isComplete().

◆ getPos()

TVector3 PndFtsHoughTrackCand::getPos ( const Double_t  zLabSys) const

Referenced by isComplete().

◆ getThetaZxRad()

Double_t PndFtsHoughTrackCand::getThetaZxRad ( const Double_t  zLabSys) const

Referenced by getCharge(), and isComplete().

◆ getThetaZyRad()

Double_t PndFtsHoughTrackCand::getThetaZyRad ( const Double_t  ) const
inline

Definition at line 72 of file PndFtsHoughTrackCand.h.

References PndFtsHoughTracklet::getThetaRadVal().

Referenced by PndFtsHoughTrackFinder::LineBehindDipoleMatchesToLinePlusParabola().

72 { return fZyLine.getThetaRadVal(); }; // zLabSys //[R.K.03/2017] unused variable(s)
Double_t getThetaRadVal() const

◆ getTrackParPForHit()

FairTrackParP PndFtsHoughTrackCand::getTrackParPForHit ( const UInt_t  i)

Referenced by isComplete().

◆ getXLabSys()

Double_t PndFtsHoughTrackCand::getXLabSys ( const Double_t  zLabSys) const

◆ getZLineParabola()

Double_t PndFtsHoughTrackCand::getZLineParabola ( )
inline

Definition at line 74 of file PndFtsHoughTrackCand.h.

75  {
76  return fZCoordLineParabola;
77  }; // gets z coordinate in laboratory system where I switch from line before dipole to parabola within dipole (in zx plane)

◆ getZParabolaLine()

Double_t PndFtsHoughTrackCand::getZParabolaLine ( )
inline

Definition at line 78 of file PndFtsHoughTrackCand.h.

References ClassDef(), PndFtsHoughTracklet::getSecondVal(), SetZxLineBeforeDipole(), SetZxLineBehindDipole(), SetZxParabola(), and SetZyLine().

79  {
80  return fZCoordParabolaLine;
81  }; // gets z coordinate in laboratory system where I switch from parabola within dipole to line behind dipole (in zx plane)

◆ isComplete()

Bool_t PndFtsHoughTrackCand::isComplete ( ) const
inline

Definition at line 57 of file PndFtsHoughTrackCand.h.

References getCharge(), getP(), getPndTrack(), getPndTrackCand(), getPos(), getThetaZxRad(), getTrackParPForHit(), getXLabSys(), i, and PndFtsHoughTracklet::isSet().

57 { return (fZxLineBeforeDipole.isSet() && fZxParabola.isSet() && fZxLineBehindDipole.isSet() && fZyLine.isSet()); };

◆ Print()

void PndFtsHoughTrackCand::Print ( )

◆ SetZxLineBeforeDipole()

void PndFtsHoughTrackCand::SetZxLineBeforeDipole ( const PndFtsHoughTracklet  zxLineParabola)

Referenced by getZParabolaLine().

◆ SetZxLineBehindDipole()

void PndFtsHoughTrackCand::SetZxLineBehindDipole ( const PndFtsHoughTracklet  zxParabolaLine)

Referenced by getZParabolaLine().

◆ SetZxParabola()

void PndFtsHoughTrackCand::SetZxParabola ( const PndFtsHoughTracklet  zxParabola)

Referenced by getZParabolaLine().

◆ SetZyLine()

void PndFtsHoughTrackCand::SetZyLine ( const PndFtsHoughTracklet  zyLine)

Referenced by getZParabolaLine().


The documentation for this class was generated from the following file: