StdAir Logo  1.00.8
C++ Standard Airline IT Object Library
AirlineFeature.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_BOM_AIRLINEFEATURE_HPP
2 #define __STDAIR_BOM_AIRLINEFEATURE_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // StdAir
17 
18 namespace stdair {
19 
25  class AirlineFeature : public BomAbstract {
26  template <typename BOM> friend class FacBom;
27  template <typename BOM> friend class FacCloneBom;
28  friend class FacBomManager;
29 
30  public:
31  // //////////// Type definitions //////////////
36 
37  public:
38  // /////////// Display support methods /////////
44  void toStream (std::ostream& ioOut) const {
45  ioOut << toString();
46  }
47 
53  void fromStream (std::istream& ioIn) {
54  }
55 
59  std::string toString() const;
60 
64  const std::string describeKey() const {
65  return _key.toString();
66  }
67 
68  public:
69  // /////////// Getters ////////////
73  const Key_T& getKey() const {
74  return _key;
75  }
76 
80  BomAbstract* const getParent() const {
81  return _parent;
82  }
83 
87  const HolderMap_T& getHolderMap() const {
88  return _holderMap;
89  }
90 
96  }
97 
103  }
104 
110  }
111 
117  }
118 
124  }
125 
126 
127  public:
128  // //////////// Setters //////////
139  void init (const ForecastingMethod&,
140  const UnconstrainingMethod&,
141  const PreOptimisationMethod&,
142  const OptimisationMethod&,
143  const HistoricalDataLimit_T&,
144  const ControlMode_T&,
145  const PartnershipTechnique&);
146 
150  void setForecastingMethod (const ForecastingMethod& iForecastingMethod) {
151  _forecastingMethod = iForecastingMethod;
152  }
153 
157  void setUnconstrainingMethod(const UnconstrainingMethod& iUnconstrainingMethod) {
158  _unconstrainingMethod = iUnconstrainingMethod;
159  }
160 
164  void setPartnershipTechnique(const PartnershipTechnique& iPartnershipTechnique) {
165  _partnershipTechnique = iPartnershipTechnique;
166  }
167 
171  void setPreOptimisationMethod(const PreOptimisationMethod& iPreOptimisationMethod) {
172  _preOptimisationMethod = iPreOptimisationMethod;
173  }
174 
178  void setOptimisationMethod(const OptimisationMethod& iOptimisationMethod) {
179  _optimisationMethod = iOptimisationMethod;
180  }
181 
182 
183  protected:
184  // ////////// Constructors and destructors /////////
188  AirlineFeature (const Key_T&);
192  virtual ~AirlineFeature ();
193 
194  private:
198  AirlineFeature ();
203 
204  protected:
205  // ///////////// Attributes /////////////
210 
215 
220 
225 
230 
235 
240 
245 
250 
255 
256  };
257 
258 }
259 #endif // __STDAIR_BOM_AIRLINEFEATURE_HPP
260 
stdair::AirlineFeature::init
void init(const ForecastingMethod &, const UnconstrainingMethod &, const PreOptimisationMethod &, const OptimisationMethod &, const HistoricalDataLimit_T &, const ControlMode_T &, const PartnershipTechnique &)
Definition: AirlineFeature.cpp:38
stdair::UnconstrainingMethod::getMethod
EN_UnconstrainingMethod getMethod() const
Definition: UnconstrainingMethod.cpp:88
stdair::AirlineFeature::setUnconstrainingMethod
void setUnconstrainingMethod(const UnconstrainingMethod &iUnconstrainingMethod)
Definition: AirlineFeature.hpp:157
ForecastingMethod.hpp
stdair::PartnershipTechnique
Enumeration of partnership techniques.
Definition: PartnershipTechnique.hpp:17
stdair::ForecastingMethod
Definition: ForecastingMethod.hpp:15
stdair::ForecastingMethod::EN_ForecastingMethod
EN_ForecastingMethod
Definition: ForecastingMethod.hpp:17
stdair::UnconstrainingMethod::EN_UnconstrainingMethod
EN_UnconstrainingMethod
Definition: UnconstrainingMethod.hpp:17
stdair::AirlineFeature::getPartnershipTechnique
PartnershipTechnique::EN_PartnershipTechnique getPartnershipTechnique() const
Definition: AirlineFeature.hpp:108
stdair::OptimisationMethod::EN_OptimisationMethod
EN_OptimisationMethod
Definition: OptimisationMethod.hpp:17
PreOptimisationMethod.hpp
stdair::AirlineFeature::getParent
BomAbstract *const getParent() const
Definition: AirlineFeature.hpp:80
stdair::PartnershipTechnique::getTechnique
static EN_PartnershipTechnique getTechnique(const char)
Definition: PartnershipTechnique.cpp:54
stdair::ForecastingMethod::getMethod
EN_ForecastingMethod getMethod() const
Definition: ForecastingMethod.cpp:93
stdair::OptimisationMethod
Definition: OptimisationMethod.hpp:15
stdair::AirlineFeature::toString
std::string toString() const
Definition: AirlineFeature.cpp:55
stdair::AirlineFeature::fromStream
void fromStream(std::istream &ioIn)
Definition: AirlineFeature.hpp:53
stdair_rm_types.hpp
stdair::AirlineFeature::_forecastingMethod
ForecastingMethod _forecastingMethod
Definition: AirlineFeature.hpp:224
stdair::AirlineFeatureKey
Definition: AirlineFeatureKey.hpp:15
stdair::FacCloneBom
Base class for Factory layer.
Definition: FacCloneBom.hpp:22
stdair::BomAbstract
Base class for the Business Object Model (BOM) layer.
Definition: BomAbstract.hpp:24
stdair::AirlineFeatureKey::toString
const std::string toString() const
Definition: AirlineFeatureKey.cpp:30
stdair::AirlineFeature::Key_T
AirlineFeatureKey Key_T
Definition: AirlineFeature.hpp:35
stdair::HistoricalDataLimit_T
short HistoricalDataLimit_T
Definition: stdair_rm_types.hpp:24
stdair::AirlineFeature::_unconstrainingMethod
UnconstrainingMethod _unconstrainingMethod
Definition: AirlineFeature.hpp:239
stdair::OptimisationMethod::getMethod
EN_OptimisationMethod getMethod() const
Definition: OptimisationMethod.cpp:89
OptimisationMethod.hpp
stdair::AirlineFeature
Class representing various configuration parameters (e.g., revenue management methods such EMSRb or M...
Definition: AirlineFeature.hpp:25
stdair::AirlineFeature::getKey
const Key_T & getKey() const
Definition: AirlineFeature.hpp:73
stdair::PreOptimisationMethod
Definition: PreOptimisationMethod.hpp:15
stdair::AirlineFeature::getHolderMap
const HolderMap_T & getHolderMap() const
Definition: AirlineFeature.hpp:87
stdair
Handle on the StdAir library context.
Definition: BasChronometer.cpp:9
stdair::HolderMap_T
std::map< const std::type_info *, BomAbstract * > HolderMap_T
Definition: BomAbstract.hpp:63
stdair::PreOptimisationMethod::getMethod
EN_PreOptimisationMethod getMethod() const
Definition: PreOptimisationMethod.cpp:90
stdair::AirlineFeature::_controlMode
ControlMode_T _controlMode
Definition: AirlineFeature.hpp:234
UnconstrainingMethod.hpp
stdair::AirlineFeature::setForecastingMethod
void setForecastingMethod(const ForecastingMethod &iForecastingMethod)
Definition: AirlineFeature.hpp:150
BomAbstract.hpp
stdair::AirlineFeature::_key
Key_T _key
Definition: AirlineFeature.hpp:209
stdair::PartnershipTechnique::EN_PartnershipTechnique
EN_PartnershipTechnique
Definition: PartnershipTechnique.hpp:19
stdair::AirlineFeature::setOptimisationMethod
void setOptimisationMethod(const OptimisationMethod &iOptimisationMethod)
Definition: AirlineFeature.hpp:178
AirlineFeatureKey.hpp
stdair::AirlineFeature::setPreOptimisationMethod
void setPreOptimisationMethod(const PreOptimisationMethod &iPreOptimisationMethod)
Definition: AirlineFeature.hpp:171
stdair::UnconstrainingMethod
Definition: UnconstrainingMethod.hpp:15
stdair::AirlineFeature::getForecastingMethod
ForecastingMethod::EN_ForecastingMethod getForecastingMethod() const
Definition: AirlineFeature.hpp:94
stdair::AirlineFeature::setPartnershipTechnique
void setPartnershipTechnique(const PartnershipTechnique &iPartnershipTechnique)
Definition: AirlineFeature.hpp:164
PartnershipTechnique.hpp
stdair::AirlineFeature::getPreOptimisationMethod
PreOptimisationMethod::EN_PreOptimisationMethod getPreOptimisationMethod() const
Definition: AirlineFeature.hpp:115
stdair::AirlineFeature::getUnconstrainingMethod
UnconstrainingMethod::EN_UnconstrainingMethod getUnconstrainingMethod() const
Definition: AirlineFeature.hpp:101
stdair::PreOptimisationMethod::EN_PreOptimisationMethod
EN_PreOptimisationMethod
Definition: PreOptimisationMethod.hpp:17
stdair::AirlineFeature::_partnershipTechnique
PartnershipTechnique _partnershipTechnique
Definition: AirlineFeature.hpp:254
stdair::FacBomManager
Utility class for linking StdAir-based objects.
Definition: FacBomManager.hpp:30
stdair::AirlineFeature::describeKey
const std::string describeKey() const
Definition: AirlineFeature.hpp:64
stdair::AirlineFeature::~AirlineFeature
virtual ~AirlineFeature()
Definition: AirlineFeature.cpp:34
stdair::ControlMode_T
std::string ControlMode_T
Definition: stdair_inventory_types.hpp:134
AirlineFeatureTypes.hpp
stdair::AirlineFeature::_optimisationMethod
OptimisationMethod _optimisationMethod
Definition: AirlineFeature.hpp:249
stdair::FacBom
Base class for Factory layer.
Definition: FacBom.hpp:22
stdair::AirlineFeature::_parent
BomAbstract * _parent
Definition: AirlineFeature.hpp:214
stdair::AirlineFeature::getOptimisationMethod
OptimisationMethod::EN_OptimisationMethod getOptimisationMethod() const
Definition: AirlineFeature.hpp:122
stdair::AirlineFeature::_holderMap
HolderMap_T _holderMap
Definition: AirlineFeature.hpp:219
stdair::AirlineFeature::toStream
void toStream(std::ostream &ioOut) const
Definition: AirlineFeature.hpp:44
stdair::AirlineFeature::_historicalDataLimit
HistoricalDataLimit_T _historicalDataLimit
Definition: AirlineFeature.hpp:229
stdair::AirlineFeature::_preOptimisationMethod
PreOptimisationMethod _preOptimisationMethod
Definition: AirlineFeature.hpp:244