$treeview $search $mathjax
AirInv Logo  1.00.0
$projectbrief
$projectbrief
$searchbox

SegmentCabinHelper.hpp

Go to the documentation of this file.
00001 #ifndef __AIRINV_BOM_SEGMENTCABINHELPER_HPP
00002 #define __AIRINV_BOM_SEGMENTCABINHELPER_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // StdAir
00008 #include <stdair/stdair_basic_types.hpp>
00009 #include <stdair/bom/FareFamilyTypes.hpp>
00010 
00011 // Forward declarations
00012 namespace stdair {
00013   class FlightDate;
00014   class SegmentCabin;
00015   class FareFamily;
00016   class Policy;
00017 }
00018 
00019 namespace AIRINV {
00020 
00025   class SegmentCabinHelper {
00026   public:
00027     // ////////// Business Methods /////////
00031     static void updateFromReservation (const stdair::FlightDate&,
00032                                        stdair::SegmentCabin&,
00033                                        const stdair::PartySize_T&);
00034 
00038     static void buildPseudoBidPriceVector (stdair::SegmentCabin&);
00039 
00043     static void updateBookingControlsUsingPseudoBidPriceVector (const stdair::SegmentCabin&);
00044 
00047     static void updateAUs (const stdair::SegmentCabin&);
00048 
00051     static void updateAvailabilities (const stdair::SegmentCabin&);
00052     
00056     static void initialiseAU (stdair::SegmentCabin&);
00057 
00061     static void initYieldBasedNestingStructure (stdair::SegmentCabin&);
00062 
00066     static void initListOfUsablePolicies (stdair::SegmentCabin&);
00067 
00068   private:    
00072     static void createPolicies (stdair::SegmentCabin&,
00073                                 const stdair::FareFamilyList_T&,
00074                                 const stdair::FareFamilyList_T::const_iterator&,
00075                                 stdair::Policy&, unsigned int&,
00076                                 const stdair::Yield_T&);
00077   };
00078 
00079 }
00080 #endif // __AIRINV_BOM_SEGMENTCABINHELPER_HPP