TrackTrajectory.h

Go to the documentation of this file.
00001 // ================================================
00002 // TrackTrajectory class description
00003 // ================================================
00004 //
00005 // THIS TEXT TO BE REPLACED BY ATLAS STANDARD FORMAT
00006 //
00007 //
00008 // This version....
00009 //
00010 //
00011 // Namespace Atlfast::
00012 //
00013 // class: TrackTrajectory
00014 //
00015 // Description: 
00016 //
00017 //  Simple concrete class to represent a track trajectory
00018 //   
00019 // ................................................................
00020 //
00021 
00022 #ifndef ATLFAST_TRACKTRAJECTORY_H
00023 #define ATLFAST_TRACKTRAJECTORY_H
00024 
00025 
00026 #include "AtlfastEvent/Phi.h"
00027 #include "CLHEP/Vector/ThreeVector.h"
00028 #include "CLHEP/Geometry/Point3D.h"
00029 
00030 #include "AtlfastEvent/TrackParameters.h"
00031 
00032 namespace Atlfast {
00036   class TrackTrajectory {
00037     
00038   private:
00039     
00040     // Trajectory state variables
00041     TrackParameters m_parameters;
00042     ::HepPoint3D m_startPoint ; 
00043     double m_curvature ;
00044     
00045   public:
00046     
00048     TrackTrajectory() {}
00050     TrackTrajectory( TrackParameters, ::HepPoint3D, double);
00051     
00053     TrackTrajectory( 
00054                     const Hep3Vector& p, 
00055                     const Hep3Vector& vertex,  
00056                     double charge, 
00057                     double bField 
00058                     );
00059     
00061     TrackTrajectory( const TrackTrajectory& src ) ;
00062     
00064     ~TrackTrajectory() ;
00065     
00067     TrackTrajectory& operator=( const TrackTrajectory& src ) ;
00068     TrackParameters  parameters() const;
00069     
00070     int    signOfCharge()    const ;
00071     HepPoint3D startPoint()  const ; 
00072     double radius()          const ;
00073     double curvature()       const ;
00074     
00075   };
00076 
00077   // ................................................
00078   // Message stream operator for simple debug output
00079   
00080   MsgStream& operator << ( MsgStream& s, const TrackTrajectory& t ) ;
00081   std::ostream& operator << ( std::ostream& s, const TrackTrajectory& t ) ;
00082 
00083   
00084 } // End namespace
00085 
00086 #endif

Generated on Fri Sep 21 13:00:09 2007 for AtlfastEvent by  doxygen 1.5.1