17 class DoublyConnectedEdgeList;
50 TUniquePtr<RoadSegmentDescription> ptr{
RoadSegments.back().Release()};
56 TUniquePtr<CityAreaDescription> ptr{
CityAreas.back().Release()};
Simple doubly-connected edge list structure.
std::vector< TUniquePtr< RoadSegmentDescription > > RoadSegmentList
RoadSegmentList RoadSegments
GraphParser(DoublyConnectedEdgeList &Dcel)
TUniquePtr< RoadSegmentDescription > PopRoadSegment()
const RoadSegmentDescription & GetRoadSegmentAt(size_t i) const
bool HasCityAreas() const
bool HasRoadSegments() const
std::vector< TUniquePtr< CityAreaDescription > > CityAreaList
size_t RoadSegmentCount() const
const CityAreaDescription & GetCityAreaAt(size_t i) const
TUniquePtr< CityAreaDescription > PopCityArea()
size_t CityAreaCount() const