X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FInstrumentation%2Fairspeed_indicator.hxx;h=1df6fe09b482a819ebb6f5c30f2dd438a24b1997;hb=6acf1c12fc02d6dfd29de894b033ce163640d7ae;hp=47eb9f43c402e838eaa689a98c961a2c8b39d958;hpb=a357aad36539070811c70f39e68e6fc6a86b7f72;p=flightgear.git diff --git a/src/Instrumentation/airspeed_indicator.hxx b/src/Instrumentation/airspeed_indicator.hxx index 47eb9f43c..1df6fe09b 100644 --- a/src/Instrumentation/airspeed_indicator.hxx +++ b/src/Instrumentation/airspeed_indicator.hxx @@ -1,6 +1,7 @@ // airspeed_indicator.hxx - a regular VSI tied to the static port. // Written by David Megginson, started 2002. // +// Last modified by Eric van den Berg, 24 Nov 2012 // This file is in the Public Domain and comes with no warranty. @@ -14,6 +15,8 @@ #include #include +// forward decls +class FGEnvironmentMgr; /** * Model an airspeed indicator tied to the pitot and static ports. @@ -28,6 +31,8 @@ * Output properties: * * /instrumentation/"name"/indicated-speed-kt + * /instrumentation/"name"/true-speed-kt + * /instrumentation/"name"/indicated-mach */ class AirspeedIndicator : public SGSubsystem { @@ -38,15 +43,22 @@ public: virtual ~AirspeedIndicator (); virtual void init (); + virtual void reinit (); virtual void update (double dt); private: + void computeMach(); - string _name; + std::string _name; unsigned int _num; - string _total_pressure; - string _static_pressure; + std::string _total_pressure; + std::string _static_pressure; bool _has_overspeed; + std::string _pressure_alt_source; + double _ias_limit; + double _mach_limit; + double _alt_threshold; + SGPropertyNode_ptr _ias_limit_node; SGPropertyNode_ptr _mach_limit_node; SGPropertyNode_ptr _alt_threshold_node; @@ -57,7 +69,10 @@ private: SGPropertyNode_ptr _speed_node; SGPropertyNode_ptr _airspeed_limit; SGPropertyNode_ptr _pressure_alt; - SGPropertyNode_ptr _mach; + SGPropertyNode_ptr _mach_node; + SGPropertyNode_ptr _tas_node; + + FGEnvironmentMgr* _environmentManager; }; #endif // __INSTRUMENTS_AIRSPEED_INDICATOR_HXX