00001 #ifndef __AIRINV_BOM_FAREFAMILYSTRUCT_HPP 00002 #define __AIRINV_BOM_FAREFAMILYSTRUCT_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <string> 00009 #include <vector> 00010 // StdAir 00011 #include <stdair/stdair_inventory_types.hpp> 00012 #include <stdair/basic/StructAbstract.hpp> 00013 // AirInv 00014 #include <airinv/bom/BookingClassStruct.hpp> 00015 00017 namespace stdair { 00018 class FareFamily; 00019 } 00020 00021 namespace AIRINV { 00022 00026 struct FareFamilyStruct : public stdair::StructAbstract { 00027 // Attributes 00028 stdair::FamilyCode_T _familyCode; 00029 stdair::ClassList_String_T _classes; 00030 BookingClassStructList_T _classList; 00031 00035 FareFamilyStruct(); 00039 FareFamilyStruct (const stdair::FamilyCode_T&, 00040 const stdair::ClassList_String_T&); 00041 00045 void fill (stdair::FareFamily&) const; 00046 00050 const std::string describe() const; 00051 }; 00052 00056 typedef std::vector<FareFamilyStruct> FareFamilyStructList_T; 00057 00058 } 00059 #endif // __AIRINV_BOM_FAREFAMILYSTRUCT_HPP