$treeview $search $mathjax
00001 #ifndef __AIRSCHED_CMD_SEGMENTPATHGENERATOR_HPP 00002 #define __AIRSCHED_CMD_SEGMENTPATHGENERATOR_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <vector> 00009 // StdAir 00010 #include <stdair/stdair_basic_types.hpp> 00011 #include <stdair/command/CmdAbstract.hpp> 00012 // AirSched 00013 #include <airsched/AIRSCHED_Types.hpp> 00014 00016 namespace stdair { 00017 class BomRoot; 00018 class Inventory; 00019 class FlightPeriod; 00020 class SegmentPeriod; 00021 } 00022 00023 namespace AIRSCHED { 00024 00026 class ReachableUniverse; 00027 class OriginDestinationSet; 00028 class SegmentPathPeriod; 00029 00030 00034 class SegmentPathGenerator : public stdair::CmdAbstract { 00035 public: 00039 static void createSegmentPathNetwork (const stdair::BomRoot&); 00040 00041 private: 00046 static void createSinglePaths (const stdair::Inventory&); 00047 static void createSinglePaths (const stdair::FlightPeriod&); 00048 00053 static void createSinglePath (stdair::SegmentPeriod&); 00054 static void createSinglePath (ReachableUniverse&, stdair::SegmentPeriod&); 00055 00059 static void buildSegmentPathNetwork (const stdair::BomRoot&, 00060 const stdair::NbOfSegments_T&); 00061 static void buildSegmentPathNetwork (ReachableUniverse&, 00062 const stdair::NbOfSegments_T&); 00063 00067 static void addSegmentPathPeriod (ReachableUniverse&, 00068 const SegmentPathPeriod&); 00069 }; 00070 00071 } 00072 #endif // __AIRSCHED_CMD_SEGMENTPATHGENERATOR_HPP