FairRoot/PandaRoot
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
GFTrack Class Reference

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

#include <GFTrack.h>

Inheritance diagram for GFTrack:

Public Member Functions

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

Private Attributes

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

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 60 of file GFTrack.h.

Constructor & Destructor Documentation

GFTrack::GFTrack ( )

Default constructor – needed for compatibility with ROOT.

Definition at line 32 of file GFTrack.cxx.

33  : fTrackReps(NULL), fCardinal_rep(0), fNextHitToFit(0), fSmooth(false)
34 {
35  //trackReps = new TObjArray(defNumTrackReps);
36 }
bool fSmooth
Definition: GFTrack.h:100
unsigned int fNextHitToFit
Definition: GFTrack.h:98
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int fCardinal_rep
Definition: GFTrack.h:96
GFTrack::GFTrack ( const GFTrack _tr)

Copy constructor.

Definition at line 53 of file GFTrack.cxx.

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

53  :TObject(_tr) {
54  fCand=_tr.fCand;
57  fSmooth=_tr.fSmooth;
58  for(unsigned int i=0;i<_tr.getNumHits();i++) {
59  fHits.push_back((_tr.getHit(i))->clone());
60  }
61  fTrackReps = NULL;
62  for(unsigned int i=0; i<_tr.getNumReps();i++) {
63  addTrackRep( (_tr.getTrackRep(i))->clone() );
64  }
65  for(unsigned int i=0; i<fBookkeeping.size(); ++i) delete fBookkeeping[i];
66  fBookkeeping.clear();
67 
68  for(unsigned int i=0;i<_tr.fBookkeeping.size();++i){
69  assert(_tr.fBookkeeping.at(i)!= NULL) ;
70  fBookkeeping.push_back(new GFBookkeeping(*(_tr.fBookkeeping.at(i))));
71  }
72  fRepAtHit = _tr.fRepAtHit;
73 }
unsigned int getNumHits() const
Definition: GFTrack.h:148
bool fSmooth
Definition: GFTrack.h:100
Int_t i
Definition: run_full.C:25
unsigned int fNextHitToFit
Definition: GFTrack.h:98
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
void addTrackRep(GFAbsTrackRep *theTrackRep)
Add track represenation.
Definition: GFTrack.h:318
GFAbsRecoHit * getHit(int id) const
Definition: GFTrack.h:144
unsigned int fCardinal_rep
Definition: GFTrack.h:96
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 25 of file GFTrack.cxx.

References addTrackRep(), and fSmooth.

26  : fTrackReps(NULL),fCardinal_rep(0), fNextHitToFit(0), fSmooth(false)
27 {
28  addTrackRep(defaultRep);
29  fSmooth = smooth;
30 }
bool fSmooth
Definition: GFTrack.h:100
unsigned int fNextHitToFit
Definition: GFTrack.h:98
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
void addTrackRep(GFAbsTrackRep *theTrackRep)
Add track represenation.
Definition: GFTrack.h:318
unsigned int fCardinal_rep
Definition: GFTrack.h:96
GFTrack::~GFTrack ( )
virtual

Definition at line 38 of file GFTrack.cxx.

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

38  {
39  if(fTrackReps!=NULL){
40  for(unsigned int i=0;i<getNumReps();i++) {
41  delete fTrackReps->At(i);
42  }
43  delete fTrackReps;
44  }
45  for(unsigned int i=0;i<fHits.size();i++) {
46  if(fHits.at(i)!=NULL) delete fHits.at(i);
47  }
48  for(unsigned int i=0;i<fBookkeeping.size();++i){
49  if(fBookkeeping.at(i)!=NULL) delete fBookkeeping.at(i);
50  }
51 }
Int_t i
Definition: run_full.C:25
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83

Member Function Documentation

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

Definition at line 284 of file GFTrack.h.

References fBookkeeping.

Referenced by GFKalman::fittingPass().

284  {
285  assert(irep<fBookkeeping.size());
286  fBookkeeping.at(irep)->addFailedHit(id);
287  }
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
void GFTrack::addHit ( GFAbsRecoHit theHit)
inline

deprecated!

Definition at line 291 of file GFTrack.h.

References fHits.

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

