$treeview $search $mathjax
TravelCCM Logo  1.00.2
$projectbrief
$projectbrief
$searchbox

ChoiceManager.cpp

Go to the documentation of this file.
00001 // //////////////////////////////////////////////////////////////////////
00002 // Import section
00003 // //////////////////////////////////////////////////////////////////////
00004 // STL
00005 #include <cassert>
00006 // StdAir
00007 #include <stdair/bom/TravelSolutionStruct.hpp>
00008 #include <stdair/bom/BookingRequestStruct.hpp>
00009 // TravelCCM
00010 #include <travelccm/bom/CustomerChoiceModel.hpp>
00011 #include <travelccm/command/ChoiceManager.hpp>
00012 
00013 namespace TRAVELCCM {
00014 
00015   // ////////////////////////////////////////////////////////////////////
00016   const stdair::TravelSolutionStruct* ChoiceManager::
00017   chooseTravelSolution (stdair::TravelSolutionList_T& ioTravelSolutionList,
00018                         const stdair::BookingRequestStruct& iBookingRequest,
00019                         const stdair::PassengerChoiceModel::EN_PassengerChoiceModel& iPassengerChoiceModel) { 
00020 
00021     const CustomerChoiceModel* lCustomerChoiceModel = 
00022       CustomerChoiceModel::create (iPassengerChoiceModel);
00023   
00024     // Return the adequate travel solution according to the chosen passenger 
00025     // choice model
00026     const stdair::TravelSolutionStruct* oTravelSolution_ptr = 
00027       lCustomerChoiceModel->chooseTravelSolution (ioTravelSolutionList,
00028                                                   iBookingRequest);
00029 
00030     return oTravelSolution_ptr;
00031   }
00032 
00033 }