}
};
-static void fgInitTowerLocationListener() {
+void fgInitTowerLocationListener() {
fgGetNode("/sim/tower/airport-id", true)
->addChangeListener( new FGTowerLocationListener() );
}
string fix = fgGetString("/sim/presets/fix");
fgSetDouble( "/orientation/heading-deg", hdg );
- fgInitTowerLocationListener();
if ( !set_pos && !apt.empty() && !rwy_no.empty() ) {
// An airport + runway is requested
globals->add_subsystem("submodel_mgr", new FGSubmodelMgr);
- // It's probably a good idea to initialize the top level traffic manager
- // After the AI and ATC systems have been initialized properly.
- // AI Traffic manager
- globals->add_subsystem("Traffic Manager", new FGTrafficManager);
- //FGTrafficManager *dispatcher =
- // (FGTrafficManager*) globals->get_subsystem("Traffic Manager");
- //SGPath path = globals->get_fg_root();
- //path.append("/Traffic/fgtraffic.xml");
- //readXML(path.str(),
- // *dispatcher);
+ // It's probably a good idea to initialize the top level traffic manager
+ // After the AI and ATC systems have been initialized properly.
+ // AI Traffic manager
+ globals->add_subsystem("Traffic Manager", new FGTrafficManager);
////////////////////////////////////////////////////////////////////
// Set the initial position based on presets (or defaults)
bool fgInitPosition();
+
+// Listen to /sim/tower/airport-id and set tower view position accordingly
+void fgInitTowerLocationListener();
+
+
// Initialize various time dependent systems (lighting, sun position, etc.)
// returns a new instance of the SGTime class
SGTime *fgInitTime();
// based on the requested presets, calculate the true starting
// lon, lat
fgInitPosition();
+ fgInitTowerLocationListener();
SGTime *t = fgInitTime();
globals->set_time_params( t );