]> git.mxchange.org Git - flightgear.git/blob - src/Airports/airports_fwd.hxx
Clean up/prepare for porting NasalPositioned to cppbind
[flightgear.git] / src / Airports / airports_fwd.hxx
1 /*
2  * airports_fwd.hxx
3  *
4  *  Created on: 04.03.2013
5  *      Author: tom
6  */
7
8 #ifndef AIRPORTS_FWD_HXX_
9 #define AIRPORTS_FWD_HXX_
10
11 #include <simgear/structure/SGSharedPtr.hxx>
12
13 #include <list>
14 #include <map>
15 #include <vector>
16 #include <string>
17
18 // forward decls
19 class FGAirport;
20 class FGAirportDynamics;
21 class FGRunway;
22 class FGHelipad;
23 class FGTaxiway;
24 class FGPavement;
25
26 class FGNavRecord;
27
28 class Block;
29 class FGTaxiNode;
30 class FGParking;
31 class FGTaxiSegment;
32 class FGTaxiRoute;
33 class FGGroundNetwork;
34
35 class RunwayList;
36 class RunwayGroup;
37 class FGRunwayPreference;
38
39 class FGSidStar;
40
41 class SGPropertyNode;
42
43 namespace flightgear {
44   class SID;
45   class STAR;
46   class Approach;
47   class Waypt;
48   class CommStation;
49
50   typedef std::vector<flightgear::SID*> SIDList;
51   typedef std::vector<STAR*> STARList;
52   typedef std::vector<Approach*> ApproachList;
53
54   typedef SGSharedPtr<Waypt> WayptRef;
55   typedef std::vector<WayptRef> WayptVec;
56
57   typedef SGSharedPtr<CommStation> CommStationRef;
58   typedef std::vector<CommStation*> CommStationList;
59   typedef std::map<std::string, FGAirport*> AirportCache;
60 }
61
62 typedef std::vector<FGRunway*> FGRunwayList;
63 typedef std::map<std::string, FGRunway*> FGRunwayMap;
64 typedef std::map<std::string, FGHelipad*> FGHelipadMap;
65
66 typedef std::vector<FGTaxiway*> FGTaxiwayList;
67 typedef std::vector<FGPavement*> FGPavementList;
68
69 typedef std::vector<FGTaxiSegment*>  FGTaxiSegmentVector;
70 typedef FGTaxiSegmentVector::iterator FGTaxiSegmentVectorIterator;
71
72 typedef SGSharedPtr<FGTaxiNode> FGTaxiNodeRef;
73 typedef std::vector<FGTaxiNodeRef> FGTaxiNodeVector;
74 typedef FGTaxiNodeVector::iterator FGTaxiNodeVectorIterator;
75 typedef std::map<int, FGTaxiNodeRef> IndexTaxiNodeMap;
76
77 typedef std::vector<Block> BlockList;
78 typedef BlockList::iterator BlockListIterator;
79
80 typedef std::vector<time_t> TimeVector;
81 typedef std::vector<time_t>::iterator TimeVectorIterator;
82
83 typedef std::vector<FGTaxiRoute> TaxiRouteVector;
84 typedef std::vector<FGTaxiRoute>::iterator TaxiRouteVectorIterator;
85
86 typedef std::vector<FGParking*> FGParkingVec;
87 typedef FGParkingVec::iterator FGParkingVecIterator;
88 typedef FGParkingVec::const_iterator FGParkingVecConstIterator;
89
90 typedef std::vector<RunwayList> RunwayListVec;
91 typedef std::vector<RunwayList>::iterator RunwayListVectorIterator;
92 typedef std::vector<RunwayList>::const_iterator RunwayListVecConstIterator;
93
94 typedef std::vector<RunwayGroup> PreferenceList;
95 typedef std::vector<RunwayGroup>::iterator PreferenceListIterator;
96 typedef std::vector<RunwayGroup>::const_iterator PreferenceListConstIterator;
97
98 #endif /* AIRPORTS_FWD_HXX_ */