EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GFTrack Class Reference

Track object for genfit. genfit algorithms work on these objects. More...

#include <EicRoot/blob/master/genfit/GFTrack.h>

+ Inheritance diagram for GFTrack:
+ Collaboration diagram for GFTrack:

Public Member Functions

 GFTrack ()
 Default constructor – needed for compatibility with ROOT.
 
 GFTrack (const GFTrack &)
 Copy constructor.
 
GFTrackoperator= (const GFTrack &)
 assignement operator
 
 GFTrack (GFAbsTrackRep *, bool smooth=false)
 Initializing constructor.
 
virtual ~GFTrack ()
 
void reset ()
 Resets the GFTrack – deletes RecoHits!
 
int getFailedHits (int repId=-1)
 return the number of failed Hits in track fit repId == -1 will use cardinal rep
 
std::vector< GFAbsRecoHit * > getHits ()
 
std::map< GFAbsRecoHit
*, unsigned int > 
getHitMap ()
 
const GFTrackCandgetCand () const
 
GFAbsRecoHitgetHit (int id) const
 
unsigned int getNumHits () const
 
void mergeHits (GFTrack *trk)
 Merge two GFTracks. Only hits will be merged.
 
void sortHits ()
 
void releaseHits ()
 Clear hit vector. Note that hits will not be deleted!
 
void releaseTrackReps ()
 Clear TrackRep vector. Note that the Reps will not be deleted!
 
unsigned int getNextHitToFit () const
 Accessor for fNextHitToFit.
 
void setNextHitToFit (unsigned int i)
 Set next hit to be used in a fit.
 
GFAbsTrackRepgetTrackRep (int id) const
 Accessor for track representations.
 
unsigned int getNumReps () const
 Get number of track represenatations.
 
GFAbsTrackRepgetCardinalRep () const
 Get cardinal track representation.
 
unsigned int getCardinalRepID () const
 Get ID of the cardinal track representation.
 
TVector3 getMom () const
 Get momentum at the present position.
 
TVector3 getMom (const GFDetPlane &pl) const
 Get momentum at GFDetPlane.
 
TVector3 getPos () const
 Get present position.
 
TVector3 getPos (const GFDetPlane &pl) const
 Get position at GFDetPlane.
 
void getPosMomCov (TVector3 &pos, TVector3 &mom, TMatrixT< double > &cov)
 Get position, momentum, and 6x6 covariance at current position.
 
void getPosMomCov (const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixT< double > &cov)
 Get position, momentum, and 6x6 covariance at GFDetPlane.
 
double getChiSqu () const
 Get chi2 from backward filter.
 
double getForwardChiSqu () const
 Get chi2 from forward filter.
 
unsigned int getNDF () const
 Get NDF.
 
double getRedChiSqu () const
 Get chi2/NDF.
 
double getCharge () const
 Get charge from fit.
 
void fillGeoTrack (TVirtualGeoTrack *tr) const
 Fill TVirtualGeoTrack object Cardinal representation is used.
 
void fillGeoTrack (TVirtualGeoTrack *tr, unsigned int repid) const
 Fill TVirtualGeoTrack object with data from specified track rep.
 
void addFailedHit (unsigned int irep, unsigned int id)
 
void addHit (GFAbsRecoHit *theHit)
 deprecated!
 
void addHit (GFAbsRecoHit *theHit, unsigned int detId, unsigned int hitId, double rho=0., unsigned int planeId=0)
 Add single hit. Updates the GFTrackCand.
 
void addHitVector (std::vector< GFAbsRecoHit * > hits)
 Add collection of hits.
 
void addTrackRep (GFAbsTrackRep *theTrackRep)
 Add track represenation.
 
GFBookkeepinggetBK (int index=-1) const
 get GFBookKeeping object for particular track rep (default is cardinal rep)
 
void setCandidate (const GFTrackCand &cand, bool doreset=false)
 set track candidate
 
void setCardinalRep (unsigned int r)
 Choose cardinal track represenatation.
 
void getResiduals (unsigned int detId, unsigned int dim, unsigned int rep, std::vector< double > &result)
 Get residuals.
 
void setRepAtHit (unsigned int irep, int ihit)
 set the hit index at which plane,state&cov of rep irep is defined
 