291  {
292  fHits.push_back(theHit);
293  }
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
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 297 of file GFTrack.h.

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

301  {
302  fHits.push_back(theHit);
303  fCand.addHit(detId,hitId,rho,planeId);
304  }
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
void addHit(unsigned int detId, unsigned int hitId, double rho=0., unsigned int planeId=0)
Definition: GFTrackCand.cxx:44
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 310 of file GFTrack.h.

References fHits, and hits.

Referenced by PndHypDKalmanTask::Exec(), PndLmdKalmanTask::Exec(), PndRecoDafFit::Fit(), and PndRecoKalmanFit::Fit().

310  {
311  fHits = hits;
312  }
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
CbmHit * hits[nHits]
Definition: RiemannTest.C:19
void GFTrack::addTrackRep ( GFAbsTrackRep theTrackRep)
inline

Add track represenation.

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

Definition at line 318 of file GFTrack.h.

References fBookkeeping, fDefNumTrackReps, fRepAtHit, and fTrackReps.

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

318  {
319  if(fTrackReps==NULL)fTrackReps=new TObjArray(fDefNumTrackReps);
320  fTrackReps->Add(theTrackRep);
321  fBookkeeping.push_back( new GFBookkeeping() );
322  fRepAtHit.push_back(-1);
323  }
static const int fDefNumTrackReps
Definition: GFTrack.h:95
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
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 257 of file GFTrack.cxx.

References GFAbsTrackRep::getCov(), getNumReps(), GFAbsTrackRep::getStatusFlag(), getTrackRep(), i, and GFAbsTrackRep::setCov().

Referenced by GFKalman::blowUpCovs().

257  {
258  int nreps=getNumReps();
259  for(int irep=0; irep<nreps; ++irep){
260  GFAbsTrackRep* arep=getTrackRep(irep);
261 
262  //dont do it for already compromsied reps, since they wont be fitted anyway
263  if(arep->getStatusFlag()==0) {
264  TMatrixT<double> cov = arep->getCov();
265  for(int i=0;i<cov.GetNrows();++i){
266  for(int j=0;j<cov.GetNcols();++j){
267  //if(i!=j){//off diagonal
268  // cov[i][j]=0.;
269  //}
270  //else{//diagonal
271  cov[i][j] = cov[i][j] * blowUpFactor;
272  //}
273  }
274  }
275  arep->setCov(cov);
276  }
277  }
278 }
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
void setCov(const TMatrixT< double > &aCov)
bool getStatusFlag()
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
TMatrixT< double > getCov() const
void GFTrack::clearBookkeeping ( )
inline

Definition at line 383 of file GFTrack.h.

References fBookkeeping, getNumReps(), and i.

383  {
384  for(unsigned int i=0;i<getNumReps();++i){
385  fBookkeeping.at(i)->clearAll();
386  }
387  }
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
void GFTrack::clearFailedHits ( )
inline

Definition at line 389 of file GFTrack.h.

References fBookkeeping, getNumReps(), and i.

389  {
390  for(unsigned int i=0;i<getNumReps();++i){
391  fBookkeeping.at(i)->clearFailedHits();
392  }
393  }
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
void GFTrack::clearRepAtHit ( )
inline

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

Definition at line 371 of file GFTrack.h.

References fRepAtHit, getNumReps(), and i.

Referenced by GFKalman::processTrack().

371  {
372  for(unsigned int i=0;i<getNumReps();++i){
373  fRepAtHit.at(i)=-1;
374  }
375  }
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
void GFTrack::fillGeoTrack ( TVirtualGeoTrack *  tr) const
inline

Fill TVirtualGeoTrack object Cardinal representation is used.

Definition at line 274 of file GFTrack.h.

References fCardinal_rep, and fillGeoTrack().

Referenced by fillGeoTrack().

void fillGeoTrack(TVirtualGeoTrack *tr) const
Fill TVirtualGeoTrack object Cardinal representation is used.
Definition: GFTrack.h:274
unsigned int fCardinal_rep
Definition: GFTrack.h:96
void GFTrack::fillGeoTrack ( TVirtualGeoTrack *  tr,
unsigned int  repid 
) const

Fill TVirtualGeoTrack object with data from specified track rep.

