BOSS 7.0.1
BESIII Offline Software System
Loading...
Searching...
No Matches
Trajectory Class Referenceabstract

#include <Trajectory.h>

+ Inheritance diagram for Trajectory:

Public Member Functions

 Trajectory (double lowlim, double hilim)
 
virtual ~Trajectory ()
 
virtual HepPoint3D position (double) const =0
 
virtual Hep3Vector direction (double) const =0
 
virtual Hep3Vector delDirect (double) const =0
 
virtual double curvature (double) const =0
 
virtual void getInfo (double fltLen, HepPoint3D &pos, Hep3Vector &direction) const =0
 
virtual void getInfo (double fltLen, HepPoint3D &pos, Hep3Vector &direction, Hep3Vector &delDirect) const =0
 
double distTo0thError (double s, double tol, int pathDir) const
 
virtual double distTo1stError (double s, double tol, int pathDir) const =0
 
virtual double distTo2ndError (double s, double tol, int pathDir) const =0
 
virtual Trajectoryclone () const =0
 
bool validFlightDistance (double f, double tolerance=0.0) const
 
virtual void setFlightRange (double newrange[2])
 
double lowRange () const
 
double hiRange () const
 
double range () const
 
virtual void print (std::ostream &os) const
 
virtual void printAll (std::ostream &os) const
 
 Trajectory (double lowlim, double hilim)
 
virtual ~Trajectory ()
 
virtual HepPoint3D position (double) const =0
 
virtual Hep3Vector direction (double) const =0
 
virtual Hep3Vector delDirect (double) const =0
 
virtual double curvature (double) const =0
 
virtual void getInfo (double fltLen, HepPoint3D &pos, Hep3Vector &direction) const =0
 
virtual void getInfo (double fltLen, HepPoint3D &pos, Hep3Vector &direction, Hep3Vector &delDirect) const =0
 
double distTo0thError (double s, double tol, int pathDir) const
 
virtual double distTo1stError (double s, double tol, int pathDir) const =0
 
virtual double distTo2ndError (double s, double tol, int pathDir) const =0
 
virtual Trajectoryclone () const =0
 
bool validFlightDistance (double f, double tolerance=0.0) const
 
virtual void setFlightRange (double newrange[2])
 
double lowRange () const
 
double hiRange () const
 
double range () const
 
virtual void print (std::ostream &os) const
 
virtual void printAll (std::ostream &os) const
 

Protected Member Functions

Trajectoryoperator= (const Trajectory &)
 
Trajectoryoperator= (const Trajectory &)
 

Protected Attributes

double flightrange [2]
 

Detailed Description

Constructor & Destructor Documentation

◆ Trajectory() [1/2]

Trajectory::Trajectory ( double  lowlim,
double  hilim 
)

Definition at line 35 of file Trajectory.cxx.

36{
37 if (hilim < lowlim) {
38 std::cout<<"ErrMsg(error) " << "Invalid Trajectory range requested." << std::endl;
39 flightrange[0] = hilim;
40 flightrange[1] = lowlim;
41 }
42 flightrange[0] = lowlim;
43 flightrange[1] = hilim;
44}

◆ ~Trajectory() [1/2]

Trajectory::~Trajectory ( )
virtual

Definition at line 46 of file Trajectory.cxx.

47{
48}

◆ Trajectory() [2/2]

Trajectory::Trajectory ( double  lowlim,
double  hilim 
)

◆ ~Trajectory() [2/2]

virtual Trajectory::~Trajectory ( )
virtual

Member Function Documentation

◆ clone() [1/2]

◆ clone() [2/2]

◆ curvature() [1/2]

◆ curvature() [2/2]

virtual double Trajectory::curvature ( double  ) const
pure virtual

◆ delDirect() [1/2]

virtual Hep3Vector Trajectory::delDirect ( double  ) const
pure virtual

◆ delDirect() [2/2]

virtual Hep3Vector Trajectory::delDirect ( double  ) const
pure virtual

◆ direction() [1/2]

◆ direction() [2/2]

virtual Hep3Vector Trajectory::direction ( double  ) const
pure virtual

◆ distTo0thError() [1/2]

double Trajectory::distTo0thError ( double  s,
double  tol,
int  pathDir 
) const

Definition at line 51 of file Trajectory.cxx.

52{
53 return fabs(tolerance);
54}

◆ distTo0thError() [2/2]

double Trajectory::distTo0thError ( double  s,
double  tol,
int  pathDir 
) const

◆ distTo1stError() [1/2]

virtual double Trajectory::distTo1stError ( double  s,
double  tol,
int  pathDir 
) const
pure virtual

◆ distTo1stError() [2/2]

virtual double Trajectory::distTo1stError ( double  s,
double  tol,
int  pathDir 
) const
pure virtual

◆ distTo2ndError() [1/2]

virtual double Trajectory::distTo2ndError ( double  s,
double  tol,
int  pathDir 
) const
pure virtual

◆ distTo2ndError() [2/2]

virtual double Trajectory::distTo2ndError ( double  s,
double  tol,
int  pathDir 
) const
pure virtual

◆ getInfo() [1/4]

◆ getInfo() [2/4]

virtual void Trajectory::getInfo ( double  fltLen,
HepPoint3D pos,
Hep3Vector &  direction 
) const
pure virtual

◆ getInfo() [3/4]

virtual void Trajectory::getInfo ( double  fltLen,
HepPoint3D pos,
Hep3Vector &  direction,
Hep3Vector &  delDirect 
) const
pure virtual

◆ getInfo() [4/4]

virtual void Trajectory::getInfo ( double  fltLen,
HepPoint3D pos,
Hep3Vector &  direction,
Hep3Vector &  delDirect 
) const
pure virtual

◆ hiRange() [1/2]

◆ hiRange() [2/2]

double Trajectory::hiRange ( ) const

◆ lowRange() [1/2]

◆ lowRange() [2/2]

double Trajectory::lowRange ( ) const

◆ operator=() [1/2]

Trajectory & Trajectory::operator= ( const Trajectory other)
protected

Definition at line 86 of file Trajectory.cxx.

87{
88 flightrange[0] = other.flightrange[0];
89 flightrange[1] = other.flightrange[1];
90 return *this;
91}
Index other(Index i, Index j)
Definition: EvtCyclic3.cc:118

Referenced by HelixTraj::operator=(), TrkCircleTraj::operator=(), TrkDifLineTraj::operator=(), and TrkLineTraj::operator=().

◆ operator=() [2/2]

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

◆ position() [1/2]

◆ position() [2/2]

◆ print() [1/2]

virtual void Trajectory::print ( std::ostream &  os) const
virtual

◆ print() [2/2]

virtual void Trajectory::print ( std::ostream &  os) const
virtual

◆ printAll() [1/2]

virtual void Trajectory::printAll ( std::ostream &  os) const
virtual

◆ printAll() [2/2]

virtual void Trajectory::printAll ( std::ostream &  os) const
virtual

◆ range() [1/2]

◆ range() [2/2]

double Trajectory::range ( ) const

◆ setFlightRange() [1/2]

void Trajectory::setFlightRange ( double  newrange[2])
virtual

Reimplemented in TrkDifPieceTraj, and TrkDifPieceTraj.

Definition at line 57 of file Trajectory.cxx.

58{
59 if (newrange[1] >= newrange[0]) {
60 flightrange[0] = newrange[0];
61 flightrange[1] = newrange[1];
62 } else {
63 std::cout<<"ErrMsg(error) "<< "Invalid Trajectory range requested." << std::endl;
64 flightrange[0] = newrange[1];
65 flightrange[1] = newrange[0];
66 }
67}

Referenced by TrkDifPieceTraj::append(), TrkSimpTraj::changePoint(), TrkDifPieceTraj::invert(), TrkSimpTraj::invert(), TrkDifPieceTraj::prepend(), and TrkDifPieceTraj::TrkDifPieceTraj().

◆ setFlightRange() [2/2]

virtual void Trajectory::setFlightRange ( double  newrange[2])
virtual

Reimplemented in TrkDifPieceTraj, and TrkDifPieceTraj.

◆ validFlightDistance() [1/2]

bool Trajectory::validFlightDistance ( double  f,
double  tolerance = 0.0 
) const
inline

Definition at line 88 of file InstallArea/include/MdcGeom/MdcGeom/Trajectory.h.

88 {
89 return f >= flightrange[0]-tol && f <= flightrange[1]+tol;
90}

Referenced by TrkDifPieceTraj::trajIndex().

◆ validFlightDistance() [2/2]

bool Trajectory::validFlightDistance ( double  f,
double  tolerance = 0.0 
) const

Member Data Documentation

◆ flightrange


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