00001 #ifndef __AIRINV_BAS_FLIGHTVISIBILITYCODE_HPP 00002 #define __AIRINV_BAS_FLIGHTVISIBILITYCODE_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <string> 00009 // StdAir 00010 #include <stdair/basic/StructAbstract.hpp> 00011 00012 namespace AIRINV { 00013 00015 struct FlightVisibilityCode : public stdair::StructAbstract { 00016 public: 00017 typedef enum { 00018 NORMAL = 0, 00019 HIDDEN, 00020 PSEUDO, 00021 LAST_VALUE 00022 } EN_FlightVisibilityCode; 00023 00025 static const std::string& getLabel (const EN_FlightVisibilityCode&); 00026 00028 static const std::string& getCodeLabel (const EN_FlightVisibilityCode&); 00029 00031 static std::string describeLabels(); 00032 00034 EN_FlightVisibilityCode getCode() const; 00035 00037 const std::string describe() const; 00038 00039 00040 public: 00042 FlightVisibilityCode (const EN_FlightVisibilityCode&); 00044 FlightVisibilityCode (const std::string& iCode); 00045 00046 00047 private: 00049 static const std::string _labels[LAST_VALUE]; 00051 static const std::string _codeLabels[LAST_VALUE]; 00052 00053 00054 private: 00055 // //////// Attributes ///////// 00057 EN_FlightVisibilityCode _code; 00058 }; 00059 00060 } 00061 #endif // __AIRINV_BAS_FLIGHTVISIBILITYCODE_HPP