]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/globals.hxx
Merge branch 'jt/runway' into next
[flightgear.git] / src / Main / globals.hxx
index d9b285b95d8fd8ee4f6be61e6c4305dad4a39bc7..d962bae2c2937bbc6e2f12de46e177e6ac6d0f53 100644 (file)
@@ -16,7 +16,7 @@
 //
 // You should have received a copy of the GNU General Public License
 // along with this program; if not, write to the Free Software
-// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 //
 // $Id$
 
 #ifndef _GLOBALS_HXX
 #define _GLOBALS_HXX
 
-#ifdef HAVE_CONFIG_H
-#  include <config.h>
-#endif
-
 #include <simgear/compiler.h>
-#include <simgear/structure/callback.hxx>
+#include <simgear/props/props.hxx>
 #include <simgear/structure/subsystem_mgr.hxx>
-#include <simgear/structure/event_mgr.hxx>
 
 #include <vector>
-#include STL_STRING
-
-SG_USING_STD( vector );
-SG_USING_STD( string );
-
-typedef vector<string> string_list;
+#include <string>
 
+typedef std::vector<std::string> string_list;
 
 // Forward declarations
 
@@ -53,28 +44,25 @@ typedef vector<string> string_list;
 // anyway.
 
 class SGEphemeris;
-
 class SGCommandMgr;
 class SGMagVar;
 class SGMaterialLib;
-class SGModelLib;
 class SGPropertyNode;
 class SGTime;
 class SGSoundMgr;
+class SGEventMgr;
+class SGSubsystemMgr;
+class SGSubsystem;
 
-
-class FGAirportList;
-class FGRunwayList;
 class FGAIMgr;
 class FGATCMgr;
-class FGATCDisplay;
 class FGAircraftModel;
 class FGControls;
 class FGFlightPlanDispatcher;
 class FGIO;
 class FGNavList;
+class FGAirwayNetwork;
 class FGTACANList;
-class FGFixList;
 class FGLight;
 class FGModelMgr;
 class FGRouteMgr;
@@ -85,6 +73,7 @@ class FGTileMgr;
 class FGViewMgr;
 class FGViewer;
 class FGRenderer;
