00001 #include "TrackPropagation/NavGeometry/interface/NavCone.h" 00002 #include "TrackingTools/GeomPropagators/interface/Propagator.h" 00003 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" 00004 #include "DataFormats/GeometrySurface/interface/Bounds.h" 00005 00006 TrajectoryStateOnSurface 00007 NavCone::propagate( const Propagator& prop, 00008 const TrajectoryStateOnSurface& startingState) const 00009 { 00010 return prop.propagate( startingState, *theSurfaceP); 00011 } 00012 00013 std::pair<TrajectoryStateOnSurface,double> 00014 NavCone::propagateWithPath( const Propagator& prop, 00015 const TrajectoryStateOnSurface& startingState) const 00016 { 00017 return prop.propagateWithPath( startingState, *theSurfaceP); 00018 } 00019 00020 class NavConeNotImplementedDistanceAlongLine : public std::exception { 00021 public: 00022 NavConeNotImplementedDistanceAlongLine() throw() {} 00023 virtual ~NavConeNotImplementedDistanceAlongLine() throw() {} 00024 }; 00025 00026 std::pair<bool,double> 00027 NavCone::distanceAlongLine( const NavSurface::GlobalPoint& pos, 00028 const NavSurface::GlobalVector& dir) const 00029 { 00030 throw NavConeNotImplementedDistanceAlongLine(); 00031 return std::pair<bool,double>(false,0); 00032 }