$treeview $search $mathjax
00001 // ////////////////////////////////////////////////////////////////////// 00002 // Import section 00003 // ////////////////////////////////////////////////////////////////////// 00004 // STL 00005 #include <cassert> 00006 // StdAir 00007 #include <stdair/bom/BomManager.hpp> 00008 #include <stdair/bom/BomRoot.hpp> 00009 #include <stdair/factory/FacBomManager.hpp> 00010 #include <stdair/service/Logger.hpp> 00011 // AirInv 00012 #include <airinv/bom/DCPEventStruct.hpp> 00013 #include <airinv/command/DCPEventGenerator.hpp> 00014 00015 namespace AIRINV { 00016 00017 // ////////////////////////////////////////////////////////////////////// 00018 void DCPEventGenerator:: 00019 createDCPEvent (stdair::BomRoot& ioBomRoot, 00020 DCPEventStruct& iDCPEventStruct) { 00021 00022 // Set the airport-pair primary key. 00023 /* 00024 const stdair::AirportCode_T& lBoardPoint = iDCPEventStruct._origin; 00025 const stdair::AirportCode_T& lOffPoint = iDCPEventStruct._destination; 00026 */ 00027 00028 // Set the DCP date-period primary key. 00029 const stdair::Date_T& lDateRangeStart = iDCPEventStruct._dateRangeStart; 00030 const stdair::Date_T& lDateRangeEnd = iDCPEventStruct._dateRangeEnd; 00031 const stdair::DatePeriod_T lDatePeriod (lDateRangeStart, lDateRangeEnd); 00032 00033 // Set the DCP time-period primary key. 00034 /* 00035 const stdair::Time_T& lTimeRangeStart = iDCPEventStruct._timeRangeStart; 00036 const stdair::Time_T& lTimeRangeEnd = iDCPEventStruct._timeRangeEnd; 00037 */ 00038 00039 // Generate the DCPEvent 00040 const stdair::DayDuration_T& lAdvancePurchase = 00041 iDCPEventStruct._advancePurchase; 00042 const stdair::SaturdayStay_T& lSaturdayStay = iDCPEventStruct._saturdayStay; 00043 const stdair::ChangeFees_T& lChangeFees = iDCPEventStruct._changeFees; 00044 const stdair::NonRefundable_T& lNonRefundable = 00045 iDCPEventStruct._nonRefundable; 00046 const stdair::DayDuration_T& lMinimumStay = iDCPEventStruct._minimumStay; 00047 const stdair::Fare_T& lDCP = iDCPEventStruct._DCP; 00048 00049 // Generate Segment Features and link them to their DCPEvent 00050 stdair::ClassList_StringList_T::const_iterator lItCurrentClassCodeList = 00051 iDCPEventStruct._classCodeList.begin(); 00052 00053 const unsigned int lAirlineListSize = iDCPEventStruct.getAirlineListSize(); 00054 const unsigned int lClassCodeListSize = 00055 iDCPEventStruct.getClassCodeListSize(); 00056 assert (lAirlineListSize == lClassCodeListSize); 00057 00058 iDCPEventStruct.beginClassCode(); 00059 for (iDCPEventStruct.beginAirline(); 00060 iDCPEventStruct.hasNotReachedEndAirline(); 00061 iDCPEventStruct.iterateAirline()) { 00062 /* 00063 const stdair::AirlineCode_T& lAirlineCode = 00064 iDCPEventStruct.getCurrentAirlineCode(); 00065 const std::string& lClassCodeList = iDCPEventStruct.getCurrentClassCode(); 00066 iDCPEventStruct.iterateClassCode(); 00067 */ 00068 } 00069 } 00070 00071 } 00072