int getRepAtHit (unsigned int irep) const
 get the hit index at which plane,state&cov of rep irep is defined
 
void clearRepAtHit ()
 clear the hit indices at which plane,state&cov of reps are defined
 
void printBookkeeping ()
 print bookkeeping
 
void Print (const Option_t *="") const
 
void clearBookkeeping ()
 
void clearFailedHits ()
 
bool getHitsByPlane (std::vector< std::vector< int > * > &retVal)
 
void setSmoothing (bool smooth=true, bool fast=false)
 Switch smoothing on or off for this track.
 
bool getSmoothing () const
 Read back if smoothing is/was turned on or off for this track.
 
bool getSmoothingFast () const
 Read back if "fast-smoothing" is/was turned on or off for this track.
 
void blowUpCovs (double blowUpFactor)
 this is needed to blow up the covariance matrix before a fitting pass drops off-diagonal elements and blows up diagonal by blowUpFactor
 

Private Attributes

TObjArray * fTrackReps
 Collection of track representations.
 
std::vector< GFAbsRecoHit * > fHits
 Collection of RecoHits.
 
std::vector< GFBookkeeping * > fBookkeeping
 Collection of Bookeeping objects for failed hits in every trackrep.
 
std::vector< int > fRepAtHit
 repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolations
 
GFTrackCand fCand
 Helper to store the indices of the hits in the track. See GFTrackCand for details.
 
unsigned int fCardinal_rep
 
unsigned int fNextHitToFit
 
bool fSmooth
 
bool fSmoothFast
 

Static Private Attributes

static const int fDefNumTrackReps = 10
 

Detailed Description

Track object for genfit. genfit algorithms work on these objects.

Author
Christian Höppner (Technische Universität München, original author)
Sebastian Neubert (Technische Universität München, original author)

Can be used as transient (only in memory) or persistent (written to ROOT-file) object.

A GFTrack contains a collection of RecoHits plus a collection of track representations. The GFTrackCand member is a helper object to store the indices of the hits in the GFTrack.

For a GFTrack one so called "cardinal representation" can be defined. It is that track representation that is used to access the fit results. Usually one will after the fit choose the best fitting representation to be the cardinal rep.

The GFTRack takes ownership over the GFAbsRecoHit pointers it holds.

Definition at line 61 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 61 of file GFTrack.h

Constructor & Destructor Documentation

GFTrack::GFTrack ( )

Default constructor – needed for compatibility with ROOT.

Definition at line 35 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 35 of file GFTrack.cxx

GFTrack::GFTrack ( const GFTrack _tr)

Copy constructor.

Definition at line 56 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 56 of file GFTrack.cxx

References addTrackRep(), fBookkeeping, fCand, fCardinal_rep, fHits, fNextHitToFit, fRepAtHit, fSmooth, fSmoothFast, fTrackReps, getHit(), getNumHits(), getNumReps(), and getTrackRep().

+ Here is the call graph for this function:

GFTrack::GFTrack ( GFAbsTrackRep defaultRep,
bool  smooth = false 
)

Initializing constructor.

A track needs at least one track representation to be useable. The given track representation has to contain starting values for the fit!

Definition at line 27 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 27 of file GFTrack.cxx

References addTrackRep(), fSmooth, and fSmoothFast.

+ Here is the call graph for this function:

GFTrack::~GFTrack ( )
virtual

Definition at line 41 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 41 of file GFTrack.cxx

References fBookkeeping, fHits, fTrackReps, and getNumReps().

+ Here is the call graph for this function:

Member Function Documentation

void GFTrack::addFailedHit ( unsigned int  irep,
unsigned int  id 
)
inline

Definition at line 308 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 308 of file GFTrack.h

References fBookkeeping.

Referenced by GFKalman::fittingPass().

+ Here is the caller graph for this function:

void GFTrack::addHit ( GFAbsRecoHit theHit)
inline

deprecated!

Definition at line 315 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 315 of file GFTrack.h

References fHits.

Referenced by mergeHits(), and GFDaf::processTrack().

+ Here is the caller graph for this function:

void GFTrack::addHit ( GFAbsRecoHit theHit,
unsigned int  detId,
unsigned int  hitId,
double  rho = 0.,
unsigned int  planeId = 0 
)
inline

Add single hit. Updates the GFTrackCand.

Definition at line 321 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 321 of file GFTrack.h

References GFTrackCand::addHit(), fCand, and fHits.

+ Here is the call graph for this function:

void GFTrack::addHitVector ( std::vector< GFAbsRecoHit * >  hits)
inline

Add collection of hits.

This is the standard way to fill the track with hit data

Definition at line 334 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 334 of file GFTrack.h

References fHits.

Referenced by PndRecoDafFit::Fit(), and PndRecoKalmanFit::Fit().

+ Here is the caller graph for this function:

void GFTrack::addTrackRep ( GFAbsTrackRep theTrackRep)
inline

Add track represenation.

The given track representation has to contain starting values for fit!

Definition at line 342 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 342 of file GFTrack.h

References fBookkeeping, fDefNumTrackReps, fRepAtHit, and fTrackReps.

Referenced by GFTrack(), operator=(), and GFDaf::processTrack().

+ Here is the caller graph for this function:

void GFTrack::blowUpCovs ( double  blowUpFactor)

this is needed to blow up the covariance matrix before a fitting pass drops off-diagonal elements and blows up diagonal by blowUpFactor

Definition at line 338 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 338 of file GFTrack.cxx

References Acts::Test::cov, GFAbsTrackRep::getCov(), getNumReps(), GFAbsTrackRep::getStatusFlag(), getTrackRep(), and GFAbsTrackRep::setCov().

Referenced by GFKalman::blowUpCovs().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::clearBookkeeping ( )
inline

Definition at line 407 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 407 of file GFTrack.h

References fBookkeeping, and getNumReps().

Referenced by sortHits().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::clearFailedHits ( )
inline

Definition at line 413 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 413 of file GFTrack.h

References fBookkeeping, and getNumReps().

+ Here is the call graph for this function:

void GFTrack::clearRepAtHit ( )
inline

clear the hit indices at which plane,state&cov of reps are defined

Definition at line 395 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 395 of file GFTrack.h

References fRepAtHit, and getNumReps().

Referenced by GFKalman::processTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::fillGeoTrack ( TVirtualGeoTrack *  tr) const
inline

Fill TVirtualGeoTrack object Cardinal representation is used.

Definition at line 298 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 298 of file GFTrack.h

References fCardinal_rep, and fillGeoTrack().

Referenced by fillGeoTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::fillGeoTrack ( TVirtualGeoTrack *  tr,
unsigned int  repid 
) const

Fill TVirtualGeoTrack object with data from specified track rep.

Definition at line 218 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 218 of file GFTrack.cxx

References fCand, fHits, GFTrackCand::getNHits(), GFAbsTrackRep::getPos(), GFAbsTrackRep::getState(), getTrackRep(), n, and pos().

+ Here is the call graph for this function:

GFBookkeeping* GFTrack::getBK ( int  index = -1) const
inline

get GFBookKeeping object for particular track rep (default is cardinal rep)

Definition at line 350 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 350 of file GFTrack.h

References fBookkeeping, fCardinal_rep, and getNumReps().

Referenced by GFDaf::copySmoothing(), GFKalman::fittingPass(), GFTools::getBiasedSmoothedData(), GFTools::getSmoothedData(), GFTools::getSmoothingPlane(), GFTools::getTrackLength(), GFKalman::processHit(), GFDaf::processTrack(), GFKalman::processTrack(), and GFDaf::saveWeights().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const GFTrackCand& GFTrack::getCand ( ) const
inline

Definition at line 151 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 151 of file GFTrack.h

References fCand.

Referenced by PrimSelector::Exec(), PndRecoKalmanFit::Fit(), PndRecoDafFit::Fit(), GenfitTrack2PndTrack(), and mergeHits().

+ Here is the caller graph for this function:

GFAbsTrackRep* GFTrack::getCardinalRep ( ) const
inline

Get cardinal track representation.

The user has to choose which track rep should be considered the best one after the fit. Usually the track representation giving the smallest chi2 is choosen. By default the first in the list is returned.

Definition at line 217 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 217 of file GFTrack.h

