9 #include <stdair/basic/BasConst_General.hpp> 10 #include <stdair/basic/BasConst_Inventory.hpp> 11 #include <stdair/basic/RandomGeneration.hpp> 12 #include <stdair/bom/BomManager.hpp> 13 #include <stdair/bom/FlightDate.hpp> 14 #include <stdair/bom/SegmentDate.hpp> 15 #include <stdair/bom/SegmentCabin.hpp> 16 #include <stdair/bom/SegmentSnapshotTable.hpp> 17 #include <stdair/bom/BookingClass.hpp> 18 #include <stdair/service/Logger.hpp> 31 const stdair::PreOptimisationMethod& iPreOptimisationMethod) {
32 bool isSucceeded =
true;
33 const stdair::SegmentDateList_T& lSDList =
34 stdair::BomManager::getList<stdair::SegmentDate> (ioFlightDate);
35 for (stdair::SegmentDateList_T::const_iterator itSD = lSDList.begin();
36 itSD != lSDList.end(); ++itSD) {
37 stdair::SegmentDate* lSD_ptr = *itSD;
38 assert (lSD_ptr != NULL);
41 const stdair::SegmentCabinList_T& lSCList =
42 stdair::BomManager::getList<stdair::SegmentCabin> (*lSD_ptr);
43 for (stdair::SegmentCabinList_T::const_iterator itSC = lSCList.begin();
44 itSC != lSCList.end(); ++itSC) {
45 stdair::SegmentCabin* lSC_ptr = *itSC;
46 assert (lSC_ptr != NULL);
51 bool isPreOptimised =
preOptimise (*lSC_ptr, iPreOptimisationMethod);
52 if (isPreOptimised ==
false) {
64 const stdair::PreOptimisationMethod& iPreOptimisationMethod) {
65 const stdair::PreOptimisationMethod::EN_PreOptimisationMethod& lPreOptimisationMethod =
66 iPreOptimisationMethod.getMethod();
67 switch (lPreOptimisationMethod) {
68 case stdair::PreOptimisationMethod::NONE: {
71 case stdair::PreOptimisationMethod::FA: {
74 case stdair::PreOptimisationMethod::MRT: {
75 if (ioSegmentCabin.getFareFamilyStatus()==
false) {
static bool prepareDemandInput(stdair::SegmentCabin &)
static bool prepareDemandInput(const stdair::SegmentCabin &)
static bool preOptimise(stdair::FlightDate &, const stdair::PreOptimisationMethod &)
static bool adjustYield(const stdair::SegmentCabin &)