X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FAirports%2Fparking.hxx;h=9966553651229e2414bc8692dca4db87b0a3b8a4;hb=46ec7a6ff78b0718c6eb09e5abb45c67c153d2f5;hp=c96ab1d241248ae2a34c3d030da027dd1ee441c5;hpb=4238a46faa8fc8e9ac9174fe960eb7c5df188a4c;p=flightgear.git diff --git a/src/Airports/parking.hxx b/src/Airports/parking.hxx index c96ab1d24..996655365 100644 --- a/src/Airports/parking.hxx +++ b/src/Airports/parking.hxx @@ -30,62 +30,48 @@ #endif #include +#include -#include STL_STRING -#include +#include +#include // for std::auto_ptr #include "gnnode.hxx" +#include -SG_USING_STD(string); -SG_USING_STD(vector); - -class FGParking : public FGTaxiNode { +class FGParking : public FGTaxiNode +{ private: - double heading; - double radius; - string parkingName; - string type; - string airlineCodes; - - bool available; - - - + const double heading; + const double radius; + const std::string parkingName; + const std::string type; + const std::string airlineCodes; + FGTaxiNodeRef pushBackPoint; + + SG_DISABLE_COPY(FGParking); 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); - - void setHeading (double hdg) { heading = hdg; }; - void setRadius (double rad) { radius = rad; }; + FGParking(int index, + const SGGeod& pos, + double heading, double radius, + const std::string& name, const std::string& type, + const std::string& codes); + virtual ~FGParking(); + + double getHeading () const { return heading; }; + double getRadius () const { return radius; }; - void setName (const string& name) { parkingName = name; }; - void setType (const string& tpe) { type = tpe; }; - void setCodes (const string& codes){ airlineCodes= codes;}; + std::string getType () const { return type; }; + std::string getCodes () const { return airlineCodes;}; + std::string getName () const { return parkingName; }; - bool isAvailable () { return available;}; - void setAvailable(bool val) { available = val; }; - - double getHeading () { return heading; }; - double getRadius () { return radius; }; + // TODO do parkings have different name and ident? + virtual const std::string& name() const { return parkingName; } - string getType () { return type; }; - string getCodes () { return airlineCodes;}; - string getName () { return parkingName; }; + void setPushBackPoint(const FGTaxiNodeRef& node); + FGTaxiNodeRef getPushBackPoint () { return pushBackPoint; }; bool operator< (const FGParking &other) const { return radius < other.radius; }; }; -typedef vector FGParkingVec; -typedef vector::iterator FGParkingVecIterator; -typedef vector::const_iterator FGParkingVecConstIterator; - #endif