SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DijkstraRouterEffort_ByProxi< E, V, PF, EC > Class Template Reference

#include <DijkstraRouterEffort.h>

Inheritance diagram for DijkstraRouterEffort_ByProxi< E, V, PF, EC >:
DijkstraRouterEffortBase< E, V, PF > SUMOAbstractRouter< E, V > PF

Public Types

typedef SUMOReal(EC::* Operation )(const E *const, const V *const, SUMOReal) const
 Type of the function that is used to retrieve the edge effort.

Public Member Functions

void buildPathFrom (EdgeInfo *rbegin, std::vector< const E * > &edges)
 Builds the path from marked edges.
virtual void compute (const E *from, const E *to, const V *const vehicle, SUMOTime msTime, std::vector< const E * > &into)
 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.
 DijkstraRouterEffort_ByProxi (size_t noE, bool unbuildIsWarningOnly, EC *receiver, Operation effortOperation, Operation ttOperation)
void endQuery (int visits)
SUMOReal getEffort (const E *const e, const V *const v, SUMOReal t) const
SUMOReal getTravelTime (const E *const e, const V *const v, SUMOReal t) const
void init ()
virtual void prepare (const E *, const V *, bool)
SUMOReal recomputeCosts (const std::vector< const E * > &edges, const V *const v, SUMOTime msTime) const
void startQuery ()

Protected Attributes

EdgeInfoByEffortComparator myComparator
std::vector< EdgeInfomyEdgeInfos
 The container of edge information.
MsgHandler *const myErrorMsgHandler
 the handler for routing errors
std::vector< EdgeInfo * > myFound
 list of visited Edges (for resetting)
std::vector< EdgeInfo * > myFrontierList
 A container for reusage of the min edge heap.

Private Attributes

Operation myEffortOperation
 The object's operation to perform for obtaining the effort.
EC * myReceiver
 The object the action is directed to.
Operation myTTOperation
 The object's operation to perform for obtaining the travel time.

Detailed Description

template<class E, class V, class PF, class EC>
class DijkstraRouterEffort_ByProxi< E, V, PF, EC >

Definition at line 253 of file DijkstraRouterEffort.h.

Member Typedef Documentation

template<class E, class V, class PF, class EC>
typedef SUMOReal(EC::* DijkstraRouterEffort_ByProxi< E, V, PF, EC >::Operation)(const E *const, const V *const, SUMOReal) const

Type of the function that is used to retrieve the edge effort.

Definition at line 256 of file DijkstraRouterEffort.h.

Constructor & Destructor Documentation

template<class E, class V, class PF, class EC>
DijkstraRouterEffort_ByProxi< E, V, PF, EC >::DijkstraRouterEffort_ByProxi ( size_t  noE,
bool  unbuildIsWarningOnly,
EC *  receiver,
Operation  effortOperation,
Operation  ttOperation 
)
inline

Definition at line 258 of file DijkstraRouterEffort.h.

Member Function Documentation

template<class E , class V , class PF >
void DijkstraRouterEffortBase< E, V, PF >::buildPathFrom ( EdgeInfo rbegin,
std::vector< const E * > &  edges 
)
inlineinherited
template<class E, class V>
void SUMOAbstractRouter< E, V >::endQuery ( int  visits)
inlineinherited
template<class E, class V, class PF, class EC>
SUMOReal DijkstraRouterEffort_ByProxi< E, V, PF, EC >::getEffort ( const E *const  e,
const V *const  v,
SUMOReal  t 
) const
inlinevirtual
template<class E, class V, class PF, class EC>
SUMOReal DijkstraRouterEffort_ByProxi< E, V, PF, EC >::getTravelTime ( const E *const  e,
const V *const  v,
SUMOReal  t 
) const
inlinevirtual
template<class E , class V , class PF >
void DijkstraRouterEffortBase< E, V, PF >::init ( )
inlineinherited
template<class E, class V>
virtual void SUMOAbstractRouter< E, V >::prepare ( const E *  ,
const V *  ,
bool   
)
inlinevirtualinherited

Definition at line 80 of file SUMOAbstractRouter.h.

template<class E , class V , class PF >
SUMOReal DijkstraRouterEffortBase< E, V, PF >::recomputeCosts ( const std::vector< const E * > &  edges,
const V *const  v,
SUMOTime  msTime 
) const
inlinevirtualinherited
template<class E, class V>
void SUMOAbstractRouter< E, V >::startQuery ( )
inlineinherited

Field Documentation

template<class E , class V , class PF >
EdgeInfoByEffortComparator DijkstraRouterEffortBase< E, V, PF >::myComparator
protectedinherited
template<class E , class V , class PF >
std::vector<EdgeInfo> DijkstraRouterEffortBase< E, V, PF >::myEdgeInfos
protectedinherited
template<class E, class V, class PF, class EC>
Operation DijkstraRouterEffort_ByProxi< E, V, PF, EC >::myEffortOperation
private

The object's operation to perform for obtaining the effort.

Definition at line 275 of file DijkstraRouterEffort.h.

Referenced by DijkstraRouterEffort_ByProxi< E, V, PF, EC >::getEffort().

template<class E , class V , class PF >
MsgHandler* const DijkstraRouterEffortBase< E, V, PF >::myErrorMsgHandler
protectedinherited

the handler for routing errors

Definition at line 247 of file DijkstraRouterEffort.h.

Referenced by DijkstraRouterEffortBase< E, V, PF >::compute().

template<class E , class V , class PF >
std::vector<EdgeInfo*> DijkstraRouterEffortBase< E, V, PF >::myFound
protectedinherited

list of visited Edges (for resetting)

Definition at line 242 of file DijkstraRouterEffort.h.

Referenced by DijkstraRouterEffortBase< E, V, PF >::compute(), and DijkstraRouterEffortBase< E, V, PF >::init().

template<class E , class V , class PF >
std::vector<EdgeInfo*> DijkstraRouterEffortBase< E, V, PF >::myFrontierList
protectedinherited

A container for reusage of the min edge heap.

Definition at line 240 of file DijkstraRouterEffort.h.

Referenced by DijkstraRouterEffortBase< E, V, PF >::compute(), and DijkstraRouterEffortBase< E, V, PF >::init().

template<class E, class V, class PF, class EC>
EC* DijkstraRouterEffort_ByProxi< E, V, PF, EC >::myReceiver
private
template<class E, class V, class PF, class EC>
Operation DijkstraRouterEffort_ByProxi< E, V, PF, EC >::myTTOperation
private

The object's operation to perform for obtaining the travel time.

Definition at line 278 of file DijkstraRouterEffort.h.

Referenced by DijkstraRouterEffort_ByProxi< E, V, PF, EC >::getTravelTime().


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