References fCardinal_rep, and fTrackReps.

Referenced by PrimSelector::Exec(), GenfitTrack2PndTrack(), getCharge(), getChiSqu(), getForwardChiSqu(), getMom(), getNDF(), getPos(), getPosMomCov(), getRedChiSqu(), and trackProximity().

+ Here is the caller graph for this function:

unsigned int GFTrack::getCardinalRepID ( ) const
inline

Get ID of the cardinal track representation.

Definition at line 221 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 221 of file GFTrack.h

References fCardinal_rep.

double GFTrack::getCharge ( ) const
inline

Get charge from fit.

Cardinal representation is used.

Definition at line 294 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 294 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getCharge().

Referenced by PrimSelector::Exec().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double GFTrack::getChiSqu ( ) const
inline

Get chi2 from backward filter.

Cardinal representation is used.

Definition at line 270 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 270 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getChiSqu().

Referenced by GenfitTrack2PndTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int GFTrack::getFailedHits ( int  repId = -1)
inline

return the number of failed Hits in track fit repId == -1 will use cardinal rep

Definition at line 134 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 134 of file GFTrack.h

References fBookkeeping, and fCardinal_rep.

double GFTrack::getForwardChiSqu ( ) const
inline

Get chi2 from forward filter.

Cardinal representation is used.

Definition at line 276 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 276 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getForwardChiSqu().

+ Here is the call graph for this function:

GFAbsRecoHit* GFTrack::getHit ( int  id) const
inline

Definition at line 153 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 153 of file GFTrack.h

References fHits.

Referenced by GFDaf::calcWeights(), GFDaf::copySmoothing(), GFTools::getBiasedSmoothedCov(), GFTools::getBiasedSmoothedPos(), GFTools::getBiasedSmoothedPosXYZ(), getResiduals(), GFTools::getSmoothedChiSqu(), GFTools::getSmoothedCov(), GFTools::getSmoothedPos(), GFTools::getSmoothedPosXYZ(), GFTrack(), GFDaf::initHitsWeights(), mergeHits(), operator=(), GFKalman::processHit(), and GFDaf::processTrack().

+ Here is the caller graph for this function:

std::map< GFAbsRecoHit *, unsigned int > GFTrack::getHitMap ( )

Get a map of the track's RecoHits and their hit IDs. Can be usefull for getting the ID of a certain RecoHit, since the RecoHit pointers are the keys of the map.

Definition at line 295 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 295 of file GFTrack.cxx

References fHits, and getNumHits().

+ Here is the call graph for this function:

std::vector<GFAbsRecoHit*> GFTrack::getHits ( )
inline

Get a vector of the track's RecoHits

Definition at line 143 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 143 of file GFTrack.h

References fHits.

bool GFTrack::getHitsByPlane ( std::vector< std::vector< int > * > &  retVal)

use planeId information of GFTrackCand and return by ref groups of hit ids which are in the same planes.

Definition at line 307 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 307 of file GFTrack.cxx

References fCand, fHits, GFTrackCand::getHitWithPlane(), and GFTrackCand::getNHits().

Referenced by GFDaf::initHitsWeights().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 GFTrack::getMom ( ) const
inline

Get momentum at the present position.

Cardinal representation is used.

Definition at line 227 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 227 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getMom().

Referenced by PrimSelector::Exec().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TVector3 GFTrack::getMom ( const GFDetPlane pl) const
inline

Get momentum at GFDetPlane.

The track will be extrapolated to GFDetPlane to get the momentum there. The track will not be modified. Cardinal representation is used.

Definition at line 234 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 234 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getMom().

+ Here is the call graph for this function:

unsigned int GFTrack::getNDF ( ) const
inline

Get NDF.

Cardinal representation is used.

Definition at line 282 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 282 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getNDF().

Referenced by GenfitTrack2PndTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

unsigned int GFTrack::getNextHitToFit ( ) const
inline

Accessor for fNextHitToFit.

Definition at line 193 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 193 of file GFTrack.h

References fNextHitToFit.

Referenced by GFKalman::fittingPass().

+ Here is the caller graph for this function:

unsigned int GFTrack::getNumHits ( ) const
inline

Definition at line 157 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 157 of file GFTrack.h

