BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkRep Class Referenceabstract

#include <TrkRep.h>

Inheritance diagram for TrkRep:

Public Member Functions

 TrkRep (const TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool stealHots=false)
 TrkRep (const TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool takeownership=false)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, int nAct, int nSvt, int nMdc, double startFoundRange, double endFoundRange)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, bool createHotList=false)
 TrkRep (const TrkRep &oldRep, TrkRecoTrk *trk, PdtPid::PidType hypo)
virtual ~TrkRep ()
virtual TrkRepclone (TrkRecoTrk *newTrack) const =0
virtual TrkRepcloneNewHypo (PdtPid::PidType hypo)=0
bool operator== (const TrkRep &)
virtual ChisqConsistency chisqConsistency () const
virtual int nActive () const
virtual int nSvt () const
virtual int nMdc () const
virtual PdtPid::PidType particleType () const
TrkRecoTrkparentTrack ()
const TrkRecoTrkparentTrack () const
double startValidRange () const
double endValidRange () const
virtual double startFoundRange () const
virtual double endFoundRange () const
virtual const IfdKeymyKey () const
double trackT0 () const
virtual HepPoint3D position (double fltL) const
virtual Hep3Vector direction (double fltL) const
virtual double arrivalTime (double fltL) const
virtual BesPointErr positionErr (double fltL) const
virtual BesVectorErr directionErr (double fltL) const
virtual void addHot (TrkHitOnTrk *theHot)
virtual void removeHot (TrkHitOnTrk *theHot)
virtual void activateHot (TrkHitOnTrk *theHot)
virtual void deactivateHot (TrkHitOnTrk *theHot)
virtual TrkHotListhotList ()
virtual const TrkHotListhotList () const
virtual void updateHots ()
virtual bool resid (const TrkHitOnTrk *theHot, double &residual, double &residErr, bool exclude=false) const
bool hitCapable () const
virtual TrkErrCode fit ()=0
 TrkRep (const TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool stealHots=false)
 TrkRep (const TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool takeownership=false)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, int nAct, int nSvt, int nMdc, double startFoundRange, double endFoundRange)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, bool createHotList=false)
 TrkRep (const TrkRep &oldRep, TrkRecoTrk *trk, PdtPid::PidType hypo)
virtual ~TrkRep ()
virtual TrkRepclone (TrkRecoTrk *newTrack) const =0
virtual TrkRepcloneNewHypo (PdtPid::PidType hypo)=0
bool operator== (const TrkRep &)
virtual ChisqConsistency chisqConsistency () const
virtual int nActive () const
virtual int nSvt () const
virtual int nMdc () const
virtual PdtPid::PidType particleType () const
TrkRecoTrkparentTrack ()
const TrkRecoTrkparentTrack () const
double startValidRange () const
double endValidRange () const
virtual double startFoundRange () const
virtual double endFoundRange () const
virtual const IfdKeymyKey () const
double trackT0 () const
virtual HepPoint3D position (double fltL) const
virtual Hep3Vector direction (double fltL) const
virtual double arrivalTime (double fltL) const
virtual BesPointErr positionErr (double fltL) const
virtual BesVectorErr directionErr (double fltL) const
virtual void addHot (TrkHitOnTrk *theHot)
virtual void removeHot (TrkHitOnTrk *theHot)
virtual void activateHot (TrkHitOnTrk *theHot)
virtual void deactivateHot (TrkHitOnTrk *theHot)
virtual TrkHotListhotList ()
virtual const TrkHotListhotList () const
virtual void updateHots ()
virtual bool resid (const TrkHitOnTrk *theHot, double &residual, double &residErr, bool exclude=false) const
bool hitCapable () const
virtual TrkErrCode fit ()=0
 TrkRep (const TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList &inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool stealHots=false)
 TrkRep (const TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo)
 TrkRep (TrkHotList *inHots, TrkRecoTrk *trk, PdtPid::PidType hypo, bool takeownership=false)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, int nAct, int nSvt, int nMdc, double startFoundRange, double endFoundRange)
 TrkRep (TrkRecoTrk *trk, PdtPid::PidType hypo, bool createHotList=false)
 TrkRep (const TrkRep &oldRep, TrkRecoTrk *trk, PdtPid::PidType hypo)
