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

#include <CHRouter.h>

Collaboration diagram for CHRouter< E, V >::Unidirectional:

Data Structures

class  EdgeInfoByTTComparator
 

Public Types

typedef std::vector< typename CHBuilder< E, V >::Connection > ConnectionVector
 

Public Member Functions

bool found (const E *const edge) const
 
SUMOAbstractRouter< E, V >::EdgeInfogetEdgeInfo (const E *const edge)
 
const SUMOAbstractRouter< E, V >::EdgeInfogetEdgeInfo (const E *const edge) const
 
void init (const E *const start, const V *const vehicle)
 
bool step (const std::vector< ConnectionVector > &uplinks, const Unidirectional &otherSearch, double &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 (const std::vector< E * > &edges, bool forward)
 Constructor. More...
 

Private Attributes

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

Detailed Description

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

class for searching in one direction

Definition at line 69 of file CHRouter.h.

Member Typedef Documentation

◆ ConnectionVector

template<class E , class V >
typedef std::vector<typename CHBuilder<E, V>::Connection> CHRouter< E, V >::Unidirectional::ConnectionVector

Definition at line 127 of file CHRouter.h.

Constructor & Destructor Documentation

◆ Unidirectional()

template<class E , class V >
CHRouter< E, V >::Unidirectional::Unidirectional ( const std::vector< E * > &  edges,
bool  forward 
)
inline

Constructor.

Definition at line 72 of file CHRouter.h.

References CHRouter< E, V >::Unidirectional::myEdgeInfos.

Member Function Documentation

◆ found()

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

Definition at line 80 of file CHRouter.h.

References CHRouter< E, V >::Unidirectional::myFound.

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

Here is the caller graph for this function:

◆ getEdgeInfo() [1/2]

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

Definition at line 84 of file CHRouter.h.

References CHRouter< E, V >::Unidirectional::myEdgeInfos.

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

Here is the caller graph for this function:

◆ getEdgeInfo() [2/2]

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

Definition at line 88 of file CHRouter.h.

References CHRouter< E, V >::Unidirectional::myEdgeInfos.

◆ init()

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

◆ step()

template<class E , class V >
bool CHRouter< E, V >::Unidirectional::step ( const std::vector< ConnectionVector > &  uplinks,
const Unidirectional otherSearch,
double &  minTTSeen,
Meeting meeting 
)
inline

Field Documentation

◆ myAmForward

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

the role of this search

Definition at line 199 of file CHRouter.h.

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

◆ myComparator

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

Definition at line 207 of file CHRouter.h.

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

◆ myEdgeInfos

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

◆ myFound

template<class E , class V >
std::set<const E*> CHRouter< E, V >::Unidirectional::myFound
private

the set of visited (settled) Edges

Definition at line 203 of file CHRouter.h.

Referenced by CHRouter< E, V >::Unidirectional::found(), CHRouter< E, V >::Unidirectional::init(), and CHRouter< E, V >::Unidirectional::step().

◆ myFrontier

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

the min edge heap

Definition at line 201 of file CHRouter.h.

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

◆ myVehicle

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

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