X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FATCDCL%2Fatis.hxx;h=aeafe33fb4cd2758e53c19f39ee2fd250090ca03;hb=934ce52a235cda3827866f64a9af492f2ea1e63e;hp=c4c28e2d4c5ec623cc6e7510b84adc16bf72311e;hpb=32e9505eedffe7f98de028513de8a809a366bd98;p=flightgear.git diff --git a/src/ATCDCL/atis.hxx b/src/ATCDCL/atis.hxx index c4c28e2d4..aeafe33fb 100644 --- a/src/ATCDCL/atis.hxx +++ b/src/ATCDCL/atis.hxx @@ -23,28 +23,18 @@ #ifndef _FG_ATIS_HXX #define _FG_ATIS_HXX -#include #include +#include #include -#include -#include -#include #include -#ifdef SG_HAVE_STD_INCLUDES -# include -#elif defined( __BORLANDC__ ) || (__APPLE__) -# include -#else -# include -#endif - #include "ATC.hxx" //DCL - a complete guess for now. #define FG_ATIS_DEFAULT_RANGE 30 + class FGATIS : public FGATC { //atc_type type; @@ -54,8 +44,15 @@ class FGATIS : public FGATC { // for failure modeling std::string trans_ident; // transmitted ident + double old_volume; bool atis_failed; // atis failed? + time_t msg_time; // for moderating error messages + time_t cur_time; + int msg_OK; + int attention; + bool _prev_display; // Previous value of _display flag + // Aircraft position // ATIS is actually a special case in that unlike other ATC eg.tower it doesn't actually know about // or the whereabouts of the aircraft it is transmitting to. However, to ensure consistancy of @@ -69,7 +66,9 @@ class FGATIS : public FGATC { FGATIS(void); ~FGATIS(void); - + virtual void Init(); + void attend (int); + //run the ATIS instance void Update(double dt); @@ -81,10 +80,12 @@ class FGATIS : public FGATC { std::string refname; // Holds the refname of a transmission in progress - //Update the transmission string - void UpdateTransmission(void); + int GenTransmission(const int regen, + const int special); // Generate the transmission string friend std::istream& operator>> ( std::istream&, FGATIS& ); }; +typedef int (FGATIS::*int_getter)() const; + #endif // _FG_ATIS_HXX