AirRAC Logo  1.00.11
C++ Simulated Revenue Accounting (RAC) System Library
Loading...
Searching...
No Matches
YieldRuleGenerator.hpp
Go to the documentation of this file.
1#ifndef __AIRRAC_CMD_YIELDRULEGENERATOR_HPP
2#define __AIRRAC_CMD_YIELDRULEGENERATOR_HPP
3
4// //////////////////////////////////////////////////////////////////////
5// Import section
6// //////////////////////////////////////////////////////////////////////
7// StdAir
8#include <stdair/command/CmdAbstract.hpp>
9// AirRAC
11
12namespace stdair {
13 class BomRoot;
14 class YieldRule;
15 class AirportPair;
16 class DatePeriod;
17 class PosChannel;
18 class TimePeriod;
19 class YieldFeatures;
20 class AirlineClassList;
21}
22
23namespace AIRRAC {
24
25 // Forward declarations
26 struct YieldRuleStruct;
27 namespace YieldParserHelper {
28 struct doEndYield;
29 }
30
32 class YieldRuleGenerator : public stdair::CmdAbstract {
33 // Only the following class may use methods of YieldGenerator.
34 // Indeed, as those methods build the BOM, it is not good to expose
35 // them public.
36 friend class YieldFileParser;
38 friend class YieldParser;
39
40 private:
41
50 static void createAirportPair (stdair::BomRoot&,
51 const YieldRuleStruct&);
52
61 static void createDateRange (stdair::AirportPair&,
62 const YieldRuleStruct&);
63
72 static void createPOSChannel (stdair::DatePeriod&,
73 const YieldRuleStruct&);
74
83 static void createTimeRange (stdair::PosChannel&,
84 const YieldRuleStruct&);
85
94 static void createYieldFeatures (stdair::TimePeriod&,
95 const YieldRuleStruct&);
96
105 static void createAirlineClassList (stdair::YieldFeatures&,
106 const YieldRuleStruct&);
107
108
109 };
110
111}
112#endif // __AIRRAC_CMD_YIELDRULEGENERATOR_HPP
Forward declarations.
Utility Structure for the parsing of Flight-Date structures.