CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/TrackingTools/GeomPropagators/interface/HelixPlaneCrossing.h

Go to the documentation of this file.
00001 #ifndef HelixPlaneCrossing_H
00002 #define HelixPlaneCrossing_H
00003 
00004 #include "DataFormats/GeometryVector/interface/Basic3DVector.h"
00005 
00006 #include <utility>
00007 class Plane;
00008 
00012 class HelixPlaneCrossing {
00013 public:
00015 
00021   typedef Basic3DVector<float>   PositionType;
00022   typedef Basic3DVector<float>   DirectionType;
00023 
00028   virtual std::pair<bool,double> pathLength( const Plane&) = 0;
00029 
00036   virtual PositionType position( double s) const = 0;
00037 
00043   virtual DirectionType direction( double s) const = 0;
00044 
00045 };
00046 
00047 #endif