![]() |
SUMO - Simulation of Urban MObility
|
#include <SUMOAbstractRouter.h>
Public Types | |
typedef double(* | Operation) (const E *const, const V *const, double) |
Type of the function that is used to retrieve the edge effort. More... | |
Public Member Functions | |
virtual SUMOAbstractRouter * | clone ()=0 |
virtual bool | compute (const E *from, const E *to, const V *const vehicle, SUMOTime msTime, std::vector< const E *> &into)=0 |
Builds the route between the given edges using the minimum effort at the given time The definition of the effort depends on the wished routing scheme. More... | |
void | endQuery (int visits) |
double | getEffort (const E *const e, const V *const v, double t) const |
virtual double | recomputeCosts (const std::vector< const E *> &edges, const V *const v, SUMOTime msTime) const =0 |
void | setBulkMode (const bool mode) |
void | startQuery () |
SUMOAbstractRouter (Operation operation, const std::string &type) | |
Constructor. More... | |
virtual | ~SUMOAbstractRouter () |
Destructor. More... | |
Protected Attributes | |
bool | myBulkMode |
whether we are currently operating several route queries in a bulk More... | |
Operation | myOperation |
The object's operation to perform. More... | |
Private Member Functions | |
SUMOAbstractRouter & | operator= (const SUMOAbstractRouter &s) |
Invalidated assignment operator. More... | |
Private Attributes | |
long long int | myNumQueries |
long long int | myQueryStartTime |
the time spent querying in milliseconds More... | |
long long int | myQueryTimeSum |
long long int | myQueryVisits |
counters for performance logging More... | |
const std::string | myType |
the type of this router More... | |
The interface for routing the vehicles over the network.
Definition at line 52 of file SUMOAbstractRouter.h.
typedef double(* SUMOAbstractRouter< E, V >::Operation) (const E *const, const V *const, double) |
Type of the function that is used to retrieve the edge effort.
Definition at line 55 of file SUMOAbstractRouter.h.
|
inline |
Constructor.
Definition at line 58 of file SUMOAbstractRouter.h.
|
inlinevirtual |
Destructor.
Definition at line 69 of file SUMOAbstractRouter.h.
|
pure virtual |
Implemented in CHRouter< E, V, PF >, AStarRouter< E, V, PF >, AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >, DijkstraRouter< E, V, PF >, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >, IntermodalRouter< E, L, N, V, INTERNALROUTER >, IntermodalRouter< E, L, N, V >, CHRouterWrapper< E, V, PF >, PedestrianRouter< E, L, N, V, INTERNALROUTER >, PedestrianRouter< E, L, N, V, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > > >, and ROJTRRouter.
Referenced by LandmarkLookupTable< E, V >::LandmarkLookupTable(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
pure virtual |
Builds the route between the given edges using the minimum effort at the given time The definition of the effort depends on the wished routing scheme.
Implemented in IntermodalRouter< E, L, N, V, INTERNALROUTER >, IntermodalRouter< E, L, N, V >, CHRouter< E, V, PF >, AStarRouter< E, V, PF >, AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >, DijkstraRouter< E, V, PF >, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >, PedestrianRouter< E, L, N, V, INTERNALROUTER >, PedestrianRouter< E, L, N, V, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > > >, and CHRouterWrapper< E, V, PF >.
Referenced by libsumo::Vehicle::changeTarget(), TraCIServerAPI_Simulation::commandDistanceRequest(), libsumo::Simulation::findRoute(), ROMAAssignments::getKPaths(), ROMAAssignments::incremental(), LandmarkLookupTable< E, V >::LandmarkLookupTable(), MSTriggeredRerouter::notifyEnter(), RORouteDef::repairCurrentRoute(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), ROMAAssignments::sue(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
inline |
Definition at line 95 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::compute(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::compute(), and CHRouter< E, V, PF >::compute().
|
inline |
Definition at line 86 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::compute(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::compute(), CHRouterWrapper< E, V, PF >::recomputeCosts(), DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::recomputeCosts(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::recomputeCosts(), CHRouter< E, V, PF >::recomputeCosts(), and CHBuilder< E, V >::synchronize().
|
private |
Invalidated assignment operator.
|
pure virtual |
Implemented in CHRouter< E, V, PF >, IntermodalRouter< E, L, N, V, INTERNALROUTER >, IntermodalRouter< E, L, N, V >, AStarRouter< E, V, PF >, AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >, DijkstraRouter< E, V, PF >, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >, CHRouterWrapper< E, V, PF >, PedestrianRouter< E, L, N, V, INTERNALROUTER >, and PedestrianRouter< E, L, N, V, DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > > >.
Referenced by RORouteDef::addAlternative(), computeRoutes(), libsumo::Simulation::findRoute(), LandmarkLookupTable< E, V >::LandmarkLookupTable(), MSTriggeredRerouter::rerouteParkingArea(), ROMAAssignments::sue(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
inline |
Definition at line 100 of file SUMOAbstractRouter.h.
Referenced by ROMAAssignments::incremental().
|
inline |
Definition at line 90 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::compute(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::compute(), and CHRouter< E, V, PF >::compute().
|
protected |
whether we are currently operating several route queries in a bulk
Definition at line 109 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::compute(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::compute(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::setBulkMode().
|
private |
Definition at line 117 of file SUMOAbstractRouter.h.
Referenced by SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::startQuery(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
protected |
The object's operation to perform.
Definition at line 106 of file SUMOAbstractRouter.h.
Referenced by CHRouterWrapper< E, V, PF >::clone(), DijkstraRouter< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V >, prohibited_withPermissions< IntermodalEdge< E, L, N, V >, IntermodalTrip< E, N, V > > >::clone(), AStarRouter< MSEdge, SUMOVehicle, prohibited_withPermissions< MSEdge, SUMOVehicle > >::clone(), CHRouter< E, V, PF >::clone(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::getEffort().
|
private |
the time spent querying in milliseconds
Definition at line 119 of file SUMOAbstractRouter.h.
Referenced by SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::endQuery(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::startQuery().
|
private |
Definition at line 120 of file SUMOAbstractRouter.h.
Referenced by SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::endQuery(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
private |
counters for performance logging
Definition at line 116 of file SUMOAbstractRouter.h.
Referenced by SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::endQuery(), and SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().
|
private |
the type of this router
Definition at line 113 of file SUMOAbstractRouter.h.
Referenced by SUMOAbstractRouter< E, IntermodalTrip< E, N, V > >::~SUMOAbstractRouter().