virtual ~TrkRep ()
virtual TrkRepclone (TrkRecoTrk *newTrack) const =0
virtual TrkRepcloneNewHypo (PdtPid::PidType hypo)=0
bool operator== (const TrkRep &)
virtual ChisqConsistency chisqConsistency () const
virtual int nActive () const
virtual int nSvt () const
virtual int nMdc () const
virtual PdtPid::PidType particleType () const
TrkRecoTrkparentTrack ()
const TrkRecoTrkparentTrack () const
double startValidRange () const
double endValidRange () const
virtual double startFoundRange () const
virtual double endFoundRange () const
virtual const IfdKeymyKey () const
double trackT0 () const
virtual HepPoint3D position (double fltL) const
virtual Hep3Vector direction (double fltL) const
virtual double arrivalTime (double fltL) const
virtual BesPointErr positionErr (double fltL) const
virtual BesVectorErr directionErr (double fltL) const
virtual void addHot (TrkHitOnTrk *theHot)
virtual void removeHot (TrkHitOnTrk *theHot)
virtual void activateHot (TrkHitOnTrk *theHot)
virtual void deactivateHot (TrkHitOnTrk *theHot)
virtual TrkHotListhotList ()
virtual const TrkHotListhotList () const
virtual void updateHots ()
virtual bool resid (const TrkHitOnTrk *theHot, double &residual, double &residErr, bool exclude=false) const
bool hitCapable () const
virtual TrkErrCode fit ()=0
Public Member Functions inherited from TrkFitStatus
bool is2d () const
bool fitCurrent () const
bool fitValid () const
bool multScat () const
std::ostream & printStatus (std::ostream &os=std::cout) const
void setValid (bool v)
void setCurrent (bool c)
void set2d (bool d)
void setMultScat (bool m)
const TrkErrCodefitStatus () const
history_iterator beginHistory () const
history_iterator endHistory () const
history_riterator reverseBeginHistory () const
history_riterator reverseEndHistory () const
std::pair< history_iterator, history_iterator > history () const
const std::vector< TrkHistory > & historyVector () const
virtual void addHistory (const TrkErrCode &status, const char *modulename)
template<class T>
void addHistory (T begin, T end)
template<class T>
void addHistory (std::pair< T, T > p)
std::ostream & printHistory (std::ostream &os=std::cout) const
bool is2d () const
bool fitCurrent () const
bool fitValid () const
bool multScat () const
std::ostream & printStatus (std::ostream &os=std::cout) const
void setValid (bool v)
void setCurrent (bool c)
void set2d (bool d)
void setMultScat (bool m)
const TrkErrCodefitStatus () const
history_iterator beginHistory () const
history_iterator endHistory () const
history_riterator reverseBeginHistory () const
history_riterator reverseEndHistory () const
std::pair< history_iterator, history_iterator > history () const
const std::vector< TrkHistory > & historyVector () const
virtual void addHistory (const TrkErrCode &status, const char *modulename)
template<class T>
void addHistory (T begin, T end)
template<class T>
void addHistory (std::pair< T, T > p)
std::ostream & printHistory (std::ostream &os=std::cout) const
bool is2d () const
bool fitCurrent () const
bool fitValid () const
bool multScat () const
std::ostream & printStatus (std::ostream &os=std::cout) const
void setValid (bool v)
void setCurrent (bool c)
void set2d (bool d)
void setMultScat (bool m)
const TrkErrCodefitStatus () const
history_iterator beginHistory () const
history_iterator endHistory () const
history_riterator reverseBeginHistory () const
history_riterator reverseEndHistory () const
std::pair< history_iterator, history_iterator > history () const
const std::vector< TrkHistory > & historyVector () const
virtual void addHistory (const TrkErrCode &status, const char *modulename)
template<class T>
void addHistory (T begin, T end)
template<class T>
void addHistory (std::pair< T, T > p)
std::ostream & printHistory (std::ostream &os=std::cout) const
Public Member Functions inherited from TrkFit
virtual bool validFlightLength (double fltL, double tolerance=0.0) const
void printType (std::ostream &ostr) const
virtual TrkExchangePar helix (double fltL) const =0
virtual bool validFlightLength (double fltL, double tolerance=0.0) const
void printType (std::ostream &ostr) const
virtual TrkExchangePar helix (double fltL) const =0
virtual bool validFlightLength (double fltL, double tolerance=0.0) const
void printType (std::ostream &ostr) const
virtual TrkExchangePar helix (double fltL) const =0
Public Member Functions inherited from TrkAbsFit
virtual int charge () const =0
virtual double chisq () const =0
virtual int nDof () const =0
virtual const TrkDifTrajtraj () const =0
virtual Hep3Vector momentum (double fltL=0.) const =0
virtual double pt (double fltL=0.) const =0
virtual BesVectorErr momentumErr (double fltL) const =0
virtual HepMatrix posmomCov (double fltL) const =0
virtual void getAllCovs (double fltL, HepSymMatrix &xxCov, HepSymMatrix &ppCov, HepMatrix &xpCov) const =0
virtual void getAllWeights (double fltL, HepVector &pos, HepVector &mom, HepSymMatrix &xxWeight, HepSymMatrix &ppWeight, HepMatrix &xpWeight) const =0
virtual void printAll (std::ostream &ostr) const =0
virtual void print (std::ostream &ostr) const =0
virtual int charge () const =0
virtual double chisq () const =0
virtual int nDof () const =0
virtual const TrkDifTrajtraj () const =0
virtual Hep3Vector momentum (double fltL=0.) const =0
virtual double pt (double fltL=0.) const =0
virtual BesVectorErr momentumErr (double fltL) const =0
virtual HepMatrix posmomCov (double fltL) const =0
virtual void getAllCovs (double fltL, HepSymMatrix &xxCov, HepSymMatrix &ppCov, HepMatrix &xpCov) const =0
virtual void getAllWeights (double fltL, HepVector &pos, HepVector &mom, HepSymMatrix &xxWeight, HepSymMatrix &ppWeight, HepMatrix &xpWeight) const =0
virtual void printAll (std::ostream &ostr) const =0
virtual void print (std::ostream &ostr) const =0
virtual int charge () const =0
virtual double chisq () const =0
virtual int nDof () const =0
virtual const TrkDifTrajtraj () const =0
virtual Hep3Vector momentum (double fltL=0.) const =0
virtual double pt (double fltL=0.) const =0
virtual BesVectorErr momentumErr (double fltL) const =0
virtual HepMatrix posmomCov (double fltL) const =0
virtual void getAllCovs (double fltL, HepSymMatrix &xxCov, HepSymMatrix &ppCov, HepMatrix &xpCov) const =0
virtual void getAllWeights (double fltL, HepVector &pos, HepVector &mom, HepSymMatrix &xxWeight, HepSymMatrix &ppWeight, HepMatrix &xpWeight) const =0
virtual void printAll (std::ostream &ostr) const =0
virtual void print (std::ostream &ostr) const =0
Public Member Functions inherited from TrkHitOnTrkUpdater
virtual ~TrkHitOnTrkUpdater ()=0
virtual ~TrkHitOnTrkUpdater ()=0
virtual ~TrkHitOnTrkUpdater ()=0

