RMOL Logo  1.00.8
C++ library of Revenue Management and Optimisation classes and functions
OptimizationType.hpp
Go to the documentation of this file.
1 #ifndef __RMOL_OPTIMIZATIONTYPE_HPP
2 #define __RMOL_OPTIMIZATIONTYPE_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <string>
9 // StdAir
10 #include <stdair/basic/StructAbstract.hpp>
11 
12 namespace RMOL {
13 
17  struct OptimizationType : public stdair::StructAbstract {
18  public:
19  typedef enum {
20  OPT_MC = 0, // Single resource opt. using the Monte Carlo algorithm
21  OPT_DP, // Single resource opt. using dynamic programming (DP)
22  HEUR_EMSR, // Single resource opt. using EMSR heuristic
23  HEUR_EMSRA, // Single resource opt. using EMSR-a heuristic
24  HEUR_EMSRB, // Single resource opt. using EMSR-b heuristic
25  HEUR_MC_4_QFF, // Single resource opt. using MC algorithm for QFF
26  HEUR_EMSRB_4_QFF, // Single resource opt. using EMSRb for QFF
27  HEUR_MRT_QFF, // Single resource pre-opt. using MRT for QFF
30 
37  static const std::string& getLabel (const EN_OptimizationType&);
38 
42  static char getTypeLabel (const EN_OptimizationType&);
43 
47  static std::string getTypeLabelAsString (const EN_OptimizationType&);
48 
50  static std::string describeLabels();
51 
54 
58  std::string getTypeAsString() const;
59 
66  const std::string describe() const;
67 
68  public:
70  bool operator== (const EN_OptimizationType&) const;
71 
72  public:
76  OptimizationType (const char iType);
78  OptimizationType (const std::string& iTypeStr);
81 
82  private:
85 
86 
87  private:
89  static const std::string _labels[LAST_VALUE];
91  static const char _typeLabels[LAST_VALUE];
92 
93 
94  private:
95  // //////// Attributes /////////
97  EN_OptimizationType _type;
98  };
99 
100 }
101 #endif // __RMOL_OPTIMIZATIONTYPE_HPP
Definition: BasConst.cpp:7
EN_OptimizationType getType() const
bool operator==(const EN_OptimizationType &) const
static const std::string & getLabel(const EN_OptimizationType &)
const std::string describe() const
std::string getTypeAsString() const
static char getTypeLabel(const EN_OptimizationType &)
static std::string getTypeLabelAsString(const EN_OptimizationType &)
static std::string describeLabels()