AirInv Logo  1.00.0
C++ Simulated Airline Inventory Management System library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FlightDateStruct.hpp
Go to the documentation of this file.
1 #ifndef __AIRINV_BOM_FLIGHTDATESTRUCT_HPP
2 #define __AIRINV_BOM_FLIGHTDATESTRUCT_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <string>
9 // StdAir
10 #include <stdair/stdair_inventory_types.hpp>
11 #include <stdair/basic/StructAbstract.hpp>
12 #include <stdair/bom/DoWStruct.hpp>
13 // AirInv
16 #include <airinv/bom/LegStruct.hpp>
23 
24 namespace AIRINV {
25 
27  struct FlightDateStruct : public stdair::StructAbstract {
28 
30  stdair::Date_T getDate() const;
31 
33  stdair::Duration_T getTime() const;
34 
36  const std::string describe() const;
37 
40  void addAirport (const stdair::AirportCode_T&);
41 
43  void buildSegments ();
44 
51  void addSegmentCabin (const SegmentStruct&,
52  const SegmentCabinStruct&);
53 
59  void addSegmentCabin (const SegmentCabinStruct&);
60 
67  void addFareFamily (const SegmentStruct&, const SegmentCabinStruct&,
68  const FareFamilyStruct&);
69 
76 
79 
80  // Attributes
81  stdair::AirlineCode_T _airlineCode;
82  stdair::FlightNumber_T _flightNumber;
83  stdair::Date_T _flightDate;
88 
90  unsigned int _itYear;
91  unsigned int _itMonth;
92  unsigned int _itDay;
94 
96  long _itHours;
97  long _itMinutes;
98  long _itSeconds;
99 
104 
111 
117  };
118 
119 }
120 #endif // __AIRINV_BOM_FLIGHTDATESTRUCT_HPP