StdAir Logo  1.00.8
C++ Standard Airline IT Object Library
ClassAvailabilityStruct.cpp
Go to the documentation of this file.
1 // //////////////////////////////////////////////////////////////////////
2 // Import section
3 // //////////////////////////////////////////////////////////////////////
4 // STL
5 #include <cassert>
6 #include <sstream>
7 // StdAir
9 
10 namespace stdair {
11 
12  // ////////////////////////////////////////////////////////////////////
14  }
15 
16  // ////////////////////////////////////////////////////////////////////
18  }
19 
20  // ////////////////////////////////////////////////////////////////////
23  : _classAvailabilityStruct (iClassAvlStruct._classAvailabilityStruct) {
24  }
25 
26  // ////////////////////////////////////////////////////////////////////
29  : _classAvailabilityStruct (iClassAvlMap) {
30  }
31 
32  // ////////////////////////////////////////////////////////////////////
33  void ClassAvailabilityStruct::toStream (std::ostream& ioOut) const {
34  ioOut << describe();
35  }
36 
37  // ////////////////////////////////////////////////////////////////////
38  void ClassAvailabilityStruct::fromStream (std::istream& ioIn) {
39  }
40 
41  // ////////////////////////////////////////////////////////////////////
42  const std::string ClassAvailabilityStruct::describe() const {
43  std::ostringstream oStr;
44 
45  // List (map) of booking class availabilities
46  unsigned short jdx = 0;
47  for (ClassAvailabilityMap_T::const_iterator itClass =
48  _classAvailabilityStruct.begin();
49  itClass != _classAvailabilityStruct.end(); ++itClass, ++jdx) {
50  if (jdx != 0) {
51  oStr << " ";
52  }
53  const ClassCode_T& lClassCode = itClass->first;
54  const Availability_T& lAvl = itClass->second;
55  oStr << lClassCode << ":" << lAvl;
56  }
57 
58  return oStr.str();
59  }
60 
61  // ////////////////////////////////////////////////////////////////////
62  const std::string ClassAvailabilityStruct::display() const {
63  const std::string oString = describe();
64  return oString;
65  }
66 
67 }
stdair::ClassAvailabilityMap_T
std::map< const ClassCode_T, Availability_T > ClassAvailabilityMap_T
Definition: ClassAvailabilityStruct.hpp:21
ClassAvailabilityStruct.hpp
stdair::ClassAvailabilityStruct
Structure holding the elements of a travel solution.
Definition: ClassAvailabilityStruct.hpp:32
stdair::ClassAvailabilityStruct::display
const std::string display() const
Definition: ClassAvailabilityStruct.cpp:62
stdair::ClassAvailabilityStruct::fromStream
void fromStream(std::istream &ioIn)
Definition: ClassAvailabilityStruct.cpp:38
stdair::ClassCode_T
std::string ClassCode_T
Definition: stdair_basic_types.hpp:57
stdair::ClassAvailabilityStruct::ClassAvailabilityStruct
ClassAvailabilityStruct()
Definition: ClassAvailabilityStruct.cpp:13
stdair
Handle on the StdAir library context.
Definition: BasChronometer.cpp:9
stdair::ClassAvailabilityStruct::~ClassAvailabilityStruct
~ClassAvailabilityStruct()
Definition: ClassAvailabilityStruct.cpp:17
stdair::ClassAvailabilityStruct::describe
const std::string describe() const
Definition: ClassAvailabilityStruct.cpp:42
stdair::ClassAvailabilityStruct::toStream
void toStream(std::ostream &ioOut) const
Definition: ClassAvailabilityStruct.cpp:33
stdair::Availability_T
double Availability_T
Definition: stdair_basic_types.hpp:123