References fHits.

Referenced by GFDaf::calcWeights(), GFDaf::copySmoothing(), PndRecoDafFit::Fit(), PndRecoKalmanFit::Fit(), GFKalman::fittingPass(), GFTools::getBiasedSmoothedData(), GFTools::getClosestHit(), getHitMap(), getResiduals(), GFTools::getSmoothedData(), GFTools::getTrackLength(), GFTrack(), mergeHits(), operator=(), Print(), GFDaf::processTrack(), GFKalman::processTrack(), GFDaf::saveWeights(), and sortHits().

+ Here is the caller graph for this function:

unsigned int GFTrack::getNumReps ( ) const
inline

Get number of track represenatations.

Definition at line 207 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 207 of file GFTrack.h

References fTrackReps.

Referenced by blowUpCovs(), clearBookkeeping(), clearFailedHits(), clearRepAtHit(), GFDaf::copySmoothing(), GFKalman::fittingPass(), getBK(), getRepAtHit(), getResiduals(), GFTrack(), GFDaf::initHitsWeights(), operator=(), Print(), printBookkeeping(), GFDaf::processTrack(), GFKalman::processTrack(), reset(), GFDaf::saveWeights(), setCandidate(), setRepAtHit(), GFKalman::switchDirection(), and ~GFTrack().

+ Here is the caller graph for this function:

TVector3 GFTrack::getPos ( ) const
inline

Get present position.

Cardinal representation is used.

Definition at line 240 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 240 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getPos().

+ Here is the call graph for this function:

TVector3 GFTrack::getPos ( const GFDetPlane pl) const
inline

Get position at GFDetPlane.

The track will be extrapolated to GFDetPlane to get the position there. The track will not be modified. Cardinal representation is used.

Definition at line 247 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 247 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getPos().

+ Here is the call graph for this function:

void GFTrack::getPosMomCov ( TVector3 &  pos,
TVector3 &  mom,
TMatrixT< double > &  cov 
)
inline

Get position, momentum, and 6x6 covariance at current position.

Cardinal representation is used.

Definition at line 253 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 253 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getPosMomCov().

+ Here is the call graph for this function:

void GFTrack::getPosMomCov ( const GFDetPlane pl,
TVector3 &  pos,
TVector3 &  mom,
TMatrixT< double > &  cov 
)
inline

Get position, momentum, and 6x6 covariance at GFDetPlane.

The track will be extrapolated to GFDetPlane to get everything there. The track will not be modified. Cardinal representation is used.

Definition at line 262 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 262 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getPosMomCov().

+ Here is the call graph for this function:

double GFTrack::getRedChiSqu ( ) const
inline

Get chi2/NDF.

Cardinal representation is used.

Definition at line 288 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 288 of file GFTrack.h

References getCardinalRep(), and GFAbsTrackRep::getRedChiSqu().

+ Here is the call graph for this function:

int GFTrack::getRepAtHit ( unsigned int  irep) const
inline

get the hit index at which plane,state&cov of rep irep is defined

Definition at line 388 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 388 of file GFTrack.h

References fRepAtHit, and getNumReps().

Referenced by Print(), and GFKalman::processHit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::getResiduals ( unsigned int  detId,
unsigned int  dim,
unsigned int  rep,
std::vector< double > &  result 
)

Get residuals.

Parameters
detIdwhich detector?
dim= index of coordinate to choose from resiudal vector
repwhich track representation?
resultresults are written to this vector

Definition at line 233 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 233 of file GFTrack.cxx

References Acts::Test::cov, Acts::Test::dim, GFAbsTrackRep::extrapolate(), fCand, GFAbsRecoHit::getDetPlane(), GFAbsTrackRep::getDim(), GFTrackCand::getHit(), getHit(), GFAbsRecoHit::getHMatrix(), GFAbsRecoHit::getMeasurement(), getNumHits(), getNumReps(), GFAbsTrackRep::getState(), getTrackRep(), H, and Acts::UnitConstants::m.

+ Here is the call graph for this function:

bool GFTrack::getSmoothing ( ) const
inline

Read back if smoothing is/was turned on or off for this track.

Definition at line 433 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 433 of file GFTrack.h

References fSmooth.

