AirSched Logo  0.1.4
C++ Simulated Airline Schedule Manager Library
LegStruct.hpp
Go to the documentation of this file.
00001 #ifndef __AIRSCHED_BOM_LEGSTRUCT_HPP
00002 #define __AIRSCHED_BOM_LEGSTRUCT_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STL
00008 #include <string>
00009 #include <vector>
00010 // StdAir
00011 #include <stdair/stdair_basic_types.hpp>
00012 #include <stdair/basic/StructAbstract.hpp>
00013 // AirSched
00014 #include <airsched/bom/LegCabinStruct.hpp>
00015 
00016 // Forward declarations
00017 namespace stdair {
00018   class LegDate;
00019 }
00020 
00021 namespace AIRSCHED {
00022 
00024   struct LegStruct : public stdair::StructAbstract {
00025     // Attributes
00026     stdair::AirportCode_T _boardingPoint;
00027     stdair::DateOffset_T _boardingDateOffset;
00028     stdair::Duration_T _boardingTime;
00029     stdair::AirportCode_T _offPoint;
00030     stdair::DateOffset_T _offDateOffset;
00031     stdair::Duration_T _offTime;
00032     stdair::Duration_T _elapsed;
00033     LegCabinStructList_T _cabinList;
00034 
00040     void fill (const stdair::Date_T& iRefDate, stdair::LegDate&) const;
00041       
00043     const std::string describe() const;
00044 
00046     LegStruct();
00047   };
00048 
00050   typedef std::vector<LegStruct> LegStructList_T;
00051 
00052 }
00053 #endif // __AIRSCHED_BOM_LEGSTRUCT_HPP