14#ifndef TRKCIRCLETRAJ_H
15#define TRKCIRCLETRAJ_H
17#include "CLHEP/Geometry/Point3D.h"
18#ifndef ENABLE_BACKWARDS_COMPATIBILITY
21#include "CLHEP/Vector/ThreeVector.h"
22#include "CLHEP/Matrix/SymMatrix.h"
31 TrkCircleTraj(
const HepVector&,
const HepSymMatrix&,
double lowlim=-99999.,
42 virtual Hep3Vector
direction(
double fltLen)
const;
43 virtual Hep3Vector
delDirect(
double)
const;
45 Hep3Vector& dir)
const;
47 Hep3Vector& delDir)
const;
52 virtual double curvature(
double fltLen)
const;
56 virtual double distTo1stError(
double flt,
double tol,
int pathDir)
const;
57 virtual double distTo2ndError(
double flt,
double tol,
int pathDir)
const;
69 int nPar()
const {
return NCIRPAR;}
79 enum {d0Ind=0, phi0Ind, omegaInd};
96 double x(
const double& )
const;
97 double y(
const double& )
const;
98 inline double arc(
const double&
f)
const {
return f*
omega();}
99 double angle(
const double&
f)
const;
102 const HepVector& oldpar,
const HepSymMatrix& oldcov,
103 HepVector& newpar,HepSymMatrix& newcov,
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
HepGeom::Point3D< double > HepPoint3D
void(* TranslateParams)(const HepPoint3D &oldpoint, const HepPoint3D &newpoint, const HepVector &oldpar, const HepSymMatrix &oldcov, HepVector &newpar, HepSymMatrix &newcov, double fltlen)
virtual Hep3Vector direction(double fltLen) const
HepMatrix derivDeflect(double fltlen, deflectDirection) const
virtual void getDFInfo2(double fltLen, DifPoint &pos, DifVector &dir) const
virtual double distTo2ndError(double flt, double tol, int pathDir) const
virtual double distTo1stError(double flt, double tol, int pathDir) const
TrkCircleTraj * clone() const
virtual double curvature(double fltLen) const
TrkCircleTraj(const HepVector &, const HepSymMatrix &, double lowlim=-99999., double hilim=99999., const HepPoint3D &refpoint=_theOrigin)
HepMatrix derivDisplace(double fltlen, deflectDirection) const
virtual void visitAccept(TrkVisitor *vis) const
void invertParams(TrkParams *params, std::vector< bool > &flags) const
virtual HepPoint3D position(double fltLen) const
virtual void getDFInfo(double fltLen, DifPoint &, DifVector &dir, DifVector &delDir) const
virtual Hep3Vector delDirect(double) const
HepMatrix derivPFract(double fltlen) const
virtual void getInfo(double fltLen, HepPoint3D &pos, Hep3Vector &dir) const
TranslateParams paramFunction() const
TrkCircleTraj & operator=(const TrkCircleTraj &)
static HepPoint3D _theOrigin