]> git.mxchange.org Git - flightgear.git/blobdiff - src/Navaids/routePath.hxx
Launcher GUI for in-air / navaid starts
[flightgear.git] / src / Navaids / routePath.hxx
index 421dd98205cbc63a8eb5feeb3216e976c98ef46c..49b44de4a01d2b3db0285700b765980c6eac86b8 100644 (file)
@@ -24,6 +24,7 @@
 #ifndef FG_ROUTE_PATH_HXX
 #define FG_ROUTE_PATH_HXX
 
+#include <memory>
 #include <Navaids/route.hxx>
 
 namespace flightgear
@@ -37,18 +38,21 @@ typedef std::vector<SGGeod> SGGeodVec;
 class RoutePath
 {
 public:
-  RoutePath(const flightgear::WayptVec& wpts);
   RoutePath(const flightgear::FlightPlan* fp);
-  
+  ~RoutePath();
+
   SGGeodVec pathForIndex(int index) const;
   
   SGGeod positionForIndex(int index) const;
-  
+
+  SGGeod positionForDistanceFrom(int index, double distanceM) const;
+
   double trackForIndex(int index) const;
   
   double distanceForIndex(int index) const;
   
   double distanceBetweenIndices(int from, int to) const;
+
 private:
   class RoutePathPrivate;
   
@@ -62,10 +66,7 @@ private:
   void interpolateGreatCircle(const SGGeod& aFrom, const SGGeod& aTo, SGGeodVec& r) const;
   
   
-  RoutePathPrivate* d;
-  
-  
-  double _pathTurnRate; ///< degrees-per-second, defaults to 3, i.e 180 in a minute
+  std::auto_ptr<RoutePathPrivate> d;
 };
 
 #endif