00001
00002
00003
00004
00005 #ifndef ATLFAST_ITRACKTRAJECTORY_H
00006 #define ATLFAST_ITRACKTRAJECTORY_H
00007
00008
00009 #include "CLHEP/Vector/ThreeVector.h"
00010 #include "CLHEP/Geometry/Point3D.h"
00011
00012 namespace Atlfast {
00020 class ITrackTrajectory {
00021
00022 public:
00023
00024
00025 virtual double impactParameter() const =0 ;
00026 virtual double zPerigee() const =0 ;
00027 virtual HepPoint3D startPoint() const =0 ;
00028 virtual double radius() const =0 ;
00029
00030
00031 virtual double phi() const =0 ;
00032 virtual double eta() const =0 ;
00033 virtual double cotTheta() const =0 ;
00034
00035
00036 virtual double pT() const =0 ;
00037 virtual Hep3Vector threeMomentum() const =0 ;
00038 virtual operator Hep3Vector() const =0 ;
00039
00040
00041 virtual double invPtCharge() const =0 ;
00042 virtual double curvature() const =0 ;
00043
00044 virtual int signOfCharge() const =0 ;
00045
00046 };
00047
00048 }
00049
00050 #endif
00051
00052
00053
00054
00055
00056
00057