1.00.26
C++ Standard Airline IT Object Library
Toggle main menu visibility
Loading...
Searching...
No Matches
Inventory.hpp
Go to the documentation of this file.
1
#ifndef __STDAIR_BOM_INVENTORY_HPP
2
#define __STDAIR_BOM_INVENTORY_HPP
3
4
// //////////////////////////////////////////////////////////////////////
5
// Import section
6
// //////////////////////////////////////////////////////////////////////
7
// STL
8
#include <iosfwd>
9
#include <string>
10
// StdAir
11
#include <
stdair/stdair_inventory_types.hpp
>
12
#include <
stdair/basic/BasConst_Inventory.hpp
>
13
#include <
stdair/bom/BomAbstract.hpp
>
14
#include <
stdair/bom/AirlineFeature.hpp
>
15
#include <
stdair/bom/InventoryKey.hpp
>
16
#include <
stdair/bom/InventoryTypes.hpp
>
17
19
namespace
boost
{
20
namespace
serialization
{
21
class
access;
22
}
23
namespace
archive
{
24
namespace
detail
{
25
template
<
class
T>
26
struct
heap_allocation
;
27
}
28
}
29
}
30
31
32
namespace
stdair
{
33
35
struct
FlightDateKey
;
36
class
FlightDate
;
37
41
class
Inventory
:
public
BomAbstract
{
42
template
<
typename
BOM>
friend
class
FacBom
;
43
template
<
typename
BOM>
friend
class
FacCloneBom
;
44
friend
class
FacBomManager
;
45
friend
class
boost::serialization::access
;
46
template
<
class
T>
friend
struct
boost::archive::detail::heap_allocation
;
47
48
public :
49
// ////////// Type definitions ////////////
53
typedef
InventoryKey
Key_T
;
54
55
56
public
:
57
// ////////// Getters ////////////
59
const
Key_T
&
getKey
()
const
{
60
return
_key
;
61
}
62
64
const
AirlineCode_T
&
getAirlineCode
()
const
{
65
return
_key
.getAirlineCode();
66
}
67
69
ForecastingMethod::EN_ForecastingMethod
getForecastingMethod
()
const
;
70
72
UnconstrainingMethod::EN_UnconstrainingMethod
getUnconstrainingMethod
()
const
;
73
75
PreOptimisationMethod::EN_PreOptimisationMethod
getPreOptimisationMethod
()
const
;
76
78
OptimisationMethod::EN_OptimisationMethod
getOptimisationMethod
()
const
;
79
81
PartnershipTechnique::EN_PartnershipTechnique
getPartnershipTechnique
()
const
;
82
84
BomAbstract
*
const
getParent
()
const
{
85
return
_parent
;
86
}
87
89
const
HolderMap_T
&
getHolderMap
()
const
{
90
return
_holderMap
;
91
}
92
103
FlightDate
*
getFlightDate
(
const
std::string& iFlightDateKeyStr)
const
;
104
115
FlightDate
*
getFlightDate
(
const
FlightDateKey
&)
const
;
116
120
AirlineFeature
*
getAirlineFeature
()
const
{
121
return
_airlineFeature
;
122
}
123
124
125
private
:
126
// /////////// Setters ////////////
128
void
setAirlineFeature (
AirlineFeature
& iAirlineFeature) {
129
_airlineFeature
= &iAirlineFeature;
130
}
131
132
133
public
:
134
// /////////// Display support methods /////////
140
void
toStream
(std::ostream& ioOut)
const
{
141
ioOut <<
toString
();
142
}
143
149
void
fromStream
(std::istream& ioIn) {
150
}
151
155
std::string
toString
()
const
;
156
160
const
std::string
describeKey
()
const
{
161
return
_key
.toString();
162
}
163
164
165
public
:
166
// /////////// (Boost) Serialisation support methods /////////
170
template
<
class
Archive>
171
void
serialize
(Archive& ar,
const
unsigned
int
iFileVersion);
172
173
private
:
181
void
serialisationImplementationExport()
const
;
182
void
serialisationImplementationImport();
183
184
185
protected
:
186
// ////////// Constructors and destructors /////////
190
Inventory
(
const
Key_T
&);
191
195
virtual
~Inventory
();
196
197
private
:
201
Inventory
();
205
Inventory
(
const
Inventory
&);
206
207
208
protected
:
209
// ////////// Attributes /////////
213
Key_T
_key
;
214
218
BomAbstract
*
_parent
;
219
223
AirlineFeature
*
_airlineFeature
;
224
228
HolderMap_T
_holderMap
;
229
};
230
231
}
232
#endif
// __STDAIR_BOM_INVENTORY_HPP
233
BasConst_Inventory.hpp
AirlineFeature.hpp
BomAbstract.hpp
InventoryKey.hpp
InventoryTypes.hpp
stdair_inventory_types.hpp
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::AirlineCode_T
std::string AirlineCode_T
Definition
stdair_basic_types.hpp:31
boost
Forward declarations.
Definition
AirlineClassList.hpp:16
boost::serialization
Definition
AirlineClassList.hpp:17
boost::archive
Definition
FlightDate.hpp:21
boost::archive::detail
Definition
FlightDate.hpp:22
stdair::ForecastingMethod::EN_ForecastingMethod
EN_ForecastingMethod
Definition
ForecastingMethod.hpp:17
stdair::OptimisationMethod::EN_OptimisationMethod
EN_OptimisationMethod
Definition
OptimisationMethod.hpp:17
stdair::PartnershipTechnique::EN_PartnershipTechnique
EN_PartnershipTechnique
Definition
PartnershipTechnique.hpp:19
stdair::PreOptimisationMethod::EN_PreOptimisationMethod
EN_PreOptimisationMethod
Definition
PreOptimisationMethod.hpp:17
stdair::UnconstrainingMethod::EN_UnconstrainingMethod
EN_UnconstrainingMethod
Definition
UnconstrainingMethod.hpp:17
stdair::AirlineFeature
Class representing various configuration parameters (e.g., revenue management methods such EMSRb or M...
Definition
AirlineFeature.hpp:25
stdair::BomAbstract::BomAbstract
BomAbstract()
Definition
BomAbstract.hpp:53
boost::archive::detail::heap_allocation
Definition
FlightDate.hpp:24
stdair::FlightDate
Class representing the actual attributes for an airline flight-date.
Definition
FlightDate.hpp:42
stdair::FlightDateKey
Key of a given flight-date, made of a flight number and a departure date.
Definition
FlightDateKey.hpp:28
stdair::Inventory
Class representing the actual attributes for an airline inventory.
Definition
Inventory.hpp:41
stdair::Inventory::_airlineFeature
AirlineFeature * _airlineFeature
Definition
Inventory.hpp:223
stdair::Inventory::getAirlineFeature
AirlineFeature * getAirlineFeature() const
Definition
Inventory.hpp:120
stdair::Inventory::getParent
BomAbstract *const getParent() const
Definition
Inventory.hpp:84
stdair::Inventory::getAirlineCode
const AirlineCode_T & getAirlineCode() const
Definition
Inventory.hpp:64
stdair::Inventory::getKey
const Key_T & getKey() const
Definition
Inventory.hpp:59
stdair::Inventory::_key
Key_T _key
Definition
Inventory.hpp:213
stdair::Inventory::getFlightDate
FlightDate * getFlightDate(const std::string &iFlightDateKeyStr) const
Definition
Inventory.cpp:50
stdair::Inventory::_holderMap
HolderMap_T _holderMap
Definition
Inventory.hpp:228
stdair::Inventory::toString
std::string toString() const
Definition
Inventory.cpp:42
stdair::Inventory::fromStream
void fromStream(std::istream &ioIn)
Definition
Inventory.hpp:149
stdair::Inventory::getUnconstrainingMethod
UnconstrainingMethod::EN_UnconstrainingMethod getUnconstrainingMethod() const
Definition
Inventory.cpp:71
stdair::Inventory::getHolderMap
const HolderMap_T & getHolderMap() const
Definition
Inventory.hpp:89
stdair::Inventory::describeKey
const std::string describeKey() const
Definition
Inventory.hpp:160
stdair::Inventory::Inventory
Inventory(const Key_T &)
Definition
Inventory.cpp:31
stdair::Inventory::getOptimisationMethod
OptimisationMethod::EN_OptimisationMethod getOptimisationMethod() const
Definition
Inventory.cpp:85
stdair::Inventory::~Inventory
virtual ~Inventory()
Definition
Inventory.cpp:38
stdair::Inventory::getForecastingMethod
ForecastingMethod::EN_ForecastingMethod getForecastingMethod() const
Definition
Inventory.cpp:64
stdair::Inventory::serialize
void serialize(Archive &ar, const unsigned int iFileVersion)
Definition
CmdBomSerialiser.cpp:160
stdair::Inventory::toStream
void toStream(std::ostream &ioOut) const
Definition
Inventory.hpp:140
stdair::Inventory::FacBom
friend class FacBom
Definition
Inventory.hpp:42
stdair::Inventory::FacCloneBom
friend class FacCloneBom
Definition
Inventory.hpp:43
stdair::Inventory::access
friend class boost::serialization::access
Definition
Inventory.hpp:45
stdair::Inventory::FacBomManager
friend class FacBomManager
Definition
Inventory.hpp:44
stdair::Inventory::getPartnershipTechnique
PartnershipTechnique::EN_PartnershipTechnique getPartnershipTechnique() const
Definition
Inventory.cpp:92
stdair::Inventory::_parent
BomAbstract * _parent
Definition
Inventory.hpp:218
stdair::Inventory::Key_T
InventoryKey Key_T
Definition
Inventory.hpp:53
stdair::Inventory::getPreOptimisationMethod
PreOptimisationMethod::EN_PreOptimisationMethod getPreOptimisationMethod() const
Definition
Inventory.cpp:78
stdair::InventoryKey
Key of a given inventory, made of the airline code.
Definition
InventoryKey.hpp:26
Generated for StdAir by
1.17.0