Protected Member Functions

TrkRepoperator= (const TrkRep &)
const TrkContexttrkContext () const
TrkRepoperator= (const TrkRep &)
const TrkContexttrkContext () const
TrkRepoperator= (const TrkRep &)
const TrkContexttrkContext () const
Protected Member Functions inherited from TrkFitStatus
virtual ~TrkFitStatus ()
 TrkFitStatus ()
TrkFitStatusoperator= (const TrkFitStatus &)
 TrkFitStatus (const TrkFitStatus &)
virtual ~TrkFitStatus ()
 TrkFitStatus ()
TrkFitStatusoperator= (const TrkFitStatus &)
 TrkFitStatus (const TrkFitStatus &)
virtual ~TrkFitStatus ()
 TrkFitStatus ()
TrkFitStatusoperator= (const TrkFitStatus &)
 TrkFitStatus (const TrkFitStatus &)
Protected Member Functions inherited from TrkFit
 TrkFit ()
virtual ~TrkFit ()
 TrkFit ()
virtual ~TrkFit ()
 TrkFit ()
virtual ~TrkFit ()
Protected Member Functions inherited from TrkAbsFit
 TrkAbsFit ()
virtual ~TrkAbsFit ()
 TrkAbsFit ()
virtual ~TrkAbsFit ()
 TrkAbsFit ()
