$treeview $search $mathjax
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