![]() |
Eclipse SUMO - Simulation of Urban MObility
|
#include <AFRouter.h>
Data Structures | |
| class | EdgeInfoComparator |
Public Types | |
| typedef KDTreePartition< E, N, V >::Cell | Cell |
| typedef AFInfo< E >::FlagInfo | FlagInfo |
| typedef AbstractLookupTable< FlippedEdge< E, N, V >, V > | FlippedLookupTable |
| typedef AbstractLookupTable< E, V > | LookupTable |
| typedef double(* | Operation) (const E *const, const V *const, double) |
| Type of the function that is used to retrieve the edge effort. | |
| typedef std::map< const E *, RouterProhibition > | Prohibitions |
Public Member Functions | |
| AFRouter (const std::vector< E * > &edges, const KDTreePartition< E, N, V > *partition, bool unbuildIsWarning, typename SUMOAbstractRouter< E, V >::Operation operation, typename SUMOAbstractRouter< FlippedEdge< E, N, V >, V >::Operation flippedOperation, SUMOTime weightPeriod, const std::shared_ptr< const LookupTable > lookup=nullptr, const std::shared_ptr< const FlippedLookupTable > flippedLookup=nullptr, const bool havePermissions=false, const bool haveRestrictions=false) | |
| Constructor. | |
| AFRouter (const std::vector< typename SUMOAbstractRouter< E, V >::EdgeInfo > &edgeInfos, const KDTreePartition< E, N, V > *partition, bool unbuildIsWarning, typename SUMOAbstractRouter< E, V >::Operation operation, std::vector< FlagInfo * > *flagInfos, const std::shared_ptr< const LookupTable > lookup=nullptr, const bool havePermissions=false, const bool haveRestrictions=false) | |
| Special cloning constructor, only for time-independent instances which never rebuild arc infos. | |
| AFRouter (const std::vector< typename SUMOAbstractRouter< E, V >::EdgeInfo > &edgeInfos, const std::vector< E * > &edges, const KDTreePartition< E, N, V > *partition, bool unbuildIsWarning, typename SUMOAbstractRouter< E, V >::Operation operation, typename SUMOAbstractRouter< FlippedEdge< E, N, V >, V >::Operation flippedOperation, SUMOTime weightPeriod, const std::shared_ptr< const LookupTable > lookup=nullptr, const std::shared_ptr< const FlippedLookupTable > flippedLookup=nullptr, const bool havePermissions=false, const bool haveRestrictions=false) | |
| "Normal" cloning constructor for uninitialized or time-dependent instances | |
| void | buildPathFrom (const typename SUMOAbstractRouter< E, V >::EdgeInfo *rbegin, std::vector< const E * > &edges) |
| Builds the path from marked edges. | |
| virtual SUMOAbstractRouter< E, V > * | clone () |
| Cloning method. | |
| bool | compute (const E *from, const E *to, const V *const vehicle, SUMOTime msTime, std::vector< const E * > &into, bool silent=false) |
| Builds the route between the given edges using the minimum travel time param[in] from The from-/start/source/head edge param[in] to The to-/end/target/tail edge param[in] vehicle The vehicle param[in] msTime The start time of the routes in milliseconds param[out] into The vector of edges, into which the solution route is written. | |
| bool | compute (const E *from, double fromPos, const E *to, double toPos, const V *const vehicle, SUMOTime msTime, std::vector< const E * > &into, bool silent=false) |
| Builds the route between the given edges using the minimum effort at the given time, also taking into account position along the edges to ensure currect handling of looped routes The definition of the effort depends on the wished routing scheme. | |
| bool | computeLooped (const E *from, const E *to, const V *const vehicle, SUMOTime msTime, std::vector< const E * > &into, bool silent=false) |
| Builds the route between the given edges using the minimum effort at the given time if from == to, return the shortest looped route. | |
| SUMOAbstractRouter< E, V >::EdgeInfo * | edgeInfo (const E *const edge) |
| Returns the edge information for the passed edge. | |
| const SUMOAbstractRouter< E, V >::EdgeInfo * | edgeInfo (const E *const edge) const |
| Returns the edge information for the passed edge. | |
| void | endQuery (int visits) |
| Stop timer for query time sum. | |
| std::tuple< int, int, bool > | flagContext (const E *settledEdge, const E *targetEdge) |
| Returns the flag context for a route query from given settled edge to the target edge. | |
| std::tuple< int, int, bool > | flagContextNaive (const E *settledEdge, const E *targetEdge) |
| Kept for runtime comparisons. | |
| std::vector< bool > & | flags (const E *edge) |
| Returns the arc flags of the passed edge. | |
| const SUMOAbstractRouter< E, V >::EdgeInfo & | getEdgeInfo (int index) const |
| double | getEffort (const E *const e, const V *const v, double t) const |
| double | getTravelTime (const E *const e, const V *const v, const double t, const double effort) const |
| const std::string & | getType () const |
| bool | hasProhibitions () const |
| void | init (const int edgeID, const SUMOTime msTime) |
| Initialize the arc flag router param[in] edgeID The edge id(entifier) param[in] msTime The start time of the routes in milliseconds. | |
| bool | isProhibited (const E *const edge, const V *const vehicle, double t) const |
| bool | isValid (const std::vector< const E * > &edges, const V *const v, double t) const |
| virtual void | prohibit (const Prohibitions &toProhibit) |
| virtual double | recomputeCosts (const std::vector< const E * > &edges, const V *const v, SUMOTime msTime, double *lengthp=nullptr) const |
| double | recomputeCostsPos (const std::vector< const E * > &edges, const V *const v, double fromPos, double toPos, SUMOTime msTime, double *lengthp=nullptr) const |
| void | reportStatistics () |
| Report query time statistics. | |
| virtual void | reset (const V *const vehicle) |
| Trigger arc flags rebuild. | |
| void | resetStatistics () |
| Reset query time statistics. | |
| void | setAutoBulkMode (const bool mode) |
| virtual void | setBulkMode (const bool mode) |
| Bulk mode is not supported. | |
| double | setHint (const typename std::vector< const E * >::const_iterator routeBegin, const typename std::vector< const E * >::const_iterator routeEnd, const V *const v, SUMOTime msTime) |
| void | setMsgHandler (MsgHandler *const errorMsgHandler) |
| void | startQuery () |
| Start timer for query time sum. | |
| void | updateViaCost (const E *const prev, const E *const e, const V *const v, double &time, double &effort, double &length) const |
| void | updateViaEdgeCost (const E *viaEdge, const V *const v, double &time, double &effort, double &length) const |
| virtual | ~AFRouter () |
| Destructor. | |
Static Public Member Functions | |
| static bool | flag (const FlagInfo *flagInfo, const std::tuple< int, int, bool > flagContext) |
| Returns the arc flag of the edge in flagInfo wrt flagContext. | |
| static int | partitionLevel2SHARCLevel (int partitionLevel, int numberOfPartitionLevels) |
| Converts a partition level number to a SHARC level number. | |
| static int | sHARCLevel2PartitionLevel (int sHARCLevel, int numberOfPartitionLevels) |
| Converts a SHARC level number to a partition level number. | |
Protected Attributes | |
| bool | myAmClean |
| whether we are already initialized | |
| bool | myAutoBulkMode |
| whether we are currently trying to detect bulk mode automatically | |
| AFBuilder< E, N, V, M > * | myBuilder |
| The builder. | |
| bool | myBulkMode |
| whether we are currently operating several route queries in a bulk | |
| EdgeInfoComparator | myComparator |
| The comparator for edge information. | |
| std::vector< typename SUMOAbstractRouter< E, V >::EdgeInfo > | myEdgeInfos |
| The container of edge information. | |
| MsgHandler * | myErrorMsgHandler |
| the handler for routing errors | |
| std::vector< FlagInfo * > * | myFlagInfos |
| Edge infos containing the associated edge and its arc flags. | |
| std::vector< typename SUMOAbstractRouter< E, V >::EdgeInfo * > | myFound |
| list of visited Edges (for resetting) | |
| std::vector< typename SUMOAbstractRouter< E, V >::EdgeInfo * > | myFrontierList |
| A container for reusage of the min edge heap. | |
| const bool | myHavePermissions |
| whether edge permissions need to be considered | |
| const bool | myHaveRestrictions |
| whether edge restrictions need to be considered | |
| const std::shared_ptr< const LookupTable > | myLookupTable |
| The lookup table for travel time heuristics. | |
| double | myMaxSpeed |
| The maximum speed in the network. | |
| long long int | myNumQueries |
| Operation | myOperation |
| The object's operation to perform. | |
| const KDTreePartition< E, N, V > * | myPartition |
| The partition. | |
| Prohibitions | myProhibited |
| The list of explicitly prohibited edges and estimated end time of prohibition. | |
| long long int | myQueryStartTime |
| The time spent querying in milliseconds. | |
| long long int | myQueryTimeSum |
| long long int | myQueryVisits |
| Counters for performance logging. | |
| Operation | myTTOperation |
| The object's operation to perform for travel times. | |
| const std::string | myType |
| The type of this router. | |
| SUMOTime | myValidUntil |
| The validity duration of the current flag infos (exclusive) | |
| const SUMOTime | myWeightPeriod |
| The validity duration of one weight interval. | |
Private Attributes | |
| std::tuple< int, int, bool > | myLastFlagContext |
| The last flag context. | |
| const Cell * | myLastSettledEdgeCell |
| The cell of the last settled edge. | |
| const Cell * | myTargetEdgeCellLevel0 |
| The cell of the target edge at SHARC level 0. | |
Computes the shortest path through a network with an arc flag routing algorithm (Hilger et al.) in its multi-level variant (also called "stripped SHARC" by Delling et al.)
The template parameters are:
| E | The edge class to use (MSEdge/ROEdge) |
| N | The node class to use (MSJunction/RONode) |
| V | The vehicle class to use (MSVehicle/ROVehicle) |
The router is edge-based It must know the number of edges for internal reasons and whether a missing connection between two given edges (unbuild route) shall be reported as an error or as a warning
Definition at line 91 of file AFRouter.h.
| typedef KDTreePartition<E,N,V>::Cell AFRouter< E, N, V, M >::Cell |
Definition at line 94 of file AFRouter.h.
Definition at line 95 of file AFRouter.h.
| typedef AbstractLookupTable<FlippedEdge<E, N, V>, V> AFRouter< E, N, V, M >::FlippedLookupTable |
Definition at line 96 of file AFRouter.h.
| typedef AbstractLookupTable<E, V> AFRouter< E, N, V, M >::LookupTable |
Definition at line 93 of file AFRouter.h.
|
inherited |
Type of the function that is used to retrieve the edge effort.
Definition at line 107 of file SUMOAbstractRouter.h.
|
inherited |
Definition at line 109 of file SUMOAbstractRouter.h.
|
inline |
Constructor.
| [in] | edges | The edges |
| [in] | partition | A partition of the router's network wrt a k-d tree subdivision scheme |
| [in] | unbuildIsWarning | The flag indicating whether network unbuilds should issue warnings or errors |
| [in] | operation | The operation for a forward graph |
| [in] | flippedOperation | The operation for a backward graph with flipped edges |
| [in] | weightPeriod | The validity duration of one weight interval |
| [in] | lookup | The lookup table for a forward graph |
| [in] | flippedLookup | The lookup table for a backward graph with flipped edges |
| [in] | havePermissions | The boolean flag indicating whether edge permissions need to be considered or not |
| [in] | haveRestrictions | The boolean flag indicating whether edge restrictions need to be considered or not |
Definition at line 150 of file AFRouter.h.
References MAX2(), SUMOAbstractRouter< E, V >::myEdgeInfos, and AFRouter< E, N, V, M >::myMaxSpeed.
|
inline |
"Normal" cloning constructor for uninitialized or time-dependent instances
| [in] | edges | The edges |
| [in] | partition | A partition of the router's network wrt a k-d tree subdivision scheme |
| [in] | unbuildIsWarning | The flag indicating whether network unbuilds should issue warnings or errors |
| [in] | operation | The operation for a forward graph |
| [in] | flippedOperation | The operation for a backward graph with flipped edges |
| [in] | weightPeriod | The validity duration of one weight interval |
| [in] | lookup | The lookup table for a forward graph |
| [in] | flippedLookup | The lookup table for a backward graph with flipped edges |
| [in] | havePermissions | The boolean flag indicating whether edge permissions need to be considered |
| [in] | haveRestrictions | The boolean flag indicating whether edge restrictions need to be considered |
Definition at line 195 of file AFRouter.h.
References SUMOAbstractRouter< E, V >::EdgeInfo::edge, AFRouter< E, N, V, M >::edgeInfo(), MAX2(), SUMOAbstractRouter< E, V >::myEdgeInfos, and AFRouter< E, N, V, M >::myMaxSpeed.
|
inline |
Special cloning constructor, only for time-independent instances which never rebuild arc infos.
| [in] | edgeInfos | The vector of edge information |
| [in] | partition | A partition of the router's network wrt a k-d tree subdivision scheme |
| [in] | unbuildIsWarning | The flag indicating whether network unbuilds should issue warnings or errors |
| [in] | operation | The operation for a forward graph |
| [in] | flagInfos | The vector of arc flag information |
| [in] | lookup | The lookup table for a forward graph |
| [in] | havePermissions | The boolean flag indicating whether edge permissions need to be considered |
| [in] | haveRestrictions | The boolean flag indicating whether edge restrictions need to be considered |
Definition at line 240 of file AFRouter.h.
References SUMOAbstractRouter< E, V >::EdgeInfo::edge, AFRouter< E, N, V, M >::edgeInfo(), MAX2(), SUMOAbstractRouter< E, V >::myEdgeInfos, and AFRouter< E, N, V, M >::myMaxSpeed.
Destructor.
Definition at line 272 of file AFRouter.h.
References AFRouter< E, N, V, M >::myBuilder.
|
inlineinherited |
Builds the path from marked edges.
Definition at line 410 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::EdgeInfo::edge, and SUMOAbstractRouter< E, V >::EdgeInfo::prev.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), and Node2EdgeRouter< E, N, V, M >::computeNode2Edge().
|
inlinevirtual |
Cloning method.
Implements SUMOAbstractRouter< E, V >.
Definition at line 277 of file AFRouter.h.
References MsgHandler::getWarningInstance(), AFRouter< E, N, V, M >::myBuilder, SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myErrorMsgHandler, AFRouter< E, N, V, M >::myFlagInfos, SUMOAbstractRouter< E, V >::myHavePermissions, SUMOAbstractRouter< E, V >::myHaveRestrictions, AFRouter< E, N, V, M >::myLookupTable, SUMOAbstractRouter< E, V >::myOperation, AFRouter< E, N, V, M >::myPartition, AFRouter< E, N, V, M >::myWeightPeriod, and SUMOTime_MAX.
|
inlinevirtual |
Builds the route between the given edges using the minimum travel time param[in] from The from-/start/source/head edge param[in] to The to-/end/target/tail edge param[in] vehicle The vehicle param[in] msTime The start time of the routes in milliseconds param[out] into The vector of edges, into which the solution route is written.
| [in] | silent | The boolean flag indicating whether the method stays silent or puts out messages |
Implements SUMOAbstractRouter< E, V >.
Definition at line 391 of file AFRouter.h.
References AFInfo< E >::FlagInfo::arcFlags, SUMOAbstractRouter< E, V >::buildPathFrom(), AFRouter< E, N, V, M >::endQuery(), AFRouter< E, N, V, M >::flag(), AFRouter< E, N, V, M >::flagContext(), SysUtils::getCurrentMillis(), SUMOAbstractRouter< E, V >::getEffort(), Named::getIDSecure(), SUMOAbstractRouter< E, V >::getTravelTime(), MsgHandler::inform(), MsgHandler::informf(), AFRouter< E, N, V, M >::init(), SUMOAbstractRouter< E, V >::isProhibited(), MAX2(), MIN2(), SUMOAbstractRouter< E, V >::myAmClean, AFRouter< E, N, V, M >::myBuilder, AFRouter< E, N, V, M >::myComparator, SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myErrorMsgHandler, SUMOAbstractRouter< E, V >::myFound, SUMOAbstractRouter< E, V >::myFrontierList, AFRouter< E, N, V, M >::myLookupTable, AFRouter< E, N, V, M >::myMaxSpeed, AFRouter< E, N, V, M >::myValidUntil, AFRouter< E, N, V, M >::myWeightPeriod, AFRouter< E, N, V, M >::reset(), AFRouter< E, N, V, M >::startQuery(), STEPS2TIME, SVC_IGNORING, UNREACHABLE, and SUMOAbstractRouter< E, V >::updateViaEdgeCost().
|
inlineinherited |
Builds the route between the given edges using the minimum effort at the given time, also taking into account position along the edges to ensure currect handling of looped routes The definition of the effort depends on the wished routing scheme.
Definition at line 206 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::compute(), and SUMOAbstractRouter< E, V >::computeLooped().
|
inlineinherited |
Builds the route between the given edges using the minimum effort at the given time if from == to, return the shortest looped route.
Definition at line 221 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::compute(), MsgHandler::informf(), SUMOAbstractRouter< E, V >::myErrorMsgHandler, SUMOAbstractRouter< E, V >::recomputeCosts(), SVC_IGNORING, and TL.
Referenced by SUMOAbstractRouter< E, V >::compute().
|
inline |
Returns the edge information for the passed edge.
| [in] | edge | The edge |
Definition at line 103 of file AFRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos.
Referenced by AFRouter< E, N, V, M >::AFRouter(), and AFRouter< E, N, V, M >::AFRouter().
|
inline |
Returns the edge information for the passed edge.
| [in] | edge | The edge |
Definition at line 112 of file AFRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos.
Stop timer for query time sum.
Definition at line 750 of file AFRouter.h.
References SUMOAbstractRouter< E, V >::endQuery(), and SysUtils::getCurrentMillis().
Referenced by AFRouter< E, N, V, M >::compute().
|
inlinestatic |
Returns the arc flag of the edge in flagInfo wrt flagContext.
| [in] | flagInfo | The arc flag information |
| [in] | flagContext | The flag context tuple |
Definition at line 335 of file AFRouter.h.
References AFInfo< E >::FlagInfo::arcFlags, and AFRouter< E, N, V, M >::flagContext().
Referenced by AFRouter< E, N, V, M >::compute().
| std::tuple< int, int, bool > AFRouter< E, N, V, M >::flagContext | ( | const E * | settledEdge, |
| const E * | targetEdge | ||
| ) |
Returns the flag context for a route query from given settled edge to the target edge.
| [in] | settledEdge | The settled edge |
| [in] | targetEdge | The target edge |
Definition at line 681 of file AFRouter.h.
References KDTreePartition< E, N, V >::Cell::contains(), KDTreePartition< E, N, V >::Cell::getSupercell(), and KDTreePartition< E, N, V >::Cell::isLeftOrLowerCell().
Referenced by AFRouter< E, N, V, M >::compute(), and AFRouter< E, N, V, M >::flag().
| std::tuple< int, int, bool > AFRouter< E, N, V, M >::flagContextNaive | ( | const E * | settledEdge, |
| const E * | targetEdge | ||
| ) |
Kept for runtime comparisons.
Definition at line 646 of file AFRouter.h.
References KDTreePartition< E, N, V >::Cell::contains(), KDTreePartition< E, N, V >::Cell::getSupercell(), and KDTreePartition< E, N, V >::Cell::isLeftOrLowerCell().
Returns the arc flags of the passed edge.
| [in] | edge | The edge |
Definition at line 614 of file AFRouter.h.
|
inlineinherited |
Definition at line 192 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos.
|
inlineinherited |
Definition at line 360 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myOperation, and SUMOAbstractRouter< E, V >::myProhibited.
Referenced by IntermodalRouter< E, L, N, V >::compute(), AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), PedestrianRouter< E, L, N, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), RailwayRouter< E, V >::recomputeCosts(), SUMOAbstractRouter< E, V >::recomputeCostsPos(), SUMOAbstractRouter< E, V >::setHint(), CHBuilder< E, V >::synchronize(), SUMOAbstractRouter< E, V >::updateViaCost(), and SUMOAbstractRouter< E, V >::updateViaEdgeCost().
|
inlineinherited |
Definition at line 258 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myTTOperation.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), SUMOAbstractRouter< E, V >::updateViaCost(), and SUMOAbstractRouter< E, V >::updateViaEdgeCost().
|
inlineinherited |
Definition at line 188 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myType.
|
inlineinherited |
Definition at line 405 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myProhibited.
Referenced by RORouteDef::repairCurrentRoute().
Initialize the arc flag router param[in] edgeID The edge id(entifier) param[in] msTime The start time of the routes in milliseconds.
Definition at line 623 of file AFRouter.h.
References STEPS2TIME.
Referenced by AFRouter< E, N, V, M >::compute().
|
inlineinherited |
Definition at line 250 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myHavePermissions, SUMOAbstractRouter< E, V >::myHaveRestrictions, and SUMOAbstractRouter< E, V >::myProhibited.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), SUMOAbstractRouter< E, V >::isValid(), Node2EdgeRouter< E, N, V, M >::recomputeCostsNoLastEdge(), and SUMOAbstractRouter< E, V >::setHint().
|
inlineinherited |
Definition at line 287 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::isProhibited().
Referenced by RORouteDef::addAlternative().
|
inlinestatic |
Converts a partition level number to a SHARC level number.
| [in] | partitionLevel | The partition level |
| [in] | numberOfPartitionLevels | The number of partition levels |
Definition at line 299 of file AFRouter.h.
Referenced by AFBuild< E, N, V, M >::partitionLevel2SHARCLevel().
|
inlinevirtualinherited |
Reimplemented in IntermodalRouter< E, L, N, V >, and RailwayRouter< E, V >.
Definition at line 390 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myProhibited, and SVCAll.
Referenced by AFBuild< E, N, V, M >::AFBuild(), IntermodalRouter< E, L, N, V >::prohibit(), RailwayRouter< E, V >::prohibit(), PedestrianRouter< E, L, N, V >::prohibit(), and RORouteDef::repairCurrentRoute().
|
inlinevirtualinherited |
Reimplemented in RailwayRouter< E, V >.
Definition at line 296 of file SUMOAbstractRouter.h.
References STEPS2TIME, and SUMOAbstractRouter< E, V >::updateViaCost().
Referenced by RORouteDef::addAlternative(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), SUMOAbstractRouter< E, V >::computeLooped(), ROMAAssignments::computePath(), MSDispatch::computePickupTime(), ROVehicle::computeRoute(), computeRoutes(), MSDevice_StationFinder::estimateConsumption(), MSStoppingPlaceRerouter::evaluateDestination(), NBPTLineCont::getCost(), MSBaseVehicle::insertStop(), LandmarkLookupTable< E, V, M >::LandmarkLookupTable(), RailwayRouter< E, V >::recomputeCosts(), SUMOAbstractRouter< E, V >::recomputeCostsPos(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), MSBaseVehicle::rerouteBetweenStops(), MSVehicle::rerouteParkingArea(), ROMAAssignments::sue(), and MSTriggeredRerouter::triggerRouting().
|
inlineinherited |
Definition at line 314 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::getEffort(), SUMOAbstractRouter< E, V >::recomputeCosts(), and STEPS2TIME.
Referenced by MSDispatch::computeDetourTime(), LIBSUMO_NAMESPACE::Simulation::findRoute(), MSStopOptimizer::optimizeSkipped(), MSStopOptimizer::reachableInTime(), and MSBaseVehicle::reroute().
Report query time statistics.
Definition at line 757 of file AFRouter.h.
References elapsedMs2string(), toString(), and WRITE_MESSAGE.
Trigger arc flags rebuild.
| [in] | The | vehicle |
Reimplemented from SUMOAbstractRouter< E, V >.
Definition at line 352 of file AFRouter.h.
References elapsedMs2string(), SysUtils::getCurrentMillis(), AFRouter< E, N, V, M >::myBuilder, AFRouter< E, N, V, M >::myFlagInfos, AFRouter< E, N, V, M >::myValidUntil, and AFRouter< E, N, V, M >::myWeightPeriod.
Referenced by AFRouter< E, N, V, M >::compute().
Reset query time statistics.
Definition at line 768 of file AFRouter.h.
|
inlineinherited |
Definition at line 386 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myAutoBulkMode.
Referenced by LandmarkLookupTable< E, V, M >::LandmarkLookupTable().
Bulk mode is not supported.
Reimplemented from SUMOAbstractRouter< E, V >.
Definition at line 562 of file AFRouter.h.
References UNUSED_PARAMETER.
|
inlineinherited |
Definition at line 329 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::EdgeInfo::edge, SUMOAbstractRouter< E, V >::EdgeInfo::effort, SUMOAbstractRouter< E, V >::getEffort(), SUMOAbstractRouter< E, V >::init(), SUMOAbstractRouter< E, V >::isProhibited(), SUMOAbstractRouter< E, V >::myEdgeInfos, SUMOAbstractRouter< E, V >::myFound, STEPS2TIME, and SUMOAbstractRouter< E, V >::updateViaCost().
|
inlineinherited |
Definition at line 184 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::myErrorMsgHandler.
Referenced by RORouteDef::repairCurrentRoute().
|
inlinestatic |
Converts a SHARC level number to a partition level number.
| [in] | sHARCLevel | The SHARC level |
| [in] | numberOfPartitionLevels | The number of partition levels |
Definition at line 317 of file AFRouter.h.
Referenced by AFBuild< E, N, V, M >::sHARCLevel2PartitionLevel(), and AFBuilder< E, N, V, M >::sHARCLevel2PartitionLevel().
Start timer for query time sum.
Definition at line 743 of file AFRouter.h.
References SysUtils::getCurrentMillis(), and SUMOAbstractRouter< E, V >::startQuery().
Referenced by AFRouter< E, N, V, M >::compute().
|
inlineinherited |
Definition at line 272 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::getEffort(), SUMOAbstractRouter< E, V >::getTravelTime(), and SUMOAbstractRouter< E, V >::updateViaEdgeCost().
Referenced by IntermodalRouter< E, L, N, V >::compute(), RailwayRouter< E, V >::recomputeCosts(), SUMOAbstractRouter< E, V >::recomputeCosts(), Node2EdgeRouter< E, N, V, M >::recomputeCostsNoLastEdge(), and SUMOAbstractRouter< E, V >::setHint().
|
inlineinherited |
Definition at line 262 of file SUMOAbstractRouter.h.
References SUMOAbstractRouter< E, V >::getEffort(), and SUMOAbstractRouter< E, V >::getTravelTime().
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), and SUMOAbstractRouter< E, V >::updateViaCost().
|
protectedinherited |
whether we are already initialized
Definition at line 436 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), and SUMOAbstractRouter< E, V >::init().
|
protectedinherited |
whether we are currently trying to detect bulk mode automatically
Definition at line 433 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< E, V >::clone(), DijkstraRouter< E, V >::compute(), and SUMOAbstractRouter< E, V >::setAutoBulkMode().
The builder.
Definition at line 583 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AFRouter< E, N, V, M >::compute(), AFRouter< E, N, V, M >::reset(), and AFRouter< E, N, V, M >::~AFRouter().
|
protectedinherited |
whether we are currently operating several route queries in a bulk
Definition at line 430 of file SUMOAbstractRouter.h.
Referenced by AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), and SUMOAbstractRouter< E, V >::setBulkMode().
|
protected |
The comparator for edge information.
Definition at line 573 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::compute().
|
protectedinherited |
The container of edge information.
Definition at line 448 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::AFRouter(), AFRouter< E, N, V, M >::AFRouter(), AFRouter< E, N, V, M >::AFRouter(), AStarRouter< E, V, M >::AStarRouter(), AStarRouter< E, V, M >::AStarRouter(), AFRouter< E, N, V, M >::clone(), AStarRouter< E, V, M >::clone(), DijkstraRouter< E, V >::clone(), Node2EdgeRouter< E, N, V, M >::clone(), AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), DijkstraRouter< E, V >::DijkstraRouter(), DijkstraRouter< E, V >::DijkstraRouter(), AFRouter< E, N, V, M >::edgeInfo(), Node2EdgeRouter< E, N, V, M >::edgeInfo(), AFRouter< E, N, V, M >::edgeInfo(), Node2EdgeRouter< E, N, V, M >::edgeInfo(), SUMOAbstractRouter< E, V >::getEdgeInfo(), SUMOAbstractRouter< E, V >::getEffort(), SUMOAbstractRouter< E, V >::init(), SUMOAbstractRouter< E, V >::isProhibited(), SUMOAbstractRouter< E, V >::prohibit(), and SUMOAbstractRouter< E, V >::setHint().
|
protectedinherited |
the handler for routing errors
Definition at line 421 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AStarRouter< E, V, M >::clone(), CHRouter< E, V >::clone(), DijkstraRouter< E, V >::clone(), Node2EdgeRouter< E, N, V, M >::clone(), AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), CHRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), SUMOAbstractRouter< E, V >::computeLooped(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), RailwayRouter< E, V >::ensureInternalRouter(), and SUMOAbstractRouter< E, V >::setMsgHandler().
Edge infos containing the associated edge and its arc flags.
Definition at line 569 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), and AFRouter< E, N, V, M >::reset().
|
protectedinherited |
list of visited Edges (for resetting)
Definition at line 453 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), SUMOAbstractRouter< E, V >::init(), Node2EdgeRouter< E, N, V, M >::reset(), and SUMOAbstractRouter< E, V >::setHint().
|
protectedinherited |
A container for reusage of the min edge heap.
Definition at line 451 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), SUMOAbstractRouter< E, V >::init(), and Node2EdgeRouter< E, N, V, M >::reset().
|
protectedinherited |
whether edge permissions need to be considered
Definition at line 439 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AStarRouter< E, V, M >::clone(), CHRouter< E, V >::clone(), CHRouterWrapper< E, V >::clone(), DijkstraRouter< E, V >::clone(), Node2EdgeRouter< E, N, V, M >::clone(), RailwayRouter< E, V >::ensureInternalRouter(), and SUMOAbstractRouter< E, V >::isProhibited().
|
protectedinherited |
whether edge restrictions need to be considered
Definition at line 442 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AStarRouter< E, V, M >::clone(), CHRouter< E, V >::clone(), DijkstraRouter< E, V >::clone(), Node2EdgeRouter< E, N, V, M >::clone(), RailwayRouter< E, V >::ensureInternalRouter(), and SUMOAbstractRouter< E, V >::isProhibited().
The last flag context.
Definition at line 604 of file AFRouter.h.
The cell of the last settled edge.
Definition at line 602 of file AFRouter.h.
|
protected |
The lookup table for travel time heuristics.
Definition at line 575 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), and AFRouter< E, N, V, M >::compute().
The maximum speed in the network.
Definition at line 577 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::AFRouter(), AFRouter< E, N, V, M >::AFRouter(), AFRouter< E, N, V, M >::AFRouter(), and AFRouter< E, N, V, M >::compute().
Definition at line 590 of file AFRouter.h.
|
protectedinherited |
The object's operation to perform.
Definition at line 424 of file SUMOAbstractRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AStarRouter< E, V, M >::clone(), CHRouter< E, V >::clone(), CHRouterWrapper< E, V >::clone(), DijkstraRouter< E, V >::clone(), Node2EdgeRouter< E, N, V, M >::clone(), CHRouterWrapper< E, V >::compute(), and SUMOAbstractRouter< E, V >::getEffort().
|
protected |
The partition.
Definition at line 571 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::clone().
|
protectedinherited |
The list of explicitly prohibited edges and estimated end time of prohibition.
Definition at line 445 of file SUMOAbstractRouter.h.
Referenced by RailwayRouter< E, V >::_compute(), SUMOAbstractRouter< E, V >::getEffort(), SUMOAbstractRouter< E, V >::hasProhibitions(), SUMOAbstractRouter< E, V >::isProhibited(), RailwayRouter< E, V >::prohibit(), and SUMOAbstractRouter< E, V >::prohibit().
The time spent querying in milliseconds.
Definition at line 593 of file AFRouter.h.
Definition at line 594 of file AFRouter.h.
Counters for performance logging.
Definition at line 589 of file AFRouter.h.
The cell of the target edge at SHARC level 0.
Definition at line 606 of file AFRouter.h.
|
protectedinherited |
The object's operation to perform for travel times.
Definition at line 427 of file SUMOAbstractRouter.h.
Referenced by DijkstraRouter< E, V >::clone(), and SUMOAbstractRouter< E, V >::getTravelTime().
The type of this router.
Definition at line 586 of file AFRouter.h.
The validity duration of the current flag infos (exclusive)
Definition at line 581 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::compute(), and AFRouter< E, N, V, M >::reset().
The validity duration of one weight interval.
Definition at line 579 of file AFRouter.h.
Referenced by AFRouter< E, N, V, M >::clone(), AFRouter< E, N, V, M >::compute(), and AFRouter< E, N, V, M >::reset().