00001 #ifndef __STDAIR_BAS_FORECASTINGMETHOD_HPP 00002 #define __STDAIR_BAS_FORECASTINGMETHOD_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <string> 00009 // StdAir 00010 #include <stdair/basic/StructAbstract.hpp> 00011 00012 namespace stdair { 00013 00015 struct ForecastingMethod : public StructAbstract { 00016 public: 00017 typedef enum { 00018 ADD_PK = 0, 00019 MUL_PK, 00020 LAST_VALUE 00021 } EN_ForecastingMethod; 00022 00025 static const std::string& getLabel (const EN_ForecastingMethod&); 00026 00028 static char getMethodLabel (const EN_ForecastingMethod&); 00029 00031 static std::string getMethodLabelAsString (const EN_ForecastingMethod&); 00032 00034 static std::string describeLabels(); 00035 00037 EN_ForecastingMethod getMethod() const; 00038 00040 std::string getMethodAsString() const; 00041 00044 const std::string describe() const; 00045 00046 public: 00048 bool operator== (const EN_ForecastingMethod&) const; 00049 00050 public: 00052 ForecastingMethod (const EN_ForecastingMethod&); 00054 ForecastingMethod (const char iMethod); 00056 ForecastingMethod (const ForecastingMethod&); 00057 00058 private: 00060 ForecastingMethod(); 00061 00062 00063 private: 00065 static const std::string _labels[LAST_VALUE]; 00067 static const char _methodLabels[LAST_VALUE]; 00068 00069 00070 private: 00071 // //////// Attributes ///////// 00073 EN_ForecastingMethod _method; 00074 }; 00075 00076 } 00077 #endif // __STDAIR_BAS_FORECASTINGMETHOD_HPP