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

Object containing AbsMeasurement and AbsFitterInfo objects. More...

#include <fun4all_GenFit/blob/master/core/include/TrackPoint.h>

+ Inheritance diagram for genfit::TrackPoint:
+ Collaboration diagram for genfit::TrackPoint:

Public Member Functions

 TrackPoint ()
 
 TrackPoint (Track *track)
 
 TrackPoint (const std::vector< genfit::AbsMeasurement * > &rawMeasurements, Track *track)
 Contructor taking list of measurements.
 
 TrackPoint (genfit::AbsMeasurement *rawMeasurement, Track *track)
 Contructor taking one measurement.
 
 TrackPoint (const TrackPoint &)
 
TrackPointoperator= (TrackPoint)
 
void swap (TrackPoint &other)
 
 TrackPoint (const TrackPoint &rhs, const std::map< const genfit::AbsTrackRep *, genfit::AbsTrackRep * > &map, const std::vector< const genfit::AbsTrackRep * > *repsToIgnore=nullptr)
 
virtual ~TrackPoint ()
 
double getSortingParameter () const
 
TrackgetTrack () const
 
void setTrack (Track *track)
 
const std::vector
< genfit::AbsMeasurement * > & 
getRawMeasurements () const
 
AbsMeasurementgetRawMeasurement (int i=0) const
 
unsigned int getNumRawMeasurements () const
 
bool hasRawMeasurements () const
 
std::vector
< genfit::AbsFitterInfo * > 
getFitterInfos () const
 Get list of all fitterInfos.
 
AbsFitterInfogetFitterInfo (const AbsTrackRep *rep=nullptr) const
 Get fitterInfo for rep. Per default, use cardinal rep.
 
KalmanFitterInfogetKalmanFitterInfo (const AbsTrackRep *rep=nullptr) const
 Helper to avoid casting.
 
bool hasFitterInfo (const AbsTrackRep *rep) const
 
ThinScatterergetMaterialInfo () const
 
bool hasThinScatterer () const
 
void setSortingParameter (double sortingParameter)
 
void addRawMeasurement (genfit::AbsMeasurement *rawMeasurement)
 Takes ownership and sets this as measurement's trackPoint.
 
void deleteRawMeasurements ()
 
void setFitterInfo (genfit::AbsFitterInfo *fitterInfo)
 Takes Ownership.
 
void deleteFitterInfo (const AbsTrackRep *rep)
 
void setScatterer (ThinScatterer *scatterer)
 
void Print (const Option_t *="") const
 
void fixupRepsForReading ()
 

Private Attributes

double sortingParameter_
 
Tracktrack_
 Pointer to Track where TrackPoint belongs to.
 
std::vector< AbsMeasurement * > rawMeasurements_
 No ownership.
 
std::map< const AbsTrackRep
*, AbsFitterInfo * > 
fitterInfos_
 
std::map< unsigned int,
AbsFitterInfo * > 
vFitterInfos_
 Ownership over FitterInfos.
 
std::unique_ptr< ThinScattererthinScatterer_
 

Detailed Description

Object containing AbsMeasurement and AbsFitterInfo objects.

Definition at line 46 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 46 of file TrackPoint.h

Constructor & Destructor Documentation

genfit::TrackPoint::TrackPoint ( )

Definition at line 32 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 32 of file TrackPoint.cc

genfit::TrackPoint::TrackPoint ( Track track)

Definition at line 38 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 38 of file TrackPoint.cc

genfit::TrackPoint::TrackPoint ( const std::vector< genfit::AbsMeasurement * > &  rawMeasurements,
Track track 
)

Contructor taking list of measurements.

AbsMeasurement::setTrackPoint() of each measurement will be called. TrackPoint takes ownership over rawMeasurements.

Definition at line 44 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 44 of file TrackPoint.cc

References addRawMeasurement(), Acts::UnitConstants::m, and rawMeasurements_.

+ Here is the call graph for this function:

genfit::TrackPoint::TrackPoint ( genfit::AbsMeasurement rawMeasurement,
Track track 
)

Contructor taking one measurement.

AbsMeasurement::setTrackPoint() of the measurement will be called. TrackPoint takes ownership over the rawMeasurement.

Definition at line 54 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 54 of file TrackPoint.cc

References addRawMeasurement().

+ Here is the call graph for this function:

