X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FMain%2Ffg_init.cxx;h=dae961c619a0fde92b6cc2a2c45f6ec87e694747;hb=a4e81f4ff075e6a3c0c2ea1b5a29c0bcdfdbc671;hp=7ec9eaa977487ae9370d6830a49d6dd7256fefda;hpb=1fe50d4cd228f72172caca64947ddaa058bf3139;p=flightgear.git diff --git a/src/Main/fg_init.cxx b/src/Main/fg_init.cxx index 7ec9eaa97..dae961c61 100644 --- a/src/Main/fg_init.cxx +++ b/src/Main/fg_init.cxx @@ -493,6 +493,7 @@ bool fgSetPosFromAirportIDandHdg( const string& id, double tgt_hdg ) { return true; } + void fgSetPosFromGlideSlope(void) { double gs = fgGetDouble("/velocities/glideslope"); double od = fgGetDouble("/sim/startup/offset-distance"); @@ -591,7 +592,7 @@ void fgInitFDM() { cur_fdm_state = new FGUFO( dt ); } else if ( model == "external" ) { cur_fdm_state = new FGExternal( dt ); - } else if ( model.find("network,") == 0 ) { + } else if ( model.find("network") == 0 ) { string host = "localhost"; int port1 = 5501; int port2 = 5502; @@ -739,14 +740,22 @@ bool fgInitSubsystems( void ) { exit(-1); } + //////////////////////////////////////////////////////////////////// + // Initialize the event manager subsystem. + //////////////////////////////////////////////////////////////////// + + global_events.init(); + + // Output event stats every 60 seconds + global_events.Register( "FGEventMgr::print_stats()", + &global_events, &FGEventMgr::print_stats, + 60000 ); + //////////////////////////////////////////////////////////////////// // Initialize the scenery management subsystem. //////////////////////////////////////////////////////////////////// - scenery.init(); - scenery.bind(); - if ( global_tile_mgr.init() ) { // Load the local scenery data double visibility_meters = fgGetDouble("/environment/visibility-m"); @@ -759,9 +768,14 @@ bool fgInitSubsystems( void ) { exit(-1); } + // cause refresh of viewer scenery timestamps every 15 seconds... + global_events.Register( "FGTileMgr::refresh_view_timestamps()", + &global_tile_mgr, &FGTileMgr::refresh_view_timestamps, + 15000 ); + SG_LOG( SG_GENERAL, SG_DEBUG, "Current terrain elevation after tile mgr init " << - scenery.get_cur_elev() ); + globals->get_scenery()->get_cur_elev() ); //////////////////////////////////////////////////////////////////// @@ -782,18 +796,6 @@ bool fgInitSubsystems( void ) { fgInitView(); - //////////////////////////////////////////////////////////////////// - // Initialize the event manager subsystem. - //////////////////////////////////////////////////////////////////// - - global_events.init(); - - // Output event stats every 60 seconds - global_events.Register( "FGEventMgr::print_stats()", - &global_events, &FGEventMgr::print_stats, - 60000 ); - - //////////////////////////////////////////////////////////////////// // Initialize the lighting subsystem. //////////////////////////////////////////////////////////////////// @@ -1101,18 +1103,9 @@ void fgReInitSubsystems( void ) } // Initialize the Scenery Management subsystem - scenery.init(); - -#if 0 - if( global_tile_mgr.init() ) { - Load the local scenery data - global_tile_mgr.update( longitude->getDoubleValue(), - latitude->getDoubleValue() ); - } else { - SG_LOG( SG_GENERAL, SG_ALERT, "Error in Tile Manager initialization!" ); - exit(-1); - } -#endif + // FIXME, what really needs to get initialized here, at the time + // this was commented out, scenery.init() was a noop + // scenery.init(); fgInitFDM();