class SGSubsystem;
class SGSoundMgr;
-class FGATISMgr;
class FGControls;
class FGTACANList;
class FGLocale;
class FGViewer;
class FGRenderer;
class FGFontCache;
-
+class FGSampleQueue;
/**
* Bucket for subsystem pointers representing the sim's state.
SGEphemeris *ephem;
// Material properties library
- SGMaterialLib *matlib;
+ SGSharedPtr<SGMaterialLib> matlib;
// Global autopilot "route"
FGRouteMgr *route_mgr;
- // ATC manager
- FGATISMgr *ATIS_mgr;
-
// control input state
FGControls *controls;
* helper to initialise standard properties on a new property tree
*/
void initProperties();
+
+ SGSharedPtr<FGSampleQueue> _chatter_queue;
+
+ void cleanupListeners();
+
+ typedef std::vector<SGPropertyChangeListener*> SGPropertyChangeListenerVec;
+ SGPropertyChangeListenerVec _listeners_to_cleanup;
+
public:
FGGlobals();
inline void set_ephem( SGEphemeris *e ) { ephem = e; }
inline SGMaterialLib *get_matlib() const { return matlib; }
- inline void set_matlib( SGMaterialLib *m ) { matlib = m; }
-
- inline FGATISMgr *get_ATIS_mgr() const { return ATIS_mgr; }
- inline void set_ATIS_mgr( FGATISMgr *a ) {ATIS_mgr = a; }
+ void set_matlib( SGMaterialLib *m );
inline FGControls *get_controls() const { return controls; }
inline void set_controls( FGControls *c ) { controls = c; }
* Save user settings in autosave.xml
*/
void saveUserSettings();
+
+ FGSampleQueue* get_chatter_queue() const;
+ void set_chatter_queue(FGSampleQueue* queue);
+
+ void addListenerToCleanup(SGPropertyChangeListener* l);
};