]> git.mxchange.org Git - flightgear.git/blob - src/Airports/airports_fwd.hxx
Start 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 SGSharedPtr<FGAirport> FGAirportRef;
63 typedef SGSharedPtr<FGRunway> FGRunwayRef;
64 typedef SGSharedPtr<FGParking> FGParkingRef;
65
66 typedef std::vector<FGRunway*> FGRunwayList;
67 typedef std::map<std::string, FGRunway*> FGRunwayMap;
68 typedef std::map<std::string, FGHelipad*> FGHelipadMap;
69
70 typedef std::vector<FGTaxiway*> FGTaxiwayList;
71 typedef std::vector<FGPavement*> FGPavementList;
72 typedef std::vector<FGParking*> FGParkingList;
73
74 typedef std::vector<FGTaxiSegment*>  FGTaxiSegmentVector;
75 typedef FGTaxiSegmentVector::iterator FGTaxiSegmentVectorIterator;
76
77 typedef SGSharedPtr<FGTaxiNode> FGTaxiNodeRef;
78 typedef std::vector<FGTaxiNodeRef> FGTaxiNodeVector;
79 typedef FGTaxiNodeVector::iterator FGTaxiNodeVectorIterator;
80 typedef std::map<int, FGTaxiNodeRef> IndexTaxiNodeMap;
81
82 typedef std::vector<Block> BlockList;
83 typedef BlockList::iterator BlockListIterator;
84
85 typedef std::vector<time_t> TimeVector;
86 typedef std::vector<time_t>::iterator TimeVectorIterator;
87
88 typedef std::vector<FGTaxiRoute> TaxiRouteVector;
89 typedef std::vector<FGTaxiRoute>::iterator TaxiRouteVectorIterator;
90
91 typedef std::vector<RunwayList> RunwayListVec;
92 typedef std::vector<RunwayList>::iterator RunwayListVectorIterator;
93 typedef std::vector<RunwayList>::const_iterator RunwayListVecConstIterator;
94
95 typedef std::vector<RunwayGroup> PreferenceList;
96 typedef std::vector<RunwayGroup>::iterator PreferenceListIterator;
97 typedef std::vector<RunwayGroup>::const_iterator PreferenceListConstIterator;
98
99 #endif /* AIRPORTS_FWD_HXX_ */