virtual ~TrkAbsFit ()
Protected Member Functions inherited from TrkHitOnTrkUpdater
TrkErrCode updateMeasurement (TrkHitOnTrk &hot, const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
void setActivity (TrkHitOnTrk &hot, bool active) const
void setParent (TrkHitOnTrk &hot, TrkRep *parent) const
TrkBase::Functors::updateMeasurement updateMeasurement (const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
TrkBase::Functors::setParent setParent (TrkRep *parent) const
TrkBase::Functors::setActive setActive (bool active) const
TrkErrCode updateMeasurement (TrkHitOnTrk &hot, const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
void setActivity (TrkHitOnTrk &hot, bool active) const
void setParent (TrkHitOnTrk &hot, TrkRep *parent) const
TrkBase::Functors::updateMeasurement updateMeasurement (const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
TrkBase::Functors::setParent setParent (TrkRep *parent) const
TrkBase::Functors::setActive setActive (bool active) const
TrkErrCode updateMeasurement (TrkHitOnTrk &hot, const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
void setActivity (TrkHitOnTrk &hot, bool active) const
void setParent (TrkHitOnTrk &hot, TrkRep *parent) const
TrkBase::Functors::updateMeasurement updateMeasurement (const TrkDifTraj *traj=0, bool maintainAmbiguity=false) const
TrkBase::Functors::setParent setParent (TrkRep *parent) const
TrkBase::Functors::setActive setActive (bool active) const

Protected Attributes

std::auto_ptr< TrkHotList_hotList

Additional Inherited Members

Public Types inherited from TrkFitStatus
typedef std::unary_function< TrkFitStatus, bool > predicate_type
typedef std::unary_function< TrkFitStatus, bool > predicate_type
typedef std::unary_function< TrkFitStatus, bool > predicate_type

Detailed Description

Constructor & Destructor Documentation

◆ TrkRep() [1/21]

TrkRep::TrkRep ( const TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

Definition at line 46 of file TrkRep.cxx.

47 : _hotList( hotlist.clone( TrkBase::Functors::cloneHot( this ) ) ) {
48 init( trk, hypo );
49}

Referenced by clone(), cloneNewHypo(), fit(), operator=(), operator==(), TrkRep(), TrkSimpleRep::TrkSimpleRep(), TrkSimpleRep::TrkSimpleRep(), and TrkSimpleRep::TrkSimpleRep().

◆ TrkRep() [2/21]

TrkRep::TrkRep ( TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool stealHots = false )

Definition at line 51 of file TrkRep.cxx.

51 {
52 init( trk, hypo );
53 if ( !stealHots ) { _hotList.reset( hotlist.clone( TrkBase::Functors::cloneHot( this ) ) ); }
54 else { _hotList.reset( new TrkHotListFull( hotlist, setParent( this ) ) ); }
55}

◆ TrkRep() [3/21]

TrkRep::TrkRep ( const TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

Definition at line 57 of file TrkRep.cxx.

57 {
58 // yzhang SegGrouperAx::storePar newTrack come here
59 // yzhang SegGrouperSt::storePar addZValue come here too and hotlist!=0 do clone()
60 init( trk, hypo );
61 _hotList.reset( hotlist != 0 ? hotlist->clone( TrkBase::Functors::cloneHot( this ) )
62 : new TrkHotListFull );
63}

◆ TrkRep() [4/21]

TrkRep::TrkRep ( TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool takeownership = false )

Definition at line 65 of file TrkRep.cxx.

66 {
67 init( trk, hypo );
68 if ( !takeownership )
69 {
70 _hotList.reset( hotlist != 0 ? hotlist->clone( TrkBase::Functors::cloneHot( this ) )
71 : new TrkHotListFull );
72 }
73 else
74 {
75 assert( hotlist != 0 );
76 _hotList.reset( hotlist->resetParent( setParent( this ) ) );
77 }
78}

◆ TrkRep() [5/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
int nAct,
int nSvt,
int nMdc,
double startFoundRange,
double endFoundRange )

Definition at line 81 of file TrkRep.cxx.

83 : _hotList( new TrkHotListEmpty( nact, nsv, ndc, stFndRng, endFndRng ) ) {
84 // cout << " in TrkRep copy ctor 1" << endl;//yzhang debug
85
86 init( trk, hypo );
87}

◆ TrkRep() [6/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool createHotList = false )

Definition at line 41 of file TrkRep.cxx.

42 : _hotList( createHotList ? new TrkHotListFull : 0 ) {
43 init( trk, hypo );
44}

◆ TrkRep() [7/21]

TrkRep::TrkRep ( const TrkRep & oldRep,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

Definition at line 90 of file TrkRep.cxx.

91 : TrkFitStatus( oldRep ) {
92 // cout << " in TrkRep copy ctor 2" << endl;//yzhang debug
93
94 init( trk, hypo );
95 // Hots and hotlist have to be cloned in the derived classes
96}

◆ ~TrkRep() [1/3]

TrkRep::~TrkRep ( )
virtual

Definition at line 114 of file TrkRep.cxx.

114{}

◆ TrkRep() [8/21]

TrkRep::TrkRep ( const TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ TrkRep() [9/21]

TrkRep::TrkRep ( TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool stealHots = false )

◆ TrkRep() [10/21]

TrkRep::TrkRep ( const TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ TrkRep() [11/21]

TrkRep::TrkRep ( TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool takeownership = false )

◆ TrkRep() [12/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
int nAct,
int nSvt,
int nMdc,
double startFoundRange,
double endFoundRange )

◆ TrkRep() [13/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool createHotList = false )

◆ TrkRep() [14/21]

TrkRep::TrkRep ( const TrkRep & oldRep,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ ~TrkRep() [2/3]

virtual TrkRep::~TrkRep ( )
virtual

◆ TrkRep() [15/21]

TrkRep::TrkRep ( const TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ TrkRep() [16/21]

TrkRep::TrkRep ( TrkHotList & inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool stealHots = false )

◆ TrkRep() [17/21]

TrkRep::TrkRep ( const TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ TrkRep() [18/21]

TrkRep::TrkRep ( TrkHotList * inHots,
TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool takeownership = false )

◆ TrkRep() [19/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
int nAct,
int nSvt,
int nMdc,
double startFoundRange,
double endFoundRange )

◆ TrkRep() [20/21]

TrkRep::TrkRep ( TrkRecoTrk * trk,
PdtPid::PidType hypo,
bool createHotList = false )

◆ TrkRep() [21/21]

TrkRep::TrkRep ( const TrkRep & oldRep,
TrkRecoTrk * trk,
PdtPid::PidType hypo )

◆ ~TrkRep() [3/3]

virtual TrkRep::~TrkRep ( )
virtual

Member Function Documentation

◆ activateHot() [1/3]

void TrkRep::activateHot ( TrkHitOnTrk * theHot)
virtual

Definition at line 128 of file TrkRep.cxx.

128 {
129 if ( !hot->isActive() )
130 {
131 // make sure this is my hot we're talking about
132 if ( this == hot->getParentRep() )
133 {
134 setCurrent( false );
135 // actually activate the hot; this is now the rep's job
136 hot->setActive( true );
137 }
138 }
139}

Referenced by TrkHitOnTrk::setActivity(), and TrkHitOnTrk::setUsability().

◆ activateHot() [2/3]

virtual void TrkRep::activateHot ( TrkHitOnTrk * theHot)
virtual

◆ activateHot() [3/3]

virtual void TrkRep::activateHot ( TrkHitOnTrk * theHot)
virtual

◆ addHot() [1/3]

void TrkRep::addHot ( TrkHitOnTrk * theHot)
virtual

Definition at line 118 of file TrkRep.cxx.

118 {
119 if ( newHot->isActive() ) setCurrent( false );
120 hotList()->append( newHot );
121}
virtual void append(TrkHitOnTrk *)=0

◆ addHot() [2/3]

virtual void TrkRep::addHot ( TrkHitOnTrk * theHot)
virtual

◆ addHot() [3/3]

virtual void TrkRep::addHot ( TrkHitOnTrk * theHot)
virtual

◆ arrivalTime() [1/3]

double TrkRep::arrivalTime ( double fltL) const
virtual

Implements TrkFit.

Reimplemented in TrkLineRep, TrkLineRep, and TrkLineRep.

Definition at line 158 of file TrkRep.cxx.

158 {
159 static double cinv = 1. / Constants::c;
160 // Initialize cache
161 if ( _betainv < 0.0 )
162 {
163 double mass2 = Pdt::lookup( particleType() )->mass();
164 mass2 = mass2 * mass2;
165 double ptot2 = momentum( 0. ).mag2();
166 assert( ptot2 != 0.0 );
167 _betainv = sqrt( ( ptot2 + mass2 ) / ptot2 );
168 }
169 double tof = fltL * _betainv * cinv;
170 return trackT0() + tof;
171}
**********INTEGER nmxhep !maximum number of particles DOUBLE PRECISION vhep INTEGER jdahep COMMON hepevt $ !serial number $ !number of particles $ !status code $ !particle ident KF $ !parent particles $ !childreen particles $ !four momentum
static PdtEntry * lookup(const std::string &name)
Definition Pdt.cxx:183
double trackT0() const
Definition TrkRep.cxx:173
virtual PdtPid::PidType particleType() const
Definition TrkRep.cxx:249

Referenced by MdcTrkRecon::fillTrackList(), and MdcTrack::storeTrack().

◆ arrivalTime() [2/3]

virtual double TrkRep::arrivalTime ( double fltL) const
virtual

Implements TrkFit.

Reimplemented in TrkLineRep, TrkLineRep, and TrkLineRep.

◆ arrivalTime() [3/3]

virtual double TrkRep::arrivalTime ( double fltL) const
virtual

Implements TrkFit.

Reimplemented in TrkLineRep, TrkLineRep, and TrkLineRep.

◆ chisqConsistency() [1/3]

ChisqConsistency TrkRep::chisqConsistency ( ) const
virtual

Implements TrkFit.

Definition at line 281 of file TrkRep.cxx.

281 {
282 if ( fitValid() ) return ChisqConsistency( chisq(), nDof() );
283 else return ChisqConsistency();
284}
virtual double chisq() const =0
virtual int nDof() const =0

◆ chisqConsistency() [2/3]

virtual ChisqConsistency TrkRep::chisqConsistency ( ) const
virtual

Implements TrkFit.

◆ chisqConsistency() [3/3]

virtual ChisqConsistency TrkRep::chisqConsistency ( ) const
virtual

Implements TrkFit.

◆ clone() [1/3]

virtual TrkRep * TrkRep::clone ( TrkRecoTrk * newTrack) const
pure virtual

◆ clone() [2/3]

virtual TrkRep * TrkRep::clone ( TrkRecoTrk * newTrack) const
pure virtual

◆ clone() [3/3]

virtual TrkRep * TrkRep::clone ( TrkRecoTrk * newTrack) const
pure virtual

◆ cloneNewHypo() [1/3]

virtual TrkRep * TrkRep::cloneNewHypo ( PdtPid::PidType hypo)
pure virtual

◆ cloneNewHypo() [2/3]

virtual TrkRep * TrkRep::cloneNewHypo ( PdtPid::PidType hypo)
pure virtual

◆ cloneNewHypo() [3/3]

virtual TrkRep * TrkRep::cloneNewHypo ( PdtPid::PidType hypo)
pure virtual

◆ deactivateHot() [1/3]

void TrkRep::deactivateHot ( TrkHitOnTrk * theHot)
virtual

Definition at line 141 of file TrkRep.cxx.

141 {
142 if ( hot->isActive() )
143 {
144 // make sure this is my hot we're talking about
145 if ( this == hot->getParentRep() )
146 {
147 setCurrent( false );
148 // actually deactivate the hot; this is now the rep's job
149 hot->setActive( false );
150 }
151 }
152}

Referenced by TrkHitOnTrk::setActivity(), and TrkHitOnTrk::setUsability().

◆ deactivateHot() [2/3]

virtual void TrkRep::deactivateHot ( TrkHitOnTrk * theHot)
virtual

◆ deactivateHot() [3/3]

virtual void TrkRep::deactivateHot ( TrkHitOnTrk * theHot)
virtual

◆ direction() [1/3]

Hep3Vector TrkRep::direction ( double fltL) const
virtual

Implements TrkAbsFit.

Definition at line 156 of file TrkRep.cxx.

156{ return traj().direction( fltL ); }
virtual Hep3Vector direction(double) const =0
virtual const TrkDifTraj & traj() const =0

◆ direction() [2/3]

virtual Hep3Vector TrkRep::direction ( double fltL) const
virtual

Implements TrkAbsFit.

◆ direction() [3/3]

virtual Hep3Vector TrkRep::direction ( double fltL) const
virtual

Implements TrkAbsFit.

◆ directionErr() [1/3]

BesVectorErr TrkRep::directionErr ( double fltL) const
virtual

Implements TrkAbsFit.

Definition at line 231 of file TrkRep.cxx.

231 {
232 static DifPoint posD;
233 static DifVector dirD;
234 traj().getDFInfo2( fltL, posD, dirD );
235 BesError symErr( 3 );
236 symErr.assign( dirD.errorMatrix( dirD.x.indepPar()->covariance() ) );
237 Hep3Vector dir( dirD.x.number(), dirD.y.number(), dirD.z.number() );
238 return BesVectorErr( dir, symErr );
239}
HepSymMatrix errorMatrix(const HepSymMatrix &e) const
Definition DifVector.cxx:43
virtual void getDFInfo2(double fltLen, DifPoint &pos, DifVector &direction) const

◆ directionErr() [2/3]

virtual BesVectorErr TrkRep::directionErr ( double fltL) const
virtual

Implements TrkAbsFit.

◆ directionErr() [3/3]

virtual BesVectorErr TrkRep::directionErr ( double fltL) const
virtual

Implements TrkAbsFit.

◆ endFoundRange() [1/3]

double TrkRep::endFoundRange ( ) const
virtual

Implements TrkFit.

Definition at line 247 of file TrkRep.cxx.

247{ return hotList()->endFoundRange(); }
virtual double endFoundRange() const =0

Referenced by TrkCircleRep::TrkCircleRep(), TrkHelixRep::TrkHelixRep(), TrkLineRep::TrkLineRep(), TrkRep(), and TrkSimpleRep::TrkSimpleRep().

◆ endFoundRange() [2/3]

virtual double TrkRep::endFoundRange ( ) const
virtual

Implements TrkFit.

◆ endFoundRange() [3/3]

virtual double TrkRep::endFoundRange ( ) const
virtual

Implements TrkFit.

◆ endValidRange() [1/3]

double TrkRep::endValidRange ( ) const
virtual

Implements TrkAbsFit.

Definition at line 243 of file TrkRep.cxx.

◆ endValidRange() [2/3]

double TrkRep::endValidRange ( ) const
virtual

Implements TrkAbsFit.

◆ endValidRange() [3/3]

double TrkRep::endValidRange ( ) const
virtual

Implements TrkAbsFit.

◆ fit() [1/3]

virtual TrkErrCode TrkRep::fit ( )
pure virtual

Implemented in TrkSimpleRep, TrkSimpleRep, and TrkSimpleRep.

◆ fit() [2/3]

virtual TrkErrCode TrkRep::fit ( )
pure virtual

Implemented in TrkSimpleRep, TrkSimpleRep, and TrkSimpleRep.

◆ fit() [3/3]

virtual TrkErrCode TrkRep::fit ( )
pure virtual

Implemented in TrkSimpleRep, TrkSimpleRep, and TrkSimpleRep.

◆ hitCapable() [1/3]

bool TrkRep::hitCapable ( ) const
inline

Definition at line 114 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkBase/TrkRep.h.

114{ return hotList()->hitCapable(); }
virtual bool hitCapable() const =0

Referenced by TrkSimpleRep::fit().

◆ hitCapable() [2/3]

bool TrkRep::hitCapable ( ) const
inline

Definition at line 114 of file InstallArea/x86_64-el9-gcc13-opt/include/TrkBase/TrkRep.h.

114{ return hotList()->hitCapable(); }

◆ hitCapable() [3/3]

bool TrkRep::hitCapable ( ) const
inline

Definition at line 114 of file Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkRep.h.

114{ return hotList()->hitCapable(); }

◆ hotList() [1/6]

◆ hotList() [2/6]

virtual TrkHotList * TrkRep::hotList ( )
inlinevirtual

Definition at line 106 of file InstallArea/x86_64-el9-gcc13-opt/include/TrkBase/TrkRep.h.

106{ return _hotList.get(); }

◆ hotList() [3/6]

virtual TrkHotList * TrkRep::hotList ( )
inlinevirtual

Definition at line 106 of file Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkRep.h.

106{ return _hotList.get(); }

◆ hotList() [4/6]

virtual const TrkHotList * TrkRep::hotList ( ) const
inlinevirtual

Definition at line 107 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkBase/TrkRep.h.

107{ return _hotList.get(); }

◆ hotList() [5/6]

virtual const TrkHotList * TrkRep::hotList ( ) const
inlinevirtual

Definition at line 107 of file InstallArea/x86_64-el9-gcc13-opt/include/TrkBase/TrkRep.h.

107{ return _hotList.get(); }

◆ hotList() [6/6]

virtual const TrkHotList * TrkRep::hotList ( ) const
inlinevirtual

Definition at line 107 of file Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkRep.h.

107{ return _hotList.get(); }

◆ myKey() [1/3]

const IfdKey & TrkRep::myKey ( ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

Definition at line 251 of file TrkRep.cxx.

251 {
252 // This provides a default key (used to provide Rep-specific interfaces
253 // to TrkRecoTrk consumers).
254 static IfdIntKey _theKey( 0 );
255 return _theKey;
256}

Referenced by TrkExtInterface::attach(), and TrkExtInterface::attach().

◆ myKey() [2/3]

virtual const IfdKey & TrkRep::myKey ( ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

◆ myKey() [3/3]

virtual const IfdKey & TrkRep::myKey ( ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

◆ nActive() [1/3]

int TrkRep::nActive ( ) const
virtual

Implements TrkFit.

Definition at line 263 of file TrkRep.cxx.

263{ return hotList()->nActive(); }
virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const =0

Referenced by TrkSimpleRep::nDof(), TrkCircleRep::TrkCircleRep(), and TrkSimpleRep::TrkSimpleRep().

◆ nActive() [2/3]

virtual int TrkRep::nActive ( ) const
virtual

Implements TrkFit.

◆ nActive() [3/3]

virtual int TrkRep::nActive ( ) const
virtual

Implements TrkFit.

◆ nMdc() [1/3]

int TrkRep::nMdc ( ) const
virtual

Implements TrkFit.

Definition at line 267 of file TrkRep.cxx.

267{ return hotList()->nMdc(); }
virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const =0

Referenced by TrkRep().

◆ nMdc() [2/3]

virtual int TrkRep::nMdc ( ) const
virtual

Implements TrkFit.

◆ nMdc() [3/3]

virtual int TrkRep::nMdc ( ) const
virtual

Implements TrkFit.

◆ nSvt() [1/3]

int TrkRep::nSvt ( ) const
virtual

Implements TrkFit.

Definition at line 265 of file TrkRep.cxx.

265{ return hotList()->nSvt(); }
virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const =0

Referenced by TrkCircleRep::TrkCircleRep(), TrkLineRep::TrkLineRep(), TrkRep(), and TrkSimpleRep::TrkSimpleRep().

◆ nSvt() [2/3]

virtual int TrkRep::nSvt ( ) const
virtual

Implements TrkFit.

◆ nSvt() [3/3]

virtual int TrkRep::nSvt ( ) const
virtual

Implements TrkFit.

◆ operator=() [1/3]

TrkRep & TrkRep::operator= ( const TrkRep & right)
protected

Definition at line 98 of file TrkRep.cxx.

98 {
99 if ( &right != this )
100 {
101 init( right._parentTrack, right._partHypo );
102 _hotList.reset( right._hotList->clone( this ) );
104 }
105 return *this;
106}
TrkFitStatus & operator=(const TrkFitStatus &)

Referenced by TrkSimpleRep::operator=().

◆ operator=() [2/3]

TrkRep & TrkRep::operator= ( const TrkRep & )
protected

◆ operator=() [3/3]

TrkRep & TrkRep::operator= ( const TrkRep & )
protected

◆ operator==() [1/3]

bool TrkRep::operator== ( const TrkRep & rhs)

Definition at line 116 of file TrkRep.cxx.

116{ return ( &rhs == this ); }

◆ operator==() [2/3]

bool TrkRep::operator== ( const TrkRep & )

◆ operator==() [3/3]

bool TrkRep::operator== ( const TrkRep & )

◆ parentTrack() [1/6]

◆ parentTrack() [2/6]

TrkRecoTrk * TrkRep::parentTrack ( )
inline

Definition at line 79 of file InstallArea/x86_64-el9-gcc13-opt/include/TrkBase/TrkRep.h.

79{ return _parentTrack; }

◆ parentTrack() [3/6]

TrkRecoTrk * TrkRep::parentTrack ( )
inline

Definition at line 79 of file Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkRep.h.

79{ return _parentTrack; }

◆ parentTrack() [4/6]

const TrkRecoTrk * TrkRep::parentTrack ( ) const
inline

Definition at line 80 of file InstallArea/x86_64-el9-gcc13-dbg/include/TrkBase/TrkRep.h.

80{ return _parentTrack; }

◆ parentTrack() [5/6]

const TrkRecoTrk * TrkRep::parentTrack ( ) const
inline

Definition at line 80 of file InstallArea/x86_64-el9-gcc13-opt/include/TrkBase/TrkRep.h.

80{ return _parentTrack; }

◆ parentTrack() [6/6]

const TrkRecoTrk * TrkRep::parentTrack ( ) const
inline

Definition at line 80 of file Reconstruction/MdcPatRec/TrkBase/include/TrkBase/TrkRep.h.

80{ return _parentTrack; }

◆ particleType() [1/3]

PdtPid::PidType TrkRep::particleType ( ) const
virtual

Implements TrkFit.

Definition at line 249 of file TrkRep.cxx.

249{ return _partHypo; }

Referenced by arrivalTime(), TrkCircleRep::clone(), TrkHelixRep::clone(), TrkLineRep::clone(), and TrkHitOnTrk::particleType().

◆ particleType() [2/3]

virtual PdtPid::PidType TrkRep::particleType ( ) const
virtual

Implements TrkFit.

◆ particleType() [3/3]

virtual PdtPid::PidType TrkRep::particleType ( ) const
virtual

Implements TrkFit.

◆ position() [1/3]

HepPoint3D TrkRep::position ( double fltL) const
virtual

Implements TrkAbsFit.

Definition at line 154 of file TrkRep.cxx.

154{ return traj().position( fltL ); }
virtual HepPoint3D position(double) const =0

Referenced by MdcHitOnTrack::wireAmbig().

◆ position() [2/3]

virtual HepPoint3D TrkRep::position ( double fltL) const
virtual

Implements TrkAbsFit.

◆ position() [3/3]

virtual HepPoint3D TrkRep::position ( double fltL) const
virtual

Implements TrkAbsFit.

◆ positionErr() [1/3]

BesPointErr TrkRep::positionErr ( double fltL) const
virtual

Implements TrkAbsFit.

Definition at line 175 of file TrkRep.cxx.

175 {
176 static DifPoint posD;
177 static DifVector dirD;
178 traj().getDFInfo2( fltL, posD, dirD );
179 HepMatrix err = posD.errorMatrix( posD.x.indepPar()->covariance() );
180 HepPoint3D point( posD.x.number(), posD.y.number(), posD.z.number() );
181 BesError symErr( 3 );
182 symErr.assign( err );
183
184 if ( false )
185 {
186#ifdef MDCPATREC_ROUTINE
187 cout << "ErrMsg(routine) "
188 << "Pos " << err.num_row() << " " << err.num_col() << endl
189 << "output:"
190 << endl
191 // << err(1,1) << endl
192 // << err(2,1) << " " << err(2,2) << endl
193 // << err(3,1) << " " << err(3,2) << " " << err(3,3) << endl
194 << "x deriv: " << endl
195 << posD.x.derivatives() << endl
196 << "y deriv: " << endl
197 << posD.y.derivatives() << endl
198 << endl;
199#endif
200 // }
201
202 Hep3Vector pointDir( point.x(), point.y() );
203 double dirMag = pointDir.mag();
204 double dist = 5.e-3;
205 double delx = dist * point.x() / dirMag;
206 double dely = dist * point.y() / dirMag;
207 int ierr = 0;
208 HepMatrix weight = err.inverse( ierr );
209 double chisq = weight( 1, 1 ) * delx * delx + 2 * weight( 2, 1 ) * delx * dely +
210 weight( 2, 2 ) * dely * dely;
211#ifdef MDCPATREC_DEBUG
212 cout << point << endl;
213 cout << symErr << endl;
214 cout << "delta: " << delx << " " << dely << endl;
215 cout << "chisq: " << chisq << endl;
216#endif
217 double phi0 = helix( fltL ).phi0();
218 delx = dist * cos( phi0 );
219 dely = dist * sin( phi0 );
220 chisq = weight( 1, 1 ) * delx * delx + 2 * weight( 2, 1 ) * delx * dely +
221 weight( 2, 2 ) * dely * dely;
222#ifdef MDCPATREC_DEBUG
223 cout << "delta: " << delx << " " << dely << endl;
224 cout << "chisq: " << chisq << endl;
225 cout << endl << endl;
226#endif
227 }
228 return BesPointErr( point, symErr );
229}
HepGeom::Point3D< double > HepPoint3D
*********Class see also m_nmax DOUBLE PRECISION m_MasPhot DOUBLE PRECISION m_phsu DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_r2 DOUBLE PRECISION m_WtMass INTEGER m_nmax INTEGER m_Nevgen INTEGER m_IsFSR INTEGER m_MarTot *COMMON c_KarFin $ !Output file $ !Event serial number $ !alpha QED at Thomson limit $ !minimum energy at CMS for remooval $ !infrared dimensionless $ !dummy photon IR regulator $ !crude photon multiplicity enhancement factor *EVENT $ !MC crude volume of PhhSpace *Sfactors $ !YFS formfactor IR part only $ !YFS formfactor non IR finite part $ !mass weight
Definition KarFin.h:34
HepVector derivatives() const
Definition DifNumber.cxx:45
virtual TrkExchangePar helix(double fltL) const =0

◆ positionErr() [2/3]

virtual BesPointErr TrkRep::positionErr ( double fltL) const
virtual

Implements TrkAbsFit.

◆ positionErr() [3/3]

virtual BesPointErr TrkRep::positionErr ( double fltL) const
virtual

Implements TrkAbsFit.

◆ removeHot() [1/3]

void TrkRep::removeHot ( TrkHitOnTrk * theHot)
virtual

Definition at line 123 of file TrkRep.cxx.

123 {
124 if ( theHot->isActive() ) setCurrent( false ); // fit no longer current
125 hotList()->remove( theHot );
126}
virtual void remove(TrkHitOnTrk *)=0

◆ removeHot() [2/3]

virtual void TrkRep::removeHot ( TrkHitOnTrk * theHot)
virtual

◆ removeHot() [3/3]

virtual void TrkRep::removeHot ( TrkHitOnTrk * theHot)
virtual

◆ resid() [1/3]

bool TrkRep::resid ( const TrkHitOnTrk * theHot,
double & residual,
double & residErr,
bool exclude = false ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

Definition at line 269 of file TrkRep.cxx.

270 {
271 assert( h != 0 );
272 if ( h->parentRep() != this ) return false; // HOT must belong to Rep
273 if ( !h->hasResidual() ) return false; // Residual must be available
274 if ( exclude ) return false; // FIXME: Can't do unbiased residuals (yet!)
275
276 residual = h->residual();
277 residErr = h->hitRms();
278 return true;
279}

Referenced by TrkHitOnTrk::resid(), and TrkHitOnTrk::resid().

◆ resid() [2/3]

virtual bool TrkRep::resid ( const TrkHitOnTrk * theHot,
double & residual,
double & residErr,
bool exclude = false ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

◆ resid() [3/3]

virtual bool TrkRep::resid ( const TrkHitOnTrk * theHot,
double & residual,
double & residErr,
bool exclude = false ) const
virtual

Reimplemented in TrkHelixRep, TrkHelixRep, and TrkHelixRep.

◆ startFoundRange() [1/3]

double TrkRep::startFoundRange ( ) const
virtual

Implements TrkFit.

Definition at line 245 of file TrkRep.cxx.

245{ return hotList()->startFoundRange(); }
virtual double startFoundRange() const =0

Referenced by TrkCircleRep::TrkCircleRep(), TrkHelixRep::TrkHelixRep(), TrkLineRep::TrkLineRep(), TrkRep(), and TrkSimpleRep::TrkSimpleRep().

◆ startFoundRange() [2/3]

virtual double TrkRep::startFoundRange ( ) const
virtual

Implements TrkFit.

◆ startFoundRange() [3/3]

virtual double TrkRep::startFoundRange ( ) const
virtual

Implements TrkFit.

◆ startValidRange() [1/3]

double TrkRep::startValidRange ( ) const
virtual

Implements TrkAbsFit.

Definition at line 241 of file TrkRep.cxx.

◆ startValidRange() [2/3]

double TrkRep::startValidRange ( ) const
virtual

Implements TrkAbsFit.

◆ startValidRange() [3/3]

double TrkRep::startValidRange ( ) const
virtual

Implements TrkAbsFit.

◆ trackT0() [1/3]

double TrkRep::trackT0 ( ) const

Definition at line 173 of file TrkRep.cxx.

173{ return parentTrack()->trackT0(); }
double trackT0() const

Referenced by TrkLineRep::arrivalTime(), and arrivalTime().

◆ trackT0() [2/3]

double TrkRep::trackT0 ( ) const

◆ trackT0() [3/3]

double TrkRep::trackT0 ( ) const

◆ trkContext() [1/3]

const TrkContext & TrkRep::trkContext ( ) const
protected

◆ trkContext() [2/3]

const TrkContext & TrkRep::trkContext ( ) const
protected

◆ trkContext() [3/3]

const TrkContext & TrkRep::trkContext ( ) const
protected

◆ updateHots() [1/3]

void TrkRep::updateHots ( )
virtual

Definition at line 258 of file TrkRep.cxx.

258 {
259 setCurrent( false );
260 hotList()->updateHots();
261}
virtual void updateHots()=0

Referenced by TrkRecoTrk::updateReps().

◆ updateHots() [2/3]

virtual void TrkRep::updateHots ( )
virtual

◆ updateHots() [3/3]

virtual void TrkRep::updateHots ( )
virtual

Member Data Documentation

◆ _hotList


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