osrm-backend/unit_tests/engine
Michael Bell ffc39b8ad2
Clarify use of forcing routing steps (#6866)
The change clarifies the conditions for forcing routing steps and
simplifies the codebase to support it.

- Makes explicity  the search runtime condition for forcing a routing
step. Namely, the node is a source of the forward and reverse searches,
and it's one of the pre-identified nodes that requires a step to
be forced.
- Consolidate the two lists of force nodes into one. Not only is there
no algorithmic value in separating the nodes by geometric direction,
the  improvements to via-routes with u-turns mean atleast one of these
lists will be empty for any search.
- Rename 'force loop' to 'force step'. This moves the code away
from the original CH-specific language for checking for self-loops
in the case where this condition is met. MLD does not have loops.

Additional cucumber tests are added to cover the logic related to
negative search weights and forcing routing steps on via-route
paths.
2024-05-10 22:00:24 +01:00
..
base64.cpp Support snapping to multiple ways at an input location (#5953) 2022-08-27 11:36:20 +01:00
collapse_internal_route_result.cpp Make edge metrics strongly typed (#6421) 2022-10-28 15:16:12 +01:00
douglas_peucker.cpp Upgrade clang-format to version 15 (#6859) 2024-05-06 09:14:46 +02:00
geometry_string.cpp Remove dead code branches (#6875) 2024-05-10 20:21:41 +02:00
guidance_assembly.cpp Lazily generate optional route path data (#6045) 2022-08-22 12:59:20 +01:00
json_factory.cpp Removed references to obsolete Boost.Test headers. 2020-09-02 13:16:44 +03:00
offline_facade.cpp Clarify use of forcing routing steps (#6866) 2024-05-10 22:00:24 +01:00
polyline_compressor.cpp Removed references to obsolete Boost.Test headers. 2020-09-02 13:16:44 +03:00
tidy.cpp Removed references to obsolete Boost.Test headers. 2020-09-02 13:16:44 +03:00