StdAir Logo  1.00.0
C++ Standard Airline IT Object Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
stdair::BomRoot Class Reference

Class representing the actual attributes for the Bom root. More...

#include <stdair/bom/BomRoot.hpp>

+ Inheritance diagram for stdair::BomRoot:

List of all members.

Public Types

typedef BomRootKey Key_T

Public Member Functions

const Key_TgetKey () const
const HolderMap_TgetHolderMap () const
const FRAT5Curve_TgetFRAT5Curve (const std::string &iKey) const
const FFDisutilityCurve_TgetFFDisutilityCurve (const std::string &iKey) const
InventorygetInventory (const std::string &iInventoryKeyStr) const
InventorygetInventory (const InventoryKey &) const
void addFRAT5Curve (const std::string &iKey, const FRAT5Curve_T &iCurve)
void addFFDisutilityCurve (const std::string &iKey, const FFDisutilityCurve_T &iCurve)
void toStream (std::ostream &ioOut) const
void fromStream (std::istream &ioIn)
std::string toString () const
const std::string describeKey () const
template<class Archive >
void serialize (Archive &ar, const unsigned int iFileVersion)

Protected Member Functions

 BomRoot ()
 BomRoot (const BomRoot &)
 BomRoot (const Key_T &iKey)
 ~BomRoot ()

Protected Attributes

Key_T _key
HolderMap_T _holderMap
FRAT5CurveHolderStruct _frat5CurveHolder
FFDisutilityCurveHolderStruct _ffDisutilityCurveHolder

Friends

class FacBom
class FacCloneBom
class FacBomManager
class boost::serialization::access

Detailed Description

Class representing the actual attributes for the Bom root.

Definition at line 32 of file BomRoot.hpp.


Member Typedef Documentation

Definition allowing to retrieve the associated BOM key type.

Definition at line 42 of file BomRoot.hpp.


Constructor & Destructor Documentation

stdair::BomRoot::BomRoot ( )
protected

Default constructor.

Definition at line 17 of file BomRoot.cpp.

stdair::BomRoot::BomRoot ( const BomRoot iBomRoot)
protected

Copy constructor.

Definition at line 22 of file BomRoot.cpp.

stdair::BomRoot::BomRoot ( const Key_T iKey)
protected

Main constructor.

Definition at line 28 of file BomRoot.cpp.

stdair::BomRoot::~BomRoot ( )
protected

Destructor.

Definition at line 32 of file BomRoot.cpp.


Member Function Documentation

const Key_T& stdair::BomRoot::getKey ( ) const
inline

Get the inventory key (airline code).

Definition at line 48 of file BomRoot.hpp.

References _key.

const HolderMap_T& stdair::BomRoot::getHolderMap ( ) const
inline

Get the map of children.

Definition at line 53 of file BomRoot.hpp.

References _holderMap.

const FRAT5Curve_T& stdair::BomRoot::getFRAT5Curve ( const std::string &  iKey) const
inline

Get the FRAT5 curve corresponding to the given key.

Definition at line 58 of file BomRoot.hpp.

References _frat5CurveHolder, and stdair::FRAT5CurveHolderStruct::getFRAT5Curve().

const FFDisutilityCurve_T& stdair::BomRoot::getFFDisutilityCurve ( const std::string &  iKey) const
inline

Get the FFDisutility curve corresponding to the given key.

Definition at line 63 of file BomRoot.hpp.

References _ffDisutilityCurveHolder, and stdair::FFDisutilityCurveHolderStruct::getFFDisutilityCurve().

Inventory * stdair::BomRoot::getInventory ( const std::string &  iInventoryKeyStr) const

Get a pointer on the Inventory object corresponding to the given key.

Note:
The Inventory object can be inherited from, if needed. In that case, a dynamic_cast<> may be needed.
Parameters:
conststd::string& The flight-date key.
Returns:
Inventory* Found Inventory object. NULL if not found.

Definition at line 43 of file BomRoot.cpp.

