17#include "MdcRecoUtil/PdtPid.h"
18#include "CLHEP/Matrix/Vector.h"
19#include "CLHEP/Matrix/Matrix.h"
20#include "CLHEP/Matrix/SymMatrix.h"
21#include "CLHEP/Vector/ThreeVector.h"
22#include "CLHEP/Geometry/Point3D.h"
23#ifndef ENABLE_BACKWARDS_COMPATIBILITY
26using CLHEP::Hep3Vector;
27using CLHEP::HepVector;
28using CLHEP::HepMatrix;
29using CLHEP::HepSymMatrix;
48 virtual double chisq()
const = 0;
49 virtual int nDof()
const = 0;
57 virtual Hep3Vector
direction(
double fltL)
const = 0;
58 virtual Hep3Vector
momentum(
double fltL=0.)
const = 0;
59 virtual double pt(
double fltL=0.)
const = 0;
69 HepMatrix& xpCov)
const = 0;
85 HepSymMatrix& xxWeight,
86 HepSymMatrix& ppWeight,
106 virtual void printAll(std::ostream& ostr)
const = 0;
107 virtual void print(std::ostream& ostr)
const = 0;
HepGeom::Point3D< double > HepPoint3D
virtual void print(std::ostream &ostr) const =0
virtual double startValidRange() const =0
virtual Hep3Vector momentum(double fltL=0.) const =0
virtual BesPointErr positionErr(double fltL) const =0
virtual double pt(double fltL=0.) const =0
virtual void printAll(std::ostream &ostr) const =0
virtual void getAllWeights(double fltL, HepVector &pos, HepVector &mom, HepSymMatrix &xxWeight, HepSymMatrix &ppWeight, HepMatrix &xpWeight) const =0
virtual double chisq() const =0
virtual int charge() const =0
virtual HepMatrix posmomCov(double fltL) const =0
virtual double endValidRange() const =0
virtual int nDof() const =0
virtual const TrkDifTraj & traj() const =0
virtual BesVectorErr directionErr(double fltL) const =0
virtual HepPoint3D position(double fltL) const =0
virtual void getAllCovs(double fltL, HepSymMatrix &xxCov, HepSymMatrix &ppCov, HepMatrix &xpCov) const =0
virtual BesVectorErr momentumErr(double fltL) const =0
virtual Hep3Vector direction(double fltL) const =0