Referenced by GFTools::getBiasedSmoothedData(), GFTools::getClosestHit(), GFTools::getSmoothedData(), GFTools::getTrackLength(), GFDaf::processTrack(), and GFKalman::processTrack().

+ Here is the caller graph for this function:

bool GFTrack::getSmoothingFast ( ) const
inline

Read back if "fast-smoothing" is/was turned on or off for this track.

Definition at line 437 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 437 of file GFTrack.h

References fSmoothFast.

Referenced by GFTools::getBiasedSmoothedData(), GFTools::getSmoothedData(), and GFKalman::processTrack().

+ Here is the caller graph for this function:

void GFTrack::mergeHits ( GFTrack trk)

Merge two GFTracks. Only hits will be merged.

All hits from trk will be merged into this GFTrack. trk will be empty afterwards.

Kalman::continueTrack can be used to include the newly added hits in the fit.

Note that the new hits are inserted at the end of the present track!

Definition at line 139 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 139 of file GFTrack.cxx

References addHit(), fHits, getCand(), GFTrackCand::getHit(), getHit(), and getNumHits().

+ Here is the call graph for this function:

GFTrack & GFTrack::operator= ( const GFTrack _tr)

assignement operator

Definition at line 79 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 79 of file GFTrack.cxx

References addTrackRep(), GFAbsTrackRep::clone(), fBookkeeping, fCand, fCardinal_rep, fHits, fNextHitToFit, fRepAtHit, fSmooth, fSmoothFast, fTrackReps, getHit(), getNumHits(), getNumReps(), and getTrackRep().

+ Here is the call graph for this function:

void GFTrack::Print ( const Option_t *  option = "") const

Definition at line 281 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 281 of file GFTrack.cxx

References fBookkeeping, fSmooth, fSmoothFast, getNumHits(), getNumReps(), getRepAtHit(), getTrackRep(), and GFAbsTrackRep::Print().

+ Here is the call graph for this function:

void GFTrack::printBookkeeping ( )

print bookkeeping

Definition at line 272 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 272 of file GFTrack.cxx

References fBookkeeping, and getNumReps().

+ Here is the call graph for this function:

void GFTrack::releaseHits ( )
inline

Clear hit vector. Note that hits will not be deleted!

Be carefull not to create memory leaks here.

Definition at line 183 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 183 of file GFTrack.h

References fHits.

void GFTrack::releaseTrackReps ( )
inline

Clear TrackRep vector. Note that the Reps will not be deleted!

Be carefull not to create memory leaks here.

Definition at line 189 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 189 of file GFTrack.h

References fTrackReps.

Referenced by GFDaf::processTrack().

+ Here is the caller graph for this function:

void GFTrack::reset ( )

Resets the GFTrack – deletes RecoHits!

Definition at line 121 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 121 of file GFTrack.cxx

References fBookkeeping, fHits, fRepAtHit, fTrackReps, and getNumReps().

Referenced by setCandidate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::setCandidate ( const GFTrackCand cand,
bool  doreset = false 
)

set track candidate

Definition at line 206 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 206 of file GFTrack.cxx

References fCand, fTrackReps, getNumReps(), and reset().

Referenced by PndRecoDafFit::Fit(), and PndRecoKalmanFit::Fit().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::setCardinalRep ( unsigned int  r)
inline

Choose cardinal track represenatation.

See Also
getCardinalRep

Definition at line 363 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 363 of file GFTrack.h

References fCardinal_rep.

void GFTrack::setNextHitToFit ( unsigned int  i)
inline

Set next hit to be used in a fit.

Definition at line 197 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 197 of file GFTrack.h

References fNextHitToFit.

Referenced by GFKalman::fittingPass(), and GFKalman::processTrack().

+ Here is the caller graph for this function:

void GFTrack::setRepAtHit ( unsigned int  irep,
int  ihit 
)
inline

set the hit index at which plane,state&cov of rep irep is defined

Definition at line 381 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 381 of file GFTrack.h

References fRepAtHit, and getNumReps().

Referenced by GFKalman::processHit(), and GFTools::updateRepSmoothed().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void GFTrack::setSmoothing ( bool  smooth = true,
bool  fast = false 
)
inline

