1 #ifndef __TRADEMGEN_SVC_TRADEMGENSERVICECONTEXT_HPP
2 #define __TRADEMGEN_SVC_TRADEMGENSERVICECONTEXT_HPP
10 #include <boost/shared_ptr.hpp>
12 #include <stdair/stdair_basic_types.hpp>
13 #include <stdair/stdair_service_types.hpp>
14 #include <stdair/basic/RandomGeneration.hpp>
15 #include <stdair/bom/BookingRequestTypes.hpp>
16 #include <stdair/service/ServiceAbstract.hpp>
18 #include <sevmgr/SEVMGR_Types.hpp>
25 struct DemandCharacteristics;
26 struct DemandDistribution;
48 stdair::STDAIR_ServicePtr_T getSTDAIR_ServicePtr()
const {
49 return _stdairService;
55 stdair::STDAIR_Service& getSTDAIR_Service()
const {
56 assert (_stdairService != NULL);
57 return *_stdairService;
63 const bool getOwnStdairServiceFlag()
const {
64 return _ownStdairService;
70 stdair::RandomGeneration& getUniformGenerator() {
71 return _uniformGenerator;
78 return _posProbabilityMass;
84 SEVMGR::SEVMGR_ServicePtr_T getSEVMGR_ServicePtr()
const {
85 return _sevmgrService;
91 SEVMGR::SEVMGR_Service& getSEVMGR_Service()
const {
92 assert (_sevmgrService != NULL);
93 return *_sevmgrService;
102 void setSTDAIR_Service (stdair::STDAIR_ServicePtr_T ioSTDAIR_ServicePtr,
103 const bool iOwnStdairService) {
104 _stdairService = ioSTDAIR_ServicePtr;
105 _ownStdairService = iOwnStdairService;
111 void setSEVMGR_Service (SEVMGR::SEVMGR_ServicePtr_T ioSEVMGR_ServicePtr) {
112 _sevmgrService = ioSEVMGR_ServicePtr;
121 const std::string shortDisplay()
const;
126 const std::string display()
const;
131 const std::string describe()
const;
139 TRADEMGEN_ServiceContext (
const stdair::RandomSeed_T&);
143 TRADEMGEN_ServiceContext();
147 TRADEMGEN_ServiceContext (
const TRADEMGEN_ServiceContext&);
152 ~TRADEMGEN_ServiceContext();
165 stdair::STDAIR_ServicePtr_T _stdairService;
170 SEVMGR::SEVMGR_ServicePtr_T _sevmgrService;
175 bool _ownStdairService;
186 stdair::RandomGeneration _uniformGenerator;
195 #endif // __TRADEMGEN_SVC_TRADEMGENSERVICECONTEXT_HPP