Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ITrackTrajectory.h

Go to the documentation of this file.
00001 
00002 // Class to standardise access to trajectory parameters of any object 
00003 // which is treatable as a track with a trajectory
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    // Parameters of position of closest approach to origin
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    // Directions at position of closest approach 
00031    virtual double phi()             const =0 ;
00032    virtual double eta()             const =0 ;
00033    virtual double cotTheta()        const =0 ;
00034 
00035    // Momentum at position of closest approach
00036    virtual double pT()                    const =0 ;
00037    virtual Hep3Vector threeMomentum()     const =0 ;
00038    virtual operator Hep3Vector()          const =0 ;
00039 
00040    // Curvature related information
00041    virtual double invPtCharge()     const =0 ;
00042    virtual double curvature()       const =0 ;
00043    // Sign of curvature (-1 or +1)
00044    virtual int    signOfCharge()    const =0 ;
00045 
00046 };
00047 
00048 } // End namespace 
00049 
00050 #endif
00051 
00052 
00053 
00054 
00055 
00056 
00057 

Generated on Thu Feb 21 14:30:46 2002 for Atlfast by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001