| 183 | } |
| 184 | |
| 185 | bool IsDeadEndCached(Segment const & segment, bool isOutgoing, bool useRoutingOptions, WorldGraph & worldGraph, |
| 186 | set<Segment> & deadEnds) |
| 187 | { |
| 188 | if (deadEnds.count(segment) != 0) |
| 189 | return true; |
| 190 | |
| 191 | set<Segment> visitedSegments; |
| 192 | if (IsDeadEnd(segment, isOutgoing, useRoutingOptions, worldGraph, visitedSegments)) |
| 193 | { |
| 194 | deadEnds.insert(visitedSegments.begin(), visitedSegments.end()); |
| 195 | return true; |
| 196 | } |
| 197 | |
| 198 | return false; |
| 199 | } |
| 200 | } // namespace |
| 201 | |
| 202 | // IndexRouter::BestEdgeComparator ---------------------------------------------------------------- |