AirInv Logo  1.00.7
C++ Simulated Airline Inventory Management System Library
Loading...
Searching...
No Matches
InventoryGenerator.hpp
Go to the documentation of this file.
1#ifndef __AIRINV_CMD_INVENTORYGENERATOR_HPP
2#define __AIRINV_CMD_INVENTORYGENERATOR_HPP
3
4// //////////////////////////////////////////////////////////////////////
5// Import section
6// //////////////////////////////////////////////////////////////////////
7// StdAir
8#include <stdair/command/CmdAbstract.hpp>
9// Airinv
11
13namespace stdair {
14 class BomRoot;
15 class Inventory;
16 class FlightDate;
17 class LegDate;
18 class LegCabin;
19 class SegmentDate;
20 class SegmentCabin;
21 class FareFamily;
22}
23
24namespace AIRINV {
25
26 // Forward declarations
27 struct FlightPeriodStruct;
28 struct LegStruct;
29 struct SegmentStruct;
30 struct LegCabinStruct;
31 struct SegmentCabinStruct;
32 struct FareFamilyStruct;
33 struct BucketStruct;
34 namespace ScheduleParserHelper {
35 struct doEndFlight;
36 }
37
42 class InventoryGenerator : public stdair::CmdAbstract {
51 friend class ScheduleParser;
52
53 private:
58 static void createFlightDate (stdair::BomRoot&,
59 const FlightPeriodStruct&);
60
64 static void createFlightDate (stdair::BomRoot&, stdair::Inventory&,
65 const stdair::Date_T&,
66 const FlightPeriodStruct&);
67
71 static void createRoutingLegKey (stdair::FlightDate&);
72
76 static stdair::LegDate& createLegDate (stdair::FlightDate&,
77 const stdair::Date_T&,
78 const LegStruct&);
79
83 static void createLegCabin (stdair::LegDate&, const LegCabinStruct&);
84
88 static void createBucket (stdair::LegCabin&, const BucketStruct&);
89
93 static void createSegmentDate (stdair::BomRoot&, stdair::FlightDate&,
94 const SegmentStruct&);
95
99 static void createSegmentCabin (stdair::BomRoot&, stdair::SegmentDate&,
100 const SegmentCabinStruct&);
101
105 static void createFareFamily (stdair::BomRoot&, stdair::SegmentCabin&,
106 const FareFamilyStruct&);
107
111 static void createClass (stdair::FareFamily&,
112 const stdair::ClassCode_T&);
113
117 static void createDisplayNestingStructure (stdair::SegmentCabin&);
118 };
119
120}
121#endif // __AIRINV_CMD_INVENTORYGENERATOR_HPP
Class handling the generation / instantiation of the Inventory BOM.
Class wrapping the parser entry point.
Forward declarations.
Utility Structure for the parsing of Bucket structures.
Utility Structure for the parsing of fare family details.
Utility Structure for the parsing of SegmentCabin details.