FairRoot/PandaRoot
Public Member Functions | Private Attributes | List of all members
genfit::TrackPoint Class Reference

Object containing AbsMeasurement and AbsFitterInfo objects. More...

#include <TrackPoint.h>

Inheritance 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. More...
 
 TrackPoint (genfit::AbsMeasurement *rawMeasurement, Track *track)
 Contructor taking one measurement. More...
 
 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=NULL)
 
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. More...
 
AbsFitterInfogetFitterInfo (const AbsTrackRep *rep=NULL) const
 Get fitterInfo for rep. Per default, use cardinal rep. More...
 
KalmanFitterInfogetKalmanFitterInfo (const AbsTrackRep *rep=NULL) const
 Helper to avoid casting. More...
 
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. More...
 
void deleteRawMeasurements ()
 
void setFitterInfo (genfit::AbsFitterInfo *fitterInfo)
 Takes Ownership. More...
 
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. More...
 
std::vector< AbsMeasurement * > rawMeasurements_
 No ownership. More...
 
std::map< const AbsTrackRep
*, AbsFitterInfo * > 
fitterInfos_
 
std::vector< AbsFitterInfo * > vFitterInfos_
 Ownership over FitterInfos. More...
 
boost::scoped_ptr< ThinScattererthinScatterer_
 

Detailed Description

Object containing AbsMeasurement and AbsFitterInfo objects.

Definition at line 50 of file TrackPoint.h.

Constructor & Destructor Documentation

genfit::TrackPoint::TrackPoint ( )
genfit::TrackPoint::TrackPoint ( Track track)
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.

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.

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

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

virtual genfit::TrackPoint::~TrackPoint ( )
virtual

Member Function Documentation

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

Takes ownership and sets this as measurement's trackPoint.

Definition at line 113 of file TrackPoint.h.

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

113 {assert(rawMeasurement!=NULL); rawMeasurement->setTrackPoint(this); rawMeasurements_.push_back(rawMeasurement);}
std::vector< AbsMeasurement * > rawMeasurements_
No ownership.
Definition: TrackPoint.h:139
void setTrackPoint(TrackPoint *tp)
void genfit::TrackPoint::deleteFitterInfo ( const AbsTrackRep rep)
inline

Definition at line 117 of file TrackPoint.h.

References fitterInfos_.

117 {delete fitterInfos_[rep]; fitterInfos_.erase(rep);}
std::map< const AbsTrackRep *, AbsFitterInfo * > fitterInfos_
Definition: TrackPoint.h:141
void genfit::TrackPoint::deleteRawMeasurements ( )
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.

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

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

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

Get list of all fitterInfos.

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

Helper to avoid casting.

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

Definition at line 107 of file TrackPoint.h.

References thinScatterer_.

107 {return thinScatterer_.get();}
boost::scoped_ptr< ThinScatterer > thinScatterer_
Definition: TrackPoint.h:152
unsigned int genfit::TrackPoint::getNumRawMeasurements ( ) const
inline

Definition at line 95 of file TrackPoint.h.

References rawMeasurements_.

95 {return rawMeasurements_.size();}
std::vector< AbsMeasurement * > rawMeasurements_
No ownership.
Definition: TrackPoint.h:139
AbsMeasurement* genfit::TrackPoint::getRawMeasurement ( int  i = 0) const
const std::vector< genfit::AbsMeasurement* >& genfit::TrackPoint::getRawMeasurements ( ) const
inline

Definition at line 93 of file TrackPoint.h.

References rawMeasurements_.

93 {return rawMeasurements_;}
std::vector< AbsMeasurement * > rawMeasurements_
No ownership.
Definition: TrackPoint.h:139
double genfit::TrackPoint::getSortingParameter ( ) const
inline

Definition at line 88 of file TrackPoint.h.

References sortingParameter_.

Referenced by genfit::TrackPointComparator::operator()().

88 {return sortingParameter_;}
double sortingParameter_
Definition: TrackPoint.h:133
Track* genfit::TrackPoint::getTrack ( ) const
inline

Definition at line 90 of file TrackPoint.h.

References track_.

90 {return track_;}
Track * track_
Pointer to Track where TrackPoint belongs to.
Definition: TrackPoint.h:136
bool genfit::TrackPoint::hasFitterInfo ( const AbsTrackRep rep) const
inline

Definition at line 103 of file TrackPoint.h.

References fitterInfos_.

103  {
104  return (fitterInfos_.find(rep) != fitterInfos_.end());
105  }
std::map< const AbsTrackRep *, AbsFitterInfo * > fitterInfos_
Definition: TrackPoint.h:141
bool genfit::TrackPoint::hasRawMeasurements ( ) const
inline

Definition at line 96 of file TrackPoint.h.

References rawMeasurements_.

96 {return (rawMeasurements_.size() != 0);}
std::vector< AbsMeasurement * > rawMeasurements_
No ownership.
Definition: TrackPoint.h:139
bool genfit::TrackPoint::hasThinScatterer ( ) const
inline

Definition at line 108 of file TrackPoint.h.

References thinScatterer_.

108 {return thinScatterer_.get() != NULL;}
boost::scoped_ptr< ThinScatterer > thinScatterer_
Definition: TrackPoint.h:152
TrackPoint& genfit::TrackPoint::operator= ( TrackPoint  )
void genfit::TrackPoint::Print ( const Option_t *  = "") const
void genfit::TrackPoint::setFitterInfo ( genfit::AbsFitterInfo fitterInfo)

Takes Ownership.

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

Definition at line 119 of file TrackPoint.h.

References thinScatterer_.

119 {thinScatterer_.reset(scatterer);}
boost::scoped_ptr< ThinScatterer > thinScatterer_
Definition: TrackPoint.h:152
void genfit::TrackPoint::setSortingParameter ( double  sortingParameter)
inline

Definition at line 111 of file TrackPoint.h.

References sortingParameter_.

111 {sortingParameter_ = sortingParameter;}
double sortingParameter_
Definition: TrackPoint.h:133
void genfit::TrackPoint::setTrack ( Track track)
inline

Definition at line 91 of file TrackPoint.h.

References track, and track_.

91 {track_ = track;}
PndMCTrack * track
Definition: anaLmdCluster.C:89
Track * track_
Pointer to Track where TrackPoint belongs to.
Definition: TrackPoint.h:136
void genfit::TrackPoint::swap ( TrackPoint other)

Member Data Documentation

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

Definition at line 141 of file TrackPoint.h.

Referenced by deleteFitterInfo(), and hasFitterInfo().

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 139 of file TrackPoint.h.

Referenced by addRawMeasurement(), getNumRawMeasurements(), getRawMeasurements(), and hasRawMeasurements().

double genfit::TrackPoint::sortingParameter_
private

Definition at line 133 of file TrackPoint.h.

Referenced by getSortingParameter(), and setSortingParameter().

boost::scoped_ptr<ThinScatterer> genfit::TrackPoint::thinScatterer_
private

Definition at line 152 of file TrackPoint.h.

Referenced by getMaterialInfo(), hasThinScatterer(), and setScatterer().

Track* genfit::TrackPoint::track_
private

Pointer to Track where TrackPoint belongs to.

Definition at line 136 of file TrackPoint.h.

Referenced by getTrack(), and setTrack().

std::vector< AbsFitterInfo* > genfit::TrackPoint::vFitterInfos_
private

Ownership over FitterInfos.

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

Definition at line 149 of file TrackPoint.h.


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