Definition at line 160 of file GFTrack.cxx.

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

161 {
162  GFAbsTrackRep* rep=getTrackRep(repid);
163  unsigned int n=fCand.getNHits();
164  rep->getState().Print();
165  for(unsigned int i=0; i<n; ++i){// loop over hits
166  GFDetPlane pl=fHits[i]->getDetPlane(rep);
167  TVector3 pos=rep->getPos(pl);
168  std::cout<<pos.X()<<","<<pos.Y()<<","<<pos.Z()<<std::endl;
169  geotrk->AddPoint(pos.X(),pos.Y(),pos.Z(),0);
170  }// end loop over hits
171 }
TVector3 pos
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
TMatrixT< double > getState() const
Int_t i
Definition: run_full.C:25
Detector plane genfit geometry class.
Definition: GFDetPlane.h:59
unsigned int getNHits() const
Definition: GFTrackCand.h:113
int n
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
virtual TVector3 getPos(const GFDetPlane &pl)=0
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
GFBookkeeping* GFTrack::getBK ( int  index = -1)
inline

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

Definition at line 326 of file GFTrack.h.

References fBookkeeping, fCardinal_rep, and getNumReps().

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

326  {
327  if(index==-1) return fBookkeeping.at(fCardinal_rep);
328  assert((unsigned int)index<getNumReps());
329  return fBookkeeping.at(index);
330  }
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
unsigned int fCardinal_rep
Definition: GFTrack.h:96
const GFTrackCand& GFTrack::getCand ( ) const
inline

Definition at line 142 of file GFTrack.h.

References fCand.

Referenced by PndHypMicroIdealWriter::Exec(), PndHypMicroWriter::Exec(), PndHypDKalmanTask::Exec(), PndLmdKalmanTask::Exec(), PndRecoDafFit::Fit(), PndRecoKalmanFit::Fit(), GenfitTrack2PndTrack(), and mergeHits().

142 {return fCand;}
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
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 202 of file GFTrack.h.

References fCardinal_rep, and fTrackReps.

Referenced by PndHypMicroIdealWriter::Exec(), PndHypMicroWriter::Exec(), PndHypDKalmanTask::Exec(), for(), GenfitTrack2PndTrack(), getCharge(), getChiSqu(), getMom(), getNDF(), getPos(), getPosMomCov(), getRedChiSqu(), and trackProximity().

202 {return ((GFAbsTrackRep*)fTrackReps->At(fCardinal_rep));}
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int fCardinal_rep
Definition: GFTrack.h:96
double GFTrack::getCharge ( ) const
inline

Get charge from fit.

Cardinal representation is used.

Definition at line 270 of file GFTrack.h.

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

270 {return getCardinalRep()->getCharge();}
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
virtual double getCharge() const =0
double GFTrack::getChiSqu ( ) const
inline

Get chi2.

Cardinal representation is used.

Definition at line 252 of file GFTrack.h.

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

Referenced by PndHypDKalmanTask::Exec(), PndLmdKalmanTask::Exec(), and GenfitTrack2PndTrack().

252 {return getCardinalRep()->getChiSqu();}
double getChiSqu() const
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
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 133 of file GFTrack.h.

References fBookkeeping, and fCardinal_rep.

133  {
134  int theRep;
135  if(repId==-1) theRep=fCardinal_rep;
136  else theRep = repId;
137  return fBookkeeping.at(theRep)->getNumFailed();
138  }
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
unsigned int fCardinal_rep
Definition: GFTrack.h:96
GFAbsRecoHit* GFTrack::getHit ( int  id) const
inline
std::vector<GFAbsRecoHit*> GFTrack::getHits ( )
inline

Definition at line 140 of file GFTrack.h.

References fHits.

140 {return fHits;}
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
void 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 227 of file GFTrack.cxx.

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

Referenced by GFDaf::initHitsWeights().