+class FGFontCache;
 
 
 /**
@@ -96,6 +85,13 @@ class FGGlobals
 
 private:
 
+    // properties, destroy last
+    SGPropertyNode_ptr props;
+    SGPropertyNode_ptr initial_state;
+
+    // localization
+    SGPropertyNode_ptr locale;
+
     FGRenderer *renderer;
     SGSubsystemMgr *subsystem_mgr;
     SGEventMgr *event_mgr;
@@ -104,15 +100,12 @@ private:
     double sim_time_sec;
 
     // Root of FlightGear data tree
-    string fg_root;
+    std::string fg_root;
 
     // Roots of FlightGear scenery tree
     string_list fg_scenery;
 
-    // Fullscreen mode for old 3DFX cards.
-#if defined(FX) && defined(XMESA)
-    bool fullscreen;
-#endif
+    std::string browser;
 
     // An offset in seconds from the true time.  Allows us to adjust
     // the effective time of day.
@@ -143,18 +136,9 @@ private:
     // sound manager
     SGSoundMgr *soundmgr;
 
-    // Simple Airport List
-    FGAirportList *airports;
-
-    // Runway List
-    FGRunwayList *runways;
-
     // ATC manager
     FGATCMgr *ATC_mgr;
 
-    // ATC Renderer
-    FGATCDisplay *ATC_display;
-
     // AI manager
     FGAIMgr *AI_mgr;
 
@@ -164,17 +148,8 @@ private:
     // viewer manager
     FGViewMgr *viewmgr;
 
-    // properties
-    SGPropertyNode *props;
-    SGPropertyNode *initial_state;
-
-    // localization
-    SGPropertyNode *locale;
-
     SGCommandMgr *commands;
 
-    SGModelLib *model_lib;
-
   //FGFlightPlanDispatcher *fpDispatcher;
 
     FGAircraftModel *acmodel;
@@ -197,16 +172,17 @@ private:
     // Input/Ouput subsystem
     FGIO *io;
 
+    FGFontCache *fontcache;
+
     // Navigational Aids
     FGNavList *navlist;
     FGNavList *loclist;
     FGNavList *gslist;
     FGNavList *dmelist;
-    FGNavList *mkrlist;
     FGNavList *tacanlist;
     FGNavList *carrierlist;
     FGTACANList *channellist;
-    FGFixList *fixlist;
+    FGAirwayNetwork *airwaynet;
 
     //Mulitplayer managers
     FGMultiplayMgr *multiplayer_mgr;
@@ -234,16 +210,14 @@ public:
     inline void inc_sim_time_sec (double dt) { sim_time_sec += dt; }
     inline void set_sim_time_sec (double t) { sim_time_sec = t; }
 
-    inline const string &get_fg_root () const { return fg_root; }
-    void set_fg_root (const string &root);
+    inline const std::string &get_fg_root () const { return fg_root; }
+    void set_fg_root (const std::string &root);
 
     inline const string_list &get_fg_scenery () const { return fg_scenery; }
-    void set_fg_scenery (const string &scenery);
+    void set_fg_scenery (const std::string &scenery);
 
-#if defined(FX) && defined(XMESA)
-    inline bool get_fullscreen() const { return fullscreen; }
-    inline bool set_fullscreen( bool f ) { fullscreen = f; }
-#endif
+    inline const std::string &get_browser () const { return browser; }
+    void set_browser (const std::string &b) { browser = b; }
 
     inline long int get_warp() const { return warp; }
     inline void set_warp( long int w ) { warp = w; }
@@ -265,18 +239,9 @@ public:
     inline SGMaterialLib *get_matlib() const { return matlib; }
     inline void set_matlib( SGMaterialLib *m ) { matlib = m; }
 
-    inline FGAirportList *get_airports() const { return airports; }
-    inline void set_airports( FGAirportList *a ) {airports = a; }
-
-    inline FGRunwayList *get_runways() const { return runways; }
-    inline void set_runways( FGRunwayList *r ) {runways = r; }
-
     inline FGATCMgr *get_ATC_mgr() const { return ATC_mgr; }
     inline void set_ATC_mgr( FGATCMgr *a ) {ATC_mgr = a; }
 
-    inline FGATCDisplay *get_ATC_display() const { return ATC_display; }
-    inline void set_ATC_display( FGATCDisplay *d ) {ATC_display = d; }
-
     inline FGAIMgr *get_AI_mgr() const { return AI_mgr; }
     inline void set_AI_mgr( FGAIMgr *a ) {AI_mgr = a; }
 
@@ -301,12 +266,6 @@ public:
 
     inline SGCommandMgr *get_commands () { return commands; }
 
-    inline SGModelLib * get_model_lib () { return model_lib; }
-
-    inline void set_model_lib (SGModelLib *m) {
-        model_lib = m;
-    }
-
     inline FGAircraftModel *get_aircraft_model () { return acmodel; }
 
     inline void set_aircraft_model (FGAircraftModel * model)
@@ -350,6 +309,7 @@ public:
     inline void set_tile_mgr ( FGTileMgr *t ) { tile_mgr = t; }
 
     inline FGIO* get_io() const { return io; }
+    inline FGFontCache *get_fontcache() const { return fontcache; }
     
     inline FGNavList *get_navlist() const { return navlist; }
     inline void set_navlist( FGNavList *n ) { navlist = n; }
@@ -363,13 +323,13 @@ public:
     inline void set_tacanlist( FGNavList *n ) { tacanlist = n; }
     inline FGNavList *get_carrierlist() const { return carrierlist; }
     inline void set_carrierlist( FGNavList *n ) { carrierlist = n; }
-    inline FGNavList *get_mkrlist() const { return mkrlist; }
-    inline void set_mkrlist( FGNavList *n ) { mkrlist = n; }
-    inline FGFixList *get_fixlist() const { return fixlist; }
-    inline void set_fixlist( FGFixList *f ) { fixlist = f; }
     inline FGTACANList *get_channellist() const { return channellist; }
     inline void set_channellist( FGTACANList *c ) { channellist = c; }
 
+    inline FGAirwayNetwork *get_airwaynet() const { return airwaynet; }
+    inline void set_airwaynet( FGAirwayNetwork *a ) { airwaynet = a; }
+
+
    /**
      * Save the current state as the initial state.
      */