StdAir Logo  0.45.1
C++ Standard Airline IT Object Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TimePeriod.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_BOM_FARETIMEPERIOD_HPP
2 #define __STDAIR_BOM_FARETIMEPERIOD_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STDAIR
11 
12 // Forward declaration
13 namespace stdair {
14 
18  class TimePeriod : public BomAbstract {
19  template <typename BOM> friend class FacBom;
20  friend class FacBomManager;
21 
22  public:
23  // //////////// Type definitions //////////////
28 
29  public:
30  // /////////// Display support methods /////////
31  // /////////// Display support methods /////////
37  void toStream (std::ostream& ioOut) const {
38  ioOut << toString();
39  }
40 
46  void fromStream (std::istream& ioIn) {
47  }
48 
52  std::string toString() const;
53 
57  const std::string describeKey() const {
58  return _key.toString();
59  }
60 
61  public:
62  // ////////// Getters ////////////
66  const Key_T& getKey() const {
67  return _key;
68  }
69 
73  BomAbstract* const getParent() const {
74  return _parent;
75  }
76 
80  const HolderMap_T& getHolderMap() const {
81  return _holderMap;
82  }
83 
87  const Time_T& getTimeRangeStart() const {
88  return _key.getTimeRangeStart();
89  }
90 
94  const Time_T& getTimeRangeEnd() const {
95  return _key.getTimeRangeEnd();
96  }
97 
98  public:
99  // ////////////// Business methods ///////////////
104  bool isDepartureTimeValid (const Time_T&) const;
105 
106  protected:
107  // ////////// Constructors and destructors /////////
111  TimePeriod (const Key_T&);
115  virtual ~TimePeriod();
116 
117  private:
121  TimePeriod();
125  TimePeriod (const TimePeriod&);
126 
127  protected:
128  // ///////////// Attributes /////////////
133 
138 
143 
144  };
145 
146 }
147 #endif // __STDAIR_BOM_FARETIMEPERIOD_HPP
148