227  {
228  for(int i=0;retVal.size();++i){
229  delete retVal.at(i);
230  }
231  retVal.clear();
232  //this method can only be called when all hits have been loaded
233  assert(fHits.size()==fCand.getNHits());
234  assert(fHits.size()>1);
235  unsigned int detId,hitId,planeId;
236  fCand.getHitWithPlane(0,detId,hitId,planeId);
237  // std::cout << "$$$ " << 0 << " " << detId << " " << hitId << " " << planeId << std::endl;
238  unsigned int lastPlane=planeId;
239  retVal.push_back(new std::vector<int>);
240  retVal.at(0)->push_back(0);
241  for(unsigned int i=1;i<fCand.getNHits();++i){
242  fCand.getHitWithPlane(i,detId,hitId,planeId);
243  //std::cout << "$$$ " << i << " " << detId << " " << hitId << " " << planeId << std::endl;
244  if(lastPlane==planeId){
245  retVal.at(retVal.size()-1)->push_back(i);
246  }
247  else{
248  lastPlane=planeId;
249  retVal.push_back(new std::vector<int>);
250  retVal.at(retVal.size()-1)->push_back(i);
251  }
252  }
253 }
Int_t i
Definition: run_full.C:25
labels push_back("electron")
unsigned int getNHits() const
Definition: GFTrackCand.h:113
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
void getHitWithPlane(unsigned int i, unsigned int &detId, unsigned int &hitId, unsigned int &planeId) const
Get detector ID and cluster index (hitId) for hit number i with plane id.
Definition: GFTrackCand.h:104
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
TVector3 GFTrack::getMom ( ) const
inline

Get momentum at the present position.

Cardinal representation is used.

Definition at line 209 of file GFTrack.h.

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

Referenced by PndHypDKalmanTask::Exec().

209 {return getCardinalRep()->getMom();}
virtual TVector3 getMom(const GFDetPlane &pl)=0
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
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 216 of file GFTrack.h.

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

216 {return getCardinalRep()->getMom(pl);}
virtual TVector3 getMom(const GFDetPlane &pl)=0
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
unsigned int GFTrack::getNDF ( ) const
inline

Get NDF.

Cardinal representation is used.

Definition at line 258 of file GFTrack.h.

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

Referenced by GenfitTrack2PndTrack().

258 {return getCardinalRep()->getNDF();}
unsigned int getNDF() const
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
unsigned int GFTrack::getNextHitToFit ( ) const
inline

Accessor for fNextHitToFit.

Definition at line 178 of file GFTrack.h.

References fNextHitToFit.

Referenced by GFKalman::fittingPass().

178 {return fNextHitToFit;}
unsigned int fNextHitToFit
Definition: GFTrack.h:98
unsigned int GFTrack::getNumHits ( ) const
inline
unsigned int GFTrack::getNumReps ( ) const
inline
TVector3 GFTrack::getPos ( ) const
inline

Get present position.

Cardinal representation is used.

Definition at line 222 of file GFTrack.h.

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

Referenced by PndHypDKalmanTask::Exec().

222 {return getCardinalRep()->getPos();}
virtual TVector3 getPos(const GFDetPlane &pl)=0
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
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 229 of file GFTrack.h.

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

229 {return getCardinalRep()->getPos(pl);}
virtual TVector3 getPos(const GFDetPlane &pl)=0
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
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 235 of file GFTrack.h.

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

235  {
237  }
TVector3 pos
Double_t mom
Definition: plot_dirc.C:14
virtual void getPosMomCov(const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixT< double > &cov)
method which gets position, momentum and 6x6 covariance matrix
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
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 244 of file GFTrack.h.

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

244  {
245  getCardinalRep()->getPosMomCov(pl,pos,mom,cov);
246  }
TVector3 pos
Double_t mom
Definition: plot_dirc.C:14
virtual void getPosMomCov(const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixT< double > &cov)
method which gets position, momentum and 6x6 covariance matrix
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
double GFTrack::getRedChiSqu ( ) const
inline

Get chi2/NDF.

Cardinal representation is used.

Definition at line 264 of file GFTrack.h.

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

Referenced by PndHypDKalmanTask::Exec().

264 {return getCardinalRep()->getRedChiSqu();}
double getRedChiSqu() const
returns chi2/ndf
GFAbsTrackRep * getCardinalRep() const
Get cardinal track representation.
Definition: GFTrack.h:202
int GFTrack::getRepAtHit ( unsigned int  irep)
inline

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

Definition at line 364 of file GFTrack.h.

References fRepAtHit, and getNumReps().

Referenced by GFKalman::processHit().

364  {
365  assert(irep<getNumReps());
366  return fRepAtHit.at(irep);
367  }
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
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 175 of file GFTrack.cxx.

References GFAbsTrackRep::extrapolate(), fCand, GFAbsRecoHit::getDetPlane(), GFAbsTrackRep::getDim(), GFTrackCand::getHit(), getHit(), getNumHits(), getNumReps(), GFAbsTrackRep::getState(), getTrackRep(), hit, nhits, res, and GFAbsRecoHit::residualVector().

179 {
180  unsigned int nhits=getNumHits();
181  if(repid>=getNumReps())return;
182  GFAbsTrackRep* rep=getTrackRep(repid);//->clone();
183  assert(rep->getState()==getTrackRep(repid)->getState());
184  for(unsigned int ih=0; ih<nhits; ++ih){// loop over hits
185  unsigned int anid;
186  unsigned int dummy;
187  fCand.getHit(ih,anid,dummy); // check if this is a hit we want to look at
188  if(anid==detId){
189  GFAbsRecoHit* hit=getHit(ih);
190  // extrapolate trackrep there
191  int repDim=rep->getDim();
192  TMatrixT<double> state(repDim,1);
193  GFDetPlane pl=hit->getDetPlane(rep);
194 
195  rep->extrapolate(pl,state);
196  //rep->setState(state);
197  //rep->setReferencePlane(pl);
198  double res=hit->residualVector(rep,state,pl)[dim][0];
199 
200  //std::cout<<res<<std::endl;
201 
202  result.push_back(res);
203  }
204  }
205 }
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
unsigned int getNumHits() const
Definition: GFTrack.h:148
virtual TMatrixT< double > residualVector(const GFAbsTrackRep *stateVector, const TMatrixT< double > &state, const GFDetPlane &d)
Calculate residual with respect to a track representation.
Definition: GFAbsRecoHit.h:142
TMatrixT< double > getState() const
Int_t res
Definition: anadigi.C:166
Detector plane genfit geometry class.
Definition: GFDetPlane.h:59
virtual const GFDetPlane & getDetPlane(GFAbsTrackRep *)=0
Get detector plane for a given track representation.
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
unsigned int getDim() const
returns dimension of state vector
void getHit(unsigned int i, unsigned int &detId, unsigned int &hitId) const
Get detector ID and cluster index (hitId) for hit number i.
Definition: GFTrackCand.h:84
virtual double extrapolate(const GFDetPlane &plane, TMatrixT< double > &statePred)
returns the tracklength spanned in this extrapolation
Base Class for representing a Hit in GENFIT.
Definition: GFAbsRecoHit.h:73
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
GFAbsRecoHit * getHit(int id) const
Definition: GFTrack.h:144
PndSdsMCPoint * hit
Definition: anasim.C:70
bool GFTrack::getSmoothing ( )
inline

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

Definition at line 405 of file GFTrack.h.

References fSmooth.

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

405 { return fSmooth; }
bool fSmooth
Definition: GFTrack.h:100
GFAbsTrackRep* GFTrack::getTrackRep ( int  id) const
inline
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 134 of file GFTrack.cxx.

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

134  {
135  unsigned int nhits=trk->getNumHits();
136  for(unsigned int i=0;i<nhits;++i){
137  unsigned int detId;
138  unsigned int hitId;
139  trk->getCand().getHit(i,detId,hitId);
140  GFAbsRecoHit* hit=trk->getHit(i);
141  addHit(hit,detId,hitId);
142  }
143  trk->fHits.clear();
144 }
unsigned int getNumHits() const
Definition: GFTrack.h:148
Int_t i
Definition: run_full.C:25
void addHit(GFAbsRecoHit *theHit)
deprecated!
Definition: GFTrack.h:291
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
void getHit(unsigned int i, unsigned int &detId, unsigned int &hitId) const
Get detector ID and cluster index (hitId) for hit number i.
Definition: GFTrackCand.h:84
Base Class for representing a Hit in GENFIT.
Definition: GFAbsRecoHit.h:73
const GFTrackCand & getCand() const
Definition: GFTrack.h:142
GFAbsRecoHit * getHit(int id) const
Definition: GFTrack.h:144
PndSdsMCPoint * hit
Definition: anasim.C:70
GFTrack & GFTrack::operator= ( const GFTrack _tr)