Switch smoothing on or off for this track.

The "fast" parameter allows for a different method when retrieving the smoothed values with GFTools::get(biased)SmoothedData(), but is more demanding with regards to memory requirements.

Definition at line 429 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 429 of file GFTrack.h

References fSmooth, and fSmoothFast.

Referenced by PndRecoKalmanFit::Fit(), and GFDaf::processTrack().

+ Here is the caller graph for this function:

void GFTrack::sortHits ( )

Sort GFAbsRecoHits and GFTrackCand according to the sorting parameters rho of the GFAbsRecoHits. fRepAtHit is also updated. The bookkeeping and fNextHitToFit is reset.

Definition at line 152 of file GFTrack.cxx.

View newest version in sPHENIX GitHub at line 152 of file GFTrack.cxx

References clearBookkeeping(), fCand, fHits, fNextHitToFit, fRepAtHit, GFTrackCand::getNHits(), getNumHits(), and GFTrackCand::sortHits().

+ Here is the call graph for this function:

Member Data Documentation

std::vector<GFBookkeeping*> GFTrack::fBookkeeping
private

Collection of Bookeeping objects for failed hits in every trackrep.

Definition at line 83 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 83 of file GFTrack.h

Referenced by addFailedHit(), addTrackRep(), clearBookkeeping(), clearFailedHits(), getBK(), getFailedHits(), GFTrack(), operator=(), Print(), printBookkeeping(), reset(), and ~GFTrack().

GFTrackCand GFTrack::fCand
private

Helper to store the indices of the hits in the track. See GFTrackCand for details.

Definition at line 93 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 93 of file GFTrack.h

Referenced by addHit(), fillGeoTrack(), getCand(), getHitsByPlane(), getResiduals(), GFTrack(), operator=(), setCandidate(), and sortHits().

unsigned int GFTrack::fCardinal_rep
private

Definition at line 96 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 96 of file GFTrack.h

Referenced by fillGeoTrack(), getBK(), getCardinalRep(), getCardinalRepID(), getFailedHits(), GFTrack(), operator=(), and setCardinalRep().

const int GFTrack::fDefNumTrackReps = 10
staticprivate

Definition at line 95 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 95 of file GFTrack.h

Referenced by addTrackRep().

std::vector<GFAbsRecoHit*> GFTrack::fHits
private

Collection of RecoHits.

Definition at line 78 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 78 of file GFTrack.h

Referenced by addHit(), addHitVector(), fillGeoTrack(), getHit(), getHitMap(), getHits(), getHitsByPlane(), getNumHits(), GFTrack(), mergeHits(), operator=(), releaseHits(), reset(), sortHits(), and ~GFTrack().

unsigned int GFTrack::fNextHitToFit
private

Definition at line 98 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 98 of file GFTrack.h

Referenced by getNextHitToFit(), GFTrack(), operator=(), setNextHitToFit(), and sortHits().

std::vector<int> GFTrack::fRepAtHit
private

repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolations

Definition at line 88 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 88 of file GFTrack.h

Referenced by addTrackRep(), clearRepAtHit(), getRepAtHit(), GFTrack(), operator=(), reset(), setRepAtHit(), and sortHits().

bool GFTrack::fSmooth
private

Definition at line 100 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 100 of file GFTrack.h

Referenced by getSmoothing(), GFTrack(), operator=(), Print(), and setSmoothing().

bool GFTrack::fSmoothFast
private

Definition at line 101 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 101 of file GFTrack.h

Referenced by getSmoothingFast(), GFTrack(), operator=(), Print(), and setSmoothing().

TObjArray* GFTrack::fTrackReps
private

Collection of track representations.

this array is only to be added to in the addTrackRep method because the synchronized construction of bookkeeping objects and repAtHit array is ensured there. NEVER delete elements from this array! If this functionality will be need, it has to be done synchronized with bookkeeping!!

Definition at line 74 of file GFTrack.h.

View newest version in sPHENIX GitHub at line 74 of file GFTrack.h

Referenced by addTrackRep(), getCardinalRep(), getNumReps(), getTrackRep(), GFTrack(), operator=(), releaseTrackReps(), reset(), setCandidate(), and ~GFTrack().


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