00001 #ifndef HelixBarrelPlaneCrossing2OrderLocal_H 00002 #define HelixBarrelPlaneCrossing2OrderLocal_H 00003 00004 #include "DataFormats/GeometrySurface/interface/Plane.h" 00005 00012 class HelixBarrelPlaneCrossing2OrderLocal { 00013 public: 00014 00015 typedef Surface::GlobalPoint GlobalPoint; 00016 typedef Surface::GlobalVector GlobalVector; 00017 typedef Surface::LocalPoint LocalPoint; 00018 typedef Surface::LocalVector LocalVector; 00019 00020 HelixBarrelPlaneCrossing2OrderLocal() {} 00021 00022 HelixBarrelPlaneCrossing2OrderLocal( const GlobalPoint& startingPos, 00023 const GlobalVector& startingDir, 00024 double rho, 00025 const Plane& plane); 00026 00027 LocalPoint position() const { return thePos;} 00028 LocalVector direction() const { return theDir;} 00029 00030 private: 00031 00032 typedef Basic2DVector<float> Vector2D; 00033 00034 LocalPoint thePos; 00035 LocalVector theDir; 00036 00037 }; 00038 00039 #endif