assignement operator

Definition at line 75 of file GFTrack.cxx.

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

75  {
76  if(fTrackReps!=NULL){
77  for(unsigned int i=0;i<getNumReps();i++) {
78  delete fTrackReps->At(i);
79  }
80  delete fTrackReps;
81  fTrackReps=NULL;
82  }
83  for(unsigned int i=0;i<fHits.size();i++) {
84  delete fHits[i];
85  }
86  for(unsigned int i=0;i<fBookkeeping.size();++i){
87  if(fBookkeeping.at(i)!=NULL) delete fBookkeeping.at(i);
88  }
89 
90  for(unsigned int i=0;i<_tr.getNumReps();++i){
91  addTrackRep(_tr.getTrackRep(i)->clone());
92  }
93  fCand=_tr.fCand;
96  fSmooth=_tr.fSmooth;
97  for(unsigned int i=0;i<_tr.getNumHits();i++) {
98  fHits.push_back((_tr.getHit(i))->clone());
99  }
100 
101  //clear the empty bookeeping objs made by addTrackRep and copy the others
102  for(unsigned int i=0; i<fBookkeeping.size(); ++i) delete fBookkeeping[i];
103  fBookkeeping.clear();
104  for(unsigned int i=0;i<_tr.fBookkeeping.size();++i){
105  assert(_tr.fBookkeeping.at(i)!= NULL) ;
106  fBookkeeping.push_back(new GFBookkeeping(*(_tr.fBookkeeping.at(i))));
107  }
108  fRepAtHit = _tr.fRepAtHit;
109 
110 
111  return *this;
112 }
unsigned int getNumHits() const
Definition: GFTrack.h:148
bool fSmooth
Definition: GFTrack.h:100
Int_t i
Definition: run_full.C:25
unsigned int fNextHitToFit
Definition: GFTrack.h:98
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
void addTrackRep(GFAbsTrackRep *theTrackRep)
Add track represenation.
Definition: GFTrack.h:318
GFAbsRecoHit * getHit(int id) const
Definition: GFTrack.h:144
virtual GFAbsTrackRep * clone() const =0
unsigned int fCardinal_rep
Definition: GFTrack.h:96
void GFTrack::Print ( )

Definition at line 217 of file GFTrack.cxx.

References fBookkeeping, getNumHits(), getNumReps(), getTrackRep(), i, and GFAbsTrackRep::Print().

Referenced by PndLmdKalmanTask::Exec().

217  {
218  for(unsigned int i=0;i<getNumReps();++i){
219  getTrackRep(i)->Print();
220  fBookkeeping.at(i)->Print();
221  }
222  std::cout << "GFTrack has " << getNumHits() << " detector hits." << std::endl;
223 
224 }
unsigned int getNumHits() const
Definition: GFTrack.h:148
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
GFAbsTrackRep * getTrackRep(int id) const
Accessor for track representations.
Definition: GFTrack.h:186
virtual void Print() const
void GFTrack::printBookkeeping ( )

print bookkeeping

Definition at line 208 of file GFTrack.cxx.

References fBookkeeping, getNumReps(), and i.

208  {
209  std::cout << "GFTrack::printBookkeeping()" << std::endl;
210  for(unsigned int i=0;i<getNumReps();++i){
211  std::cout << "trackRep " << i << ":" << std::endl;
212  fBookkeeping.at(i)->Print();
213  }
214 
215 }
Int_t i
Definition: run_full.C:25
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
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 168 of file GFTrack.h.

References fHits.

168 {fHits.clear();}
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
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 174 of file GFTrack.h.

References fTrackReps.

Referenced by GFDaf::processTrack().

174 { fTrackReps->SetOwner(kFALSE); fTrackReps->Clear();}
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
void GFTrack::reset ( )

Resets the GFTrack – deletes RecoHits!

Definition at line 116 of file GFTrack.cxx.

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

Referenced by setCandidate().

116  {
117  if(fTrackReps!=NULL){
118  for(unsigned int i=0;i<getNumReps();i++) {
119  if(fTrackReps->At(i)!=NULL) delete fTrackReps->At(i);
120  }
121  }
122  for(unsigned int i=0;i<fBookkeeping.size();++i){
123  if(fBookkeeping.at(i)!=NULL) delete fBookkeeping.at(i);
124  }
125  for(unsigned int i=0;i<fHits.size();i++) {
126  if(fHits.at(i)!=NULL) delete fHits.at(i);
127  }
128  fHits.clear();
129  fRepAtHit.clear();
130  fBookkeeping.clear();
131 }
Int_t i
Definition: run_full.C:25
std::vector< GFAbsRecoHit * > fHits
Collection of RecoHits.
Definition: GFTrack.h:77
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
std::vector< GFBookkeeping * > fBookkeeping
Collection of Bookeeping objects for failed hits in every trackrep.
Definition: GFTrack.h:83
void GFTrack::setCandidate ( const GFTrackCand cand,
bool  doreset = false 
)

set track candidate

Definition at line 148 of file GFTrack.cxx.

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

Referenced by PndHypKalmanTask::Exec(), PndLmdKalmanTask::Exec(), PndHypDPatternRecoTask::Exec(), PndRecoDafFit::Fit(), and PndRecoKalmanFit::Fit().

149 {
150  fCand=cand;
151  // reset fits
152  if(doreset) {
153  for(unsigned int i=0;i<getNumReps();i++) {
154  ((GFAbsTrackRep*)fTrackReps->At(i))->reset();
155  }
156  }
157 }
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
Int_t i
Definition: run_full.C:25
TObjArray * fTrackReps
Collection of track representations.
Definition: GFTrack.h:73
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
GFTrackCand fCand
Helper to store the indices of the hits in the track. See GFTrackCand for details.
Definition: GFTrack.h:93
void reset()
Resets the GFTrack – deletes RecoHits!
Definition: GFTrack.cxx:116
void GFTrack::setCardinalRep ( unsigned int  r)
inline

Choose cardinal track represenatation.

See Also
getCardinalRep

Definition at line 339 of file GFTrack.h.

References fCardinal_rep, GetEntriesFast(), and r.

339 {if((int)r<fTrackReps->GetEntriesFast())fCardinal_rep=r;}
double r
Definition: RiemannTest.C:14
cout<< "POINTs for new FwEndCap == "<< tsim-> GetEntriesFast()
unsigned int fCardinal_rep
Definition: GFTrack.h:96
void GFTrack::setNextHitToFit ( unsigned int  i)
inline

Set next hit to be used in a fit.

Definition at line 182 of file GFTrack.h.

References fNextHitToFit, and i.

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

182 {fNextHitToFit=i;}
Int_t i
Definition: run_full.C:25
unsigned int fNextHitToFit
Definition: GFTrack.h:98
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 357 of file GFTrack.h.

References fRepAtHit, and getNumReps().

Referenced by GFKalman::processHit().

357  {
358  assert(irep<getNumReps());
359  fRepAtHit.at(irep) = ihit;
360  }
unsigned int getNumReps() const
Get number of track represenatations.
Definition: GFTrack.h:192
std::vector< int > fRepAtHit
repAtHit keeps track of at which hit index which rep is currently defined, to avoid null extrapolatio...
Definition: GFTrack.h:88
void GFTrack::setSmoothing ( bool  smooth = true)
inline

Switch smoothing on or off for this track.

Definition at line 401 of file GFTrack.h.

References fSmooth.

Referenced by GFDaf::processTrack().

401 { fSmooth = smooth; }
bool fSmooth
Definition: GFTrack.h:100

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.

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.

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

unsigned int GFTrack::fCardinal_rep
private
const int GFTrack::fDefNumTrackReps = 10
staticprivate

Definition at line 95 of file GFTrack.h.

Referenced by addTrackRep().

std::vector<GFAbsRecoHit*> GFTrack::fHits
private
unsigned int GFTrack::fNextHitToFit
private

Definition at line 98 of file GFTrack.h.

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

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.

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

bool GFTrack::fSmooth
private

Definition at line 100 of file GFTrack.h.

Referenced by getSmoothing(), GFTrack(), operator=(), 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 73 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: