]> git.mxchange.org Git - flightgear.git/blobdiff - src/ATC/trafficcontrol.hxx
TACAN: fix receiving mobile TACAN.
[flightgear.git] / src / ATC / trafficcontrol.hxx
index 3d58d58068fd0a9ed911c50fbe45376d30ab0d7e..bdedf0e1e902b57d6c45f95ac5794835512ba07c 100644 (file)
@@ -21,9 +21,7 @@
 #ifndef _TRAFFIC_CONTROL_HXX_
 #define _TRAFFIC_CONTROL_HXX_
 
-#include <string>
-#include <vector>
-#include <list>
+#include <Airports/airports_fwd.hxx>
 
 #include <osg/Geode>
 #include <osg/Geometry>
 #include <simgear/structure/SGReferenced.hxx>
 #include <simgear/structure/SGSharedPtr.hxx>
 
-typedef std::vector<int> intVec;
-typedef std::vector<int>::iterator intVecIterator;
+class FGAIAircraft;
+typedef std::vector<FGAIAircraft*> AircraftVec;
+typedef std::vector<FGAIAircraft*>::iterator AircraftVecIterator;
 
+class FGAIFlightPlan;
+typedef std::vector<FGAIFlightPlan*>           FlightPlanVec;
+typedef std::vector<FGAIFlightPlan*>::iterator FlightPlanVecIterator;
+typedef std::map<std::string, FlightPlanVec>   FlightPlanVecMap;
 
-class FGAIFlightPlan;  // forward reference
-class FGGroundNetwork; // forward reference
-class FGAIAircraft;    // forward reference
-class FGAirportDynamics;
+class FGTrafficRecord;
+typedef std::list<FGTrafficRecord> TrafficVector;
+typedef std::list<FGTrafficRecord>::iterator TrafficVectorIterator;
+
+class ActiveRunway;
+typedef std::vector<ActiveRunway> ActiveRunwayVec;
+typedef std::vector<ActiveRunway>::iterator ActiveRunwayVecIterator;
+
+typedef std::vector<int> intVec;
+typedef std::vector<int>::iterator intVecIterator;
 
 /**************************************************************************************
  * class FGATCInstruction
@@ -306,15 +315,6 @@ public:
     int getPriority() const { return priority; };
 };
 
-typedef std::list<FGTrafficRecord> TrafficVector;
-typedef std::list<FGTrafficRecord>::iterator TrafficVectorIterator;
-
-typedef std::vector<time_t> TimeVector;
-typedef std::vector<time_t>::iterator TimeVectorIterator;
-
-typedef std::vector<FGAIAircraft*> AircraftVec;
-typedef std::vector<FGAIAircraft*>::iterator AircraftVecIterator;
-
 /***********************************************************************
  * Active runway, a utility class to keep track of which aircraft has
  * clearance for a given runway.
@@ -368,9 +368,6 @@ public:
     void printDepartureCue();
 };
 
-typedef std::vector<ActiveRunway> ActiveRunwayVec;
-typedef std::vector<ActiveRunway>::iterator ActiveRunwayVecIterator;
-
 /**
  * class FGATCController
  * NOTE: this class serves as an abstraction layer for all sorts of ATC controllers.
@@ -482,7 +479,7 @@ public:
     virtual std::string getName();
     virtual void update(double dt);
     bool hasActiveTraffic() {
-        return activeTraffic.size() != 0;
+        return ! activeTraffic.empty();
     };
     TrafficVector &getActiveTraffic() {
         return activeTraffic;
@@ -519,7 +516,7 @@ public:
     virtual void update(double dt);
 
     bool hasActiveTraffic() {
-        return activeTraffic.size() != 0;
+        return ! activeTraffic.empty();
     };
     TrafficVector &getActiveTraffic() {
         return activeTraffic;
@@ -561,7 +558,7 @@ public:
     ActiveRunway* getRunway(const std::string& name);
 
     bool hasActiveTraffic() {
-        return activeTraffic.size() != 0;
+        return ! activeTraffic.empty();
     };
     TrafficVector &getActiveTraffic() {
         return activeTraffic;