X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FInstrumentation%2Fmarker_beacon.hxx;h=7ed085aaad5ea65224142faf7659749ecc1e52fd;hb=6b9aa0fb970e90aaf8d6800b77b3abe84ae9906d;hp=c7e95909c033ee845d5f7941098b09b77b32971d;hpb=c9813d1b5d79b4aad13c263690a0223086af25ac;p=flightgear.git diff --git a/src/Instrumentation/marker_beacon.hxx b/src/Instrumentation/marker_beacon.hxx index c7e95909c..7ed085aaa 100644 --- a/src/Instrumentation/marker_beacon.hxx +++ b/src/Instrumentation/marker_beacon.hxx @@ -29,33 +29,23 @@ #include #include -#include #include -#include -#include - +class SGSampleGroup; class FGMarkerBeacon : public SGSubsystem { - FGBeacon beacon; - FGMorse morse; - - SGInterpTable *term_tbl; - SGInterpTable *low_tbl; - SGInterpTable *high_tbl; // Inputs - SGPropertyNode *lon_node; - SGPropertyNode *lat_node; - SGPropertyNode *alt_node; - SGPropertyNode *bus_power; - SGPropertyNode *power_btn; - SGPropertyNode *audio_btn; - SGPropertyNode *serviceable; - SGPropertyNode *sound_pause; - - bool need_update; + SGPropertyNode_ptr lon_node; + SGPropertyNode_ptr lat_node; + SGPropertyNode_ptr alt_node; + SGPropertyNode_ptr bus_power; + SGPropertyNode_ptr power_btn; + SGPropertyNode_ptr audio_btn; + SGPropertyNode_ptr audio_vol; + SGPropertyNode_ptr serviceable; + SGPropertyNode_ptr sound_working; bool outer_marker; bool middle_marker; @@ -66,25 +56,28 @@ class FGMarkerBeacon : public SGSubsystem bool middle_blink; bool inner_blink; - string name; + std::string name; int num; // internal periodic station search timer double _time_before_search_sec; + SGSharedPtr _sgr; + public: enum fgMkrBeacType { - NOBEACON = 0, - INNER, - MIDDLE, - OUTER + NOBEACON = 0, + INNER, + MIDDLE, + OUTER }; FGMarkerBeacon(SGPropertyNode *node); ~FGMarkerBeacon(); void init (); + void reinit (); void bind (); void unbind (); void update (double dt);