SUMO - Simulation of Urban MObility
CHRouter< E, V, PF >::Unidirectional Class Reference

#include <CHRouter.h>

Inheritance diagram for CHRouter< E, V, PF >::Unidirectional:
Inheritance graph
Collaboration diagram for CHRouter< E, V, PF >::Unidirectional:
Collaboration graph

Data Structures

class  EdgeInfoByTTComparator
 

Public Member Functions

bool found (const E *edge) const
 
EdgeInfogetEdgeInfo (const E *const edge)
 
const EdgeInfogetEdgeInfo (const E *const edge) const
 
void init (const E *const start, const V *const vehicle)
 
void reset ()
 
bool step (const Unidirectional &otherSearch, SUMOReal &minTTSeen, Meeting &meeting)
 explore on element from the frontier,update minTTSeen and meeting if an EdgeInfo found by the otherSearch is encountered returns whether stepping should continue More...
 
 Unidirectional (size_t numEdges, bool forward)
 Constructor. More...
 

Private Attributes

bool myAmForward
 the role of this search More...
 
EdgeInfoByTTComparator myComparator
 
std::vector< EdgeInfomyEdgeInfos
 The container of edge information. More...
 
EdgeSet myFound
 the set of visited (settled) Edges More...
 
std::vector< EdgeInfo * > myFrontier
 the min edge heap More...
 
const V * myVehicle
 

Detailed Description

template<class E, class V, class PF>
class CHRouter< E, V, PF >::Unidirectional

class for searching in one direction

Definition at line 146 of file CHRouter.h.

Constructor & Destructor Documentation

template<class E, class V, class PF>
CHRouter< E, V, PF >::Unidirectional::Unidirectional ( size_t  numEdges,
bool  forward 
)
inline

Constructor.

Definition at line 149 of file CHRouter.h.

Member Function Documentation

template<class E, class V, class PF>
bool CHRouter< E, V, PF >::Unidirectional::found ( const E *  edge) const
inline

Definition at line 157 of file CHRouter.h.

Referenced by CHRouter< E, V, PF >::Unidirectional::step().

template<class E, class V, class PF>
EdgeInfo* CHRouter< E, V, PF >::Unidirectional::getEdgeInfo ( const E *const  edge)
inline
template<class E, class V, class PF>
const EdgeInfo* CHRouter< E, V, PF >::Unidirectional::getEdgeInfo ( const E *const  edge) const
inline

Definition at line 165 of file CHRouter.h.

template<class E, class V, class PF>
void CHRouter< E, V, PF >::Unidirectional::init ( const E *const  start,
const V *const  vehicle 
)
inline
template<class E, class V, class PF>
void CHRouter< E, V, PF >::Unidirectional::reset ( )
inline

Definition at line 275 of file CHRouter.h.

Referenced by CHRouter< E, V, PF >::buildContractionHierarchy().

template<class E, class V, class PF>
bool CHRouter< E, V, PF >::Unidirectional::step ( const Unidirectional otherSearch,
SUMOReal minTTSeen,
Meeting meeting 
)
inline

explore on element from the frontier,update minTTSeen and meeting if an EdgeInfo found by the otherSearch is encountered returns whether stepping should continue

Definition at line 208 of file CHRouter.h.

References CHRouter< E, V, PF >::EdgeInfo::edge, CHRouter< E, V, PF >::Unidirectional::found(), CHRouter< E, V, PF >::Unidirectional::getEdgeInfo(), max, CHRouter< E, V, PF >::EdgeInfo::prev, SUMOReal, CHRouter< E, V, PF >::EdgeInfo::traveltime, CHRouter< E, V, PF >::EdgeInfo::upward, and CHRouter< E, V, PF >::EdgeInfo::visited.

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

Field Documentation

template<class E, class V, class PF>
bool CHRouter< E, V, PF >::Unidirectional::myAmForward
private

the role of this search

Definition at line 283 of file CHRouter.h.

template<class E, class V, class PF>
EdgeInfoByTTComparator CHRouter< E, V, PF >::Unidirectional::myComparator
private

Definition at line 291 of file CHRouter.h.

template<class E, class V, class PF>
std::vector<EdgeInfo> CHRouter< E, V, PF >::Unidirectional::myEdgeInfos
private

The container of edge information.

Definition at line 289 of file CHRouter.h.

template<class E, class V, class PF>
EdgeSet CHRouter< E, V, PF >::Unidirectional::myFound
private

the set of visited (settled) Edges

Definition at line 287 of file CHRouter.h.

template<class E, class V, class PF>
std::vector<EdgeInfo*> CHRouter< E, V, PF >::Unidirectional::myFrontier
private

the min edge heap

Definition at line 285 of file CHRouter.h.

template<class E, class V, class PF>
const V* CHRouter< E, V, PF >::Unidirectional::myVehicle
private

Definition at line 293 of file CHRouter.h.


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