maliput
Router Class Referenceabstract

Detailed Description

Computes Routes within an api::RoadNetwork.

Implementations of this class may integrate different policies to compute Routes, such as length, maximum speed, driving allowance, etc. One or many implementations can be created per agent type with different customizations might yield different routes upon the same api::RoadNetwork and set of arguments of your query. This is correct and expected behavior as the particular implementation details must rule the decisions that build a Route.

#include <include/maliput/routing/router.h>

Inheritance diagram for Router:
[legend]

Public Member Functions

 MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN (Router)
 
virtual ~Router ()=default
 
std::vector< RouteComputeRoutes (const api::RoadPosition &start, const api::RoadPosition &end, const RoutingConstraints &routing_constraints) const
 Computes Routes that joins start to end under routing_constraints. More...
 

Protected Member Functions

 Router ()=default
 

Constructor & Destructor Documentation

◆ ~Router()

virtual ~Router ( )
virtualdefault

◆ Router()

Router ( )
protecteddefault

Member Function Documentation

◆ ComputeRoutes()

std::vector<Route> ComputeRoutes ( const api::RoadPosition start,
const api::RoadPosition end,
const RoutingConstraints routing_constraints 
) const

Computes Routes that joins start to end under routing_constraints.

Parameters
startThe start point in the api::RoadNetwork. It must be a valid api::RoadPosition within the api::RoadNetwork.
endThe end point in the api::RoadNetwork. It must be a valid api::RoadPosition within the api::RoadNetwork.
routing_constraintsThe set of constraints that apply to the routing algorithm when computing a Route. It must be valid.
See also
ValidateRoutingConstraints().
Returns
A vector with Routes that joins start with end under routing_constraints.
Exceptions
common::assertion_errorWhen start is not valid.
common::assertion_errorWhen end is not valid.
common::assertion_errorWhen routing_constraints is not valid.

◆ MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN()

MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN ( Router  )

The documentation for this class was generated from the following file: