]> git.mxchange.org Git - flightgear.git/blobdiff - src/Airports/parking.hxx
- export font properties to the property tree again
[flightgear.git] / src / Airports / parking.hxx
index c96ab1d241248ae2a34c3d030da027dd1ee441c5..3b50d5d2a8a308daa4180ff96519f947b078c959 100644 (file)
@@ -39,6 +39,9 @@
 SG_USING_STD(string);
 SG_USING_STD(vector);
 
+class FGTaxiRoute;
+
+
 class FGParking : public FGTaxiNode {
 private:
   double heading;
@@ -48,20 +51,58 @@ private:
   string airlineCodes;
  
   bool available;
-
-  
+  int pushBackPoint;
+  FGTaxiRoute *pushBackRoute;
 
 public:
-  FGParking() { available = true;};
-  //FGParking(FGParking &other);
-  FGParking(double lat,
-           double lon,
-           double hdg,
-           double rad,
-           int idx,
-           const string& name,
-           const string& tpe,
-           const string& codes);
+  FGParking() :
+      heading(0),
+      radius(0),
+      //parkingName(0),
+      //type(0),
+      //airlineCodes(0),
+      available(true),
+      pushBackPoint(-1),
+      pushBackRoute(0)
+  {
+  };
+
+  FGParking(const FGParking &other) :
+      FGTaxiNode   (other),
+      heading      (other.heading),
+      radius       (other.radius),
+      parkingName  (other.parkingName),
+      type         (other.type),
+      airlineCodes (other.airlineCodes),
+      available    (other.available),
+      pushBackPoint(other.pushBackPoint),
+      pushBackRoute(other.pushBackRoute)
+  {
+  };
+
+
+  FGParking& operator =(const FGParking &other)
+  {
+      FGTaxiNode::operator=(other);
+      heading      = other.heading;
+      radius       = other.radius;
+      parkingName  = other.parkingName;
+      type         = other.type;
+      airlineCodes = other.airlineCodes;
+      available    = other.available;
+      pushBackPoint= other.pushBackPoint;
+      pushBackRoute= other.pushBackRoute;
+      return *this;
+  };
+  ~FGParking();
+//   FGParking(double lat,
+//         double lon,
+//         double hdg,
+//         double rad,
+//         int idx,
+//         const string& name,
+//         const string& tpe,
+//         const string& codes);
 
   void setHeading  (double hdg)  { heading     = hdg;  };
   void setRadius   (double rad)  { radius      = rad;  };
@@ -70,6 +111,9 @@ public:
   void setType     (const string& tpe)  { type        = tpe;  };
   void setCodes    (const string& codes){ airlineCodes= codes;};
 
+  void setPushBackRoute(FGTaxiRoute *val) { pushBackRoute = val; };
+  void setPushBackPoint(int val)          { pushBackPoint = val; };
+
   bool isAvailable ()         { return available;};
   void setAvailable(bool val) { available = val; };
   
@@ -80,6 +124,10 @@ public:
   string getCodes    () { return airlineCodes;};
   string getName     () { return parkingName; };
 
+  FGTaxiRoute * getPushBackRoute () { return pushBackRoute; };
+
+  int getPushBackPoint () { return pushBackPoint; };
+
   bool operator< (const FGParking &other) const {
     return radius < other.radius; };
 };