$treeview $search $mathjax
RMOL Logo  1.00.1
$projectbrief
$projectbrief
$searchbox

rmol/bom/PolicyHelper.hpp

Go to the documentation of this file.
00001 #ifndef __RMOL_BOM_POLICYHELPER_HPP
00002 #define __RMOL_BOM_POLICYHELPER_HPP
00003 // //////////////////////////////////////////////////////////////////////
00004 // Import section
00005 // //////////////////////////////////////////////////////////////////////
00006 // StdAir
00007 #include <stdair/stdair_inventory_types.hpp>
00008 #include <stdair/bom/PolicyTypes.hpp>
00009 #include <stdair/bom/BookingClassTypes.hpp>
00010 #include <stdair/bom/FareFamilyTypes.hpp>
00011 // RMOL
00012 #include <rmol/RMOL_Types.hpp>
00013 
00014 // Forward declarations
00015 namespace stdair {
00016   class SegmentCabin;
00017   class Policy;
00018   class FareFamily;
00019   class BookingClass;
00020   class NestingNode;
00021 }
00022 
00023 namespace RMOL {
00024 
00028   class PolicyHelper {
00029   public:
00030     
00035     static void
00036     diffBetweenTwoPolicies (stdair::NestingNode&, const stdair::Policy&,
00037                             const stdair::Policy&);
00038 
00042     static void
00043     computeLastNode (stdair::NestingNode&, const stdair::Policy&,
00044                      const stdair::SegmentCabin&);
00045 
00049     static bool isNested (const stdair::Policy&, const stdair::Policy&);
00050     
00051   
00052   private:
00053 
00058     static const bool 
00059     intersectionBetweenPolicyAndBookingClassList (const stdair::BookingClassList_T&,
00060                                                   const stdair::Policy&,
00061                                                   stdair::ClassCode_T&);
00062 
00066     static void
00067     diffBetweenBookingClassAndPolicy (stdair::NestingNode&,
00068                                       const stdair::FareFamily&,
00069                                       const stdair::ClassCode_T&,
00070                                       const stdair::Policy&);
00071 
00072   };
00073 
00074 }
00075 
00076 #endif // __RMOL_BOM_POLICYHELPER_HPP