AirSched Logo  0.1.4
C++ Simulated Airline Schedule Manager Library
SegmentStruct.hpp
Go to the documentation of this file.
00001 #ifndef __AIRSCHED_BOM_SEGMENTSTRUCT_HPP
00002 #define __AIRSCHED_BOM_SEGMENTSTRUCT_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/SegmentCabinStruct.hpp>
00015 
00016 // Forward declarations
00017 namespace stdair {
00018   class SegmentDate;
00019 }
00020 
00021 namespace AIRSCHED {
00022   
00024   struct SegmentStruct : public stdair::StructAbstract {
00025     // Attributes
00026     stdair::AirportCode_T _boardingPoint;
00027     stdair::Date_T _boardingDate;
00028     stdair::Duration_T _boardingTime;
00029     stdair::AirportCode_T _offPoint;
00030     stdair::Date_T _offDate;
00031     stdair::Duration_T _offTime;
00032     stdair::Duration_T _elapsed;
00033     SegmentCabinStructList_T _cabinList;
00034 
00037     void fill (stdair::SegmentDate&) const;
00038       
00040     const std::string describe() const;
00041   };
00042 
00044   typedef std::vector<SegmentStruct> SegmentStructList_T;
00045 
00046 }
00047 #endif // __AIRSCHED_BOM_SEGMENTSTRUCT_HPP