AirRAC Logo  1.00.7
C++ Simulated Revenue Accounting (RAC) System Library
Loading...
Searching...
No Matches
AIRRAC_Service.hpp
Go to the documentation of this file.
1#ifndef __AIRRAC_SVC_AIRRAC_SERVICE_HPP
2#define __AIRRAC_SVC_AIRRAC_SERVICE_HPP
3
4// //////////////////////////////////////////////////////////////////////
5// Import section
6// //////////////////////////////////////////////////////////////////////
7// StdAir
8#include <stdair/stdair_basic_types.hpp>
9#include <stdair/stdair_service_types.hpp>
10#include <stdair/bom/TravelSolutionTypes.hpp>
11// AirRAC
13
14// Forward declarations.
15namespace stdair {
16 class STDAIR_Service;
17 class BomRoot;
18 struct BasLogParams;
19 struct BasDBParams;
20}
21
22namespace AIRRAC {
23
26
31 public:
32 // ////////////////// Constructors and Destructors //////////////////
33
45 AIRRAC_Service (const stdair::BasLogParams&);
46
59 AIRRAC_Service (const stdair::BasLogParams&, const stdair::BasDBParams&);
60
76 AIRRAC_Service (stdair::STDAIR_ServicePtr_T ioSTDAIR_ServicePtr);
77
86 void parseAndLoad (const YieldFilePath& iYieldFilename);
87
88
93
94
95 public:
96 // /////////// Business Methods /////////////
100 void calculateYields (stdair::TravelSolutionList_T&);
101
105 void updateYields(stdair::BomRoot&);
106
113 void buildSampleBom();
114
118 void clonePersistentBom();
119
124 void buildComplementaryLinks (stdair::BomRoot&);
125
143 void buildSampleTravelSolutions (stdair::TravelSolutionList_T&);
144
145
146 public:
147 // //////////////// Display support methods /////////////////
155 std::string csvDisplay() const;
156
164 std::string csvDisplay (const stdair::TravelSolutionList_T&) const;
165
166
167 private:
168 // /////// Construction and Destruction helper methods ///////
173
178
183 void initServiceContext();
184
194 stdair::STDAIR_ServicePtr_T initStdAirService (const stdair::BasLogParams&,
195 const stdair::BasDBParams&);
196
205 stdair::STDAIR_ServicePtr_T initStdAirService (const stdair::BasLogParams&);
206
215 void addStdAirService (stdair::STDAIR_ServicePtr_T,
216 const bool iOwnStdairService);
217
224 void initAirracService();
225
234 void initAirracService (const YieldFilePath& iYieldFilename);
235
239 void finalise();
240
241
242 private:
243 // ///////// Service Context /////////
247 AIRRAC_ServiceContext* _airracServiceContext;
248 };
249}
250#endif // __AIRRAC_SVC_AIRRAC_SERVICE_HPP
Inner class holding the context for the AIRRAC Service object.
Interface for the AIRRAC Services.
void buildComplementaryLinks(stdair::BomRoot &)
void updateYields(stdair::BomRoot &)
std::string csvDisplay() const
void buildSampleTravelSolutions(stdair::TravelSolutionList_T &)
void parseAndLoad(const YieldFilePath &iYieldFilename)
void calculateYields(stdair::TravelSolutionList_T &)
Forward declarations.