genfit::TrackPoint::TrackPoint ( const TrackPoint rhs)

Definition at line 61 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 61 of file TrackPoint.cc

References addRawMeasurement(), genfit::AbsMeasurement::clone(), fitterInfos_, it, rawMeasurements_, setFitterInfo(), genfit::AbsFitterInfo::setTrackPoint(), and thinScatterer_.

+ Here is the call graph for this function:

genfit::TrackPoint::TrackPoint ( const TrackPoint rhs,
const std::map< const genfit::AbsTrackRep *, genfit::AbsTrackRep * > &  map,
const std::vector< const genfit::AbsTrackRep * > *  repsToIgnore = nullptr 
)

custom copy constructor where all TrackRep pointers are exchanged according to the map. FitterInfos with a rep in repsToIgnore will NOT be copied.

Definition at line 82 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 82 of file TrackPoint.cc

References addRawMeasurement(), fitterInfos_, it, Acts::UnitConstants::m, rawMeasurements_, setFitterInfo(), genfit::AbsFitterInfo::setRep(), genfit::AbsFitterInfo::setTrackPoint(), and thinScatterer_.

+ Here is the call graph for this function:

genfit::TrackPoint::~TrackPoint ( )
virtual

Definition at line 134 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 134 of file TrackPoint.cc

References fitterInfos_, it, and rawMeasurements_.

Member Function Documentation

void genfit::TrackPoint::addRawMeasurement ( genfit::AbsMeasurement rawMeasurement)
inline

Takes ownership and sets this as measurement's trackPoint.

Definition at line 109 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 109 of file TrackPoint.h

References rawMeasurements_, and genfit::AbsMeasurement::setTrackPoint().

Referenced by TrackPoint().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void genfit::TrackPoint::deleteFitterInfo ( const AbsTrackRep rep)
inline

Definition at line 113 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 113 of file TrackPoint.h

References fitterInfos_.

Referenced by genfit::GblFitter::cleanGblInfo(), genfit::KalmanFitter::fitTrack(), and genfit::KalmanFitterRefTrack::prepareTrack().

+ Here is the caller graph for this function:

void genfit::TrackPoint::deleteRawMeasurements ( )

Definition at line 186 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 186 of file TrackPoint.cc

References rawMeasurements_.

void genfit::TrackPoint::fixupRepsForReading ( )

This function is used when reading the TrackPoint and is called by the owner in order to build fitterInfos_ from vFitterInfos_. This requires that the track_ be set. It also empties vFitterInfos_ which has served its purpose after this function is called.

Definition at line 319 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 319 of file TrackPoint.cc

References fitterInfos_, genfit::Track::getTrackRep(), and track_.

+ Here is the call graph for this function:

AbsFitterInfo * genfit::TrackPoint::getFitterInfo ( const AbsTrackRep rep = nullptr) const

Get fitterInfo for rep. Per default, use cardinal rep.

Definition at line 170 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 170 of file TrackPoint.cc

References fitterInfos_, genfit::Track::getCardinalRep(), it, and track_.

Referenced by genfit::GblFitter::collectGblPoints(), genfit::EventDisplay::drawEvent(), PHGenFit::Track::extrapolateToCylinder(), PHGenFit2::Track::extrapolateToCylinder(), PHGenFit::Track::extrapolateToLine(), PHGenFit2::Track::extrapolateToLine(), PHGenFit2::Track::extrapolateToPlane(), PHGenFit::Track::extrapolateToPlane(), PHGenFit::Track::extrapolateToPoint(), PHGenFit2::Track::extrapolateToPoint(), genfit::KalmanFitterRefTrack::fitTrack(), PHGenFit::Track::get_charge(), PHGenFit2::Track::get_charge(), PHGenFit::Track::get_mom(), PHGenFit2::Track::get_mom(), genfit::Track::getFittedState(), getKalmanFitterInfo(), genfit::Track::getTOF(), main(), PHGenFitTrkFitter::MakeSvtxTrack(), genfit::KalmanFitterRefTrack::prepareTrack(), genfit::KalmanFitter::processTrackPartially(), genfit::KalmanFitter::processTrackPoint(), genfit::KalmanFitterRefTrack::processTrackWithRep(), genfit::KalmanFitter::processTrackWithRep(), genfit::GFGbl::processTrackWithRep(), genfit::GblFitter::processTrackWithRep(), genfit::KalmanFitterRefTrack::removeOutdated(), genfit::GblFitterInfo::updateFitResults(), genfit::GblFitter::updateGblInfo(), PHGenFit2::Track::updateOneMeasurementKalman(), and PHGenFit::Track::updateOneMeasurementKalman().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::vector< AbsFitterInfo * > genfit::TrackPoint::getFitterInfos ( ) const

Get list of all fitterInfos.

Definition at line 156 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 156 of file TrackPoint.cc

References fitterInfos_, and it.

Referenced by Print().

+ Here is the caller graph for this function:

KalmanFitterInfo * genfit::TrackPoint::getKalmanFitterInfo ( const AbsTrackRep rep = nullptr) const

Helper to avoid casting.

Definition at line 180 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 180 of file TrackPoint.cc

References getFitterInfo().

Referenced by PHTpcTrackFollower::get_projected_coordinate(), PHGenFit2::Track::get_track_info(), and PHTpcTrackFollower::get_track_layer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ThinScatterer* genfit::TrackPoint::getMaterialInfo ( ) const
inline

Definition at line 103 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 103 of file TrackPoint.h

References thinScatterer_.

Referenced by genfit::GblFitterInfo::constructGblPoint().

+ Here is the caller graph for this function:

unsigned int genfit::TrackPoint::getNumRawMeasurements ( ) const
inline

Definition at line 91 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 91 of file TrackPoint.h

References rawMeasurements_.

Referenced by genfit::EventDisplay::drawEvent(), genfit::AbsKalmanFitter::getMeasurements(), and genfit::GFGbl::processTrackWithRep().

+ Here is the caller graph for this function:

const std::vector< genfit::AbsMeasurement* >& genfit::TrackPoint::getRawMeasurements ( ) const
inline

Definition at line 89 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 89 of file TrackPoint.h

References rawMeasurements_.

Referenced by genfit::Track::constructTrackCand(), genfit::KalmanFitterRefTrack::prepareTrack(), genfit::KalmanFitter::processTrackPoint(), PHGenFit::Track::updateOneMeasurementKalman(), and PHGenFit2::Track::updateOneMeasurementKalman().

+ Here is the caller graph for this function:

double genfit::TrackPoint::getSortingParameter ( ) const
inline

Definition at line 84 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 84 of file TrackPoint.h

References sortingParameter_.

Referenced by genfit::GblFitter::constructGblInfo(), genfit::Track::constructTrackCand(), and genfit::TrackPointComparator::operator()().

+ Here is the caller graph for this function:

Track* genfit::TrackPoint::getTrack ( ) const
inline

Definition at line 86 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 86 of file TrackPoint.h

References track_.

Referenced by genfit::GblFitterInfo::constructGblPoint(), genfit::KalmanFitterInfo::getFittedState(), genfit::KalmanFitterRefTrack::processTrackPoint(), genfit::KalmanFitterRefTrack::processTrackPointSqrt(), genfit::GblFitterInfo::setReferenceState(), and genfit::GblFitterInfo::updateFitResults().

+ Here is the caller graph for this function:

bool genfit::TrackPoint::hasRawMeasurements ( ) const
inline

Definition at line 92 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 92 of file TrackPoint.h

References rawMeasurements_.

Referenced by genfit::GblFitter::cleanGblInfo(), genfit::EventDisplay::drawEvent(), genfit::GblFitterInfo::hasMeasurements(), genfit::Track::insertPoint(), genfit::KalmanFitterRefTrack::prepareTrack(), genfit::KalmanFitter::processTrackPoint(), genfit::KalmanFitterRefTrack::removeOutdated(), and genfit::GblFitterInfo::updateMeasurementAndPlane().

+ Here is the caller graph for this function:

bool genfit::TrackPoint::hasThinScatterer ( ) const
inline

Definition at line 104 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 104 of file TrackPoint.h

References thinScatterer_.

Referenced by genfit::GblFitterInfo::constructGblPoint().

+ Here is the caller graph for this function:

TrackPoint & genfit::TrackPoint::operator= ( TrackPoint  rhs)

Definition at line 110 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 110 of file TrackPoint.cc

References fitterInfos_, it, rawMeasurements_, and swap().

+ Here is the call graph for this function:

void genfit::TrackPoint::Print ( const Option_t *  = "") const

Definition at line 203 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 203 of file TrackPoint.cc

References fitterInfos_, getFitterInfos(), it, genfit::printOut, rawMeasurements_, sortingParameter_, thinScatterer_, and track_.

+ Here is the call graph for this function:

void genfit::TrackPoint::setFitterInfo ( genfit::AbsFitterInfo fitterInfo)

Takes Ownership.

Definition at line 194 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 194 of file TrackPoint.cc

References fitterInfos_, genfit::AbsFitterInfo::getRep(), and hasFitterInfo().

Referenced by genfit::GblFitter::constructGblInfo(), genfit::KalmanFitterRefTrack::prepareTrack(), genfit::KalmanFitter::processTrackPoint(), TrackPoint(), PHRaveVertexing::TranslateSvtxToGenFitTrack(), PHGenFit::Track::updateOneMeasurementKalman(), and PHGenFit2::Track::updateOneMeasurementKalman().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void genfit::TrackPoint::setScatterer ( ThinScatterer scatterer)
inline

Definition at line 115 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 115 of file TrackPoint.h

References thinScatterer_.

Referenced by genfit::GblFitter::cleanGblInfo(), genfit::GblFitter::constructGblInfo(), and main().

+ Here is the caller graph for this function:

void genfit::TrackPoint::setSortingParameter ( double  sortingParameter)
inline

Definition at line 107 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 107 of file TrackPoint.h

References sortingParameter_.

Referenced by genfit::GblFitter::constructGblInfo(), genfit::Track::createMeasurements(), genfit::KalmanFitterRefTrack::prepareTrack(), and genfit::GblFitter::sortHits().

+ Here is the caller graph for this function:

void genfit::TrackPoint::setTrack ( Track track)
inline

Definition at line 87 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 87 of file TrackPoint.h

References track_.

Referenced by genfit::Track::insertPoint().

+ Here is the caller graph for this function:

void genfit::TrackPoint::swap ( TrackPoint other)

Definition at line 125 of file TrackPoint.cc.

View newest version in sPHENIX GitHub at line 125 of file TrackPoint.cc

References fitterInfos_, rawMeasurements_, sortingParameter_, boost::swap(), thinScatterer_, and track_.

Referenced by operator=().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

std::map< const AbsTrackRep*, AbsFitterInfo* > genfit::TrackPoint::fitterInfos_
private

Definition at line 137 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 137 of file TrackPoint.h

Referenced by deleteFitterInfo(), fixupRepsForReading(), getFitterInfo(), getFitterInfos(), hasFitterInfo(), operator=(), Print(), setFitterInfo(), swap(), TrackPoint(), and ~TrackPoint().

std::vector<AbsMeasurement*> genfit::TrackPoint::rawMeasurements_
private

No ownership.

Can be more than one, e.g. multiple measurements in the same Si detector, left and right measurements of a wire detector etc.

Definition at line 135 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 135 of file TrackPoint.h

Referenced by addRawMeasurement(), deleteRawMeasurements(), getNumRawMeasurements(), getRawMeasurement(), getRawMeasurements(), hasRawMeasurements(), operator=(), Print(), swap(), TrackPoint(), and ~TrackPoint().

double genfit::TrackPoint::sortingParameter_
private

Definition at line 129 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 129 of file TrackPoint.h

Referenced by getSortingParameter(), Print(), setSortingParameter(), and swap().

std::unique_ptr<ThinScatterer> genfit::TrackPoint::thinScatterer_
private

Definition at line 147 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 147 of file TrackPoint.h

Referenced by getMaterialInfo(), hasThinScatterer(), Print(), setScatterer(), swap(), and TrackPoint().

Track* genfit::TrackPoint::track_
private

Pointer to Track where TrackPoint belongs to.

Definition at line 132 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 132 of file TrackPoint.h

Referenced by fixupRepsForReading(), getFitterInfo(), getTrack(), Print(), setTrack(), and swap().

std::map<unsigned int, AbsFitterInfo*> genfit::TrackPoint::vFitterInfos_
private

Ownership over FitterInfos.

The following map is read while streaming. After reading the TrackPoint, the Track's streamer will call fixupRepsForReading, and this map will be translated into the map fitterInfos. The map is indexed by the ids of the corresponding TrackReps.

Definition at line 145 of file TrackPoint.h.

View newest version in sPHENIX GitHub at line 145 of file TrackPoint.h


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