Referenced by getInventory(), stdair::BomRetriever::retrieveInventoryFromKey(), and stdair::BomRetriever::retrieveInventoryFromLongKey().

Inventory * stdair::BomRoot::getInventory ( const InventoryKey iInventoryKey) const

Get a pointer on the Inventory object corresponding to the given key.

Note:
The Inventory object can be inherited from, if needed. In that case, a dynamic_cast<> may be needed.
Parameters:
constInventoryKey& The flight-date key
Returns:
Inventory* Found Inventory object. NULL if not found.

Definition at line 50 of file BomRoot.cpp.

References getInventory(), and stdair::InventoryKey::toString().

void stdair::BomRoot::addFRAT5Curve ( const std::string &  iKey,
const FRAT5Curve_T iCurve 
)
inline

Add a new FRAT5 curve to the holder.

Definition at line 93 of file BomRoot.hpp.

References _frat5CurveHolder, and stdair::FRAT5CurveHolderStruct::addCurve().

void stdair::BomRoot::addFFDisutilityCurve ( const std::string &  iKey,
const FFDisutilityCurve_T iCurve 
)
inline

Add a new FF disutility curve to the holder.

Definition at line 98 of file BomRoot.hpp.

References _ffDisutilityCurveHolder, and stdair::FFDisutilityCurveHolderStruct::addCurve().

void stdair::BomRoot::toStream ( std::ostream &  ioOut) const
inlinevirtual

Dump a Business Object into an output stream.

Parameters:
ostream&the output stream.

Implements stdair::BomAbstract.

Definition at line 111 of file BomRoot.hpp.

References toString().

void stdair::BomRoot::fromStream ( std::istream &  ioIn)
inlinevirtual

Read a Business Object from an input stream.

Parameters:
istream&the input stream.

Implements stdair::BomAbstract.

Definition at line 120 of file BomRoot.hpp.

std::string stdair::BomRoot::toString ( ) const
virtual

Get the serialised version of the Business Object.

Implements stdair::BomAbstract.

Definition at line 36 of file BomRoot.cpp.

References _key, and stdair::BomRootKey::toString().

Referenced by toStream().

const std::string stdair::BomRoot::describeKey ( ) const
inline

Get a string describing the key.

Definition at line 131 of file BomRoot.hpp.

References _key, and stdair::BomRootKey::toString().

template<class Archive >
void stdair::BomRoot::serialize ( Archive &  ar,
const unsigned int  iFileVersion 
)

Serialisation.

That method is used both for serialisation a BOM tree (into a backup file/stream), as well as re-instantiating a BOM tree from a back-up file/stream.

Note:
The implementation of that method is to be found in the CmdBomSerialiser command.

Definition at line 133 of file CmdBomSerialiser.cpp.

References _key.


Friends And Related Function Documentation

friend class FacBom
friend

Definition at line 33 of file BomRoot.hpp.

friend class FacCloneBom
friend

Definition at line 34 of file BomRoot.hpp.

friend class FacBomManager
friend

Definition at line 35 of file BomRoot.hpp.

friend class boost::serialization::access
friend

Definition at line 36 of file BomRoot.hpp.


Member Data Documentation

Key_T stdair::BomRoot::_key
protected

Primary key.

Definition at line 191 of file BomRoot.hpp.

Referenced by describeKey(), getKey(), serialize(), and toString().

HolderMap_T stdair::BomRoot::_holderMap
protected

Map holding the children (Inventory objects).

Definition at line 196 of file BomRoot.hpp.

Referenced by getHolderMap().

FRAT5CurveHolderStruct stdair::BomRoot::_frat5CurveHolder
protected

Holder of FRAT5 curves.

Definition at line 201 of file BomRoot.hpp.

Referenced by addFRAT5Curve(), and getFRAT5Curve().

FFDisutilityCurveHolderStruct stdair::BomRoot::_ffDisutilityCurveHolder
protected

Holder of fare family disutility curves.

Definition at line 206 of file BomRoot.hpp.

Referenced by addFFDisutilityCurve(), and getFFDisutilityCurve().


The documentation for this class was generated from the following files: