PGROUTING
3.2
|
#include "pgr_linearContraction.hpp"
Public Member Functions | |
Pgr_linear () | |
void | calculateVertices (G &graph) |
void | doContraction (G &graph, Identifiers< V > forbidden_vertices) |
bool | is_contractible (G &graph, V v) |
void | one_cycle (G &graph, V v) |
void | operator() (G &graph, Identifiers< V > &forbidden_vertices) |
void | process_shortcut (G &graph, V u, V v, V w) |
u -—e1{v1}-—> v -—e2{v2}-—> w More... | |
void | setForbiddenVertices (Identifiers< V > forbidden_vertices) |
Private Types | |
typedef G::B_G | B_G |
typedef G::V | V |
typedef G::V_i | V_i |
Private Member Functions | |
int64_t | get_next_id () |
Private Attributes | |
int64_t | last_edge_id |
Identifiers< V > | m_forbiddenVertices |
Identifiers< V > | m_linearVertices |
Definition at line 49 of file pgr_linearContraction.hpp.
|
private |
Definition at line 53 of file pgr_linearContraction.hpp.
|
private |
Definition at line 51 of file pgr_linearContraction.hpp.
|
private |
Definition at line 52 of file pgr_linearContraction.hpp.
|
inline |
Definition at line 61 of file pgr_linearContraction.hpp.
|
inline |
Definition at line 79 of file pgr_linearContraction.hpp.
References Identifiers< T >::clear(), pgrouting::contraction::Pgr_linear< G >::is_contractible(), and pgrouting::contraction::Pgr_linear< G >::m_linearVertices.
Referenced by pgrouting::contraction::Pgr_linear< G >::doContraction().
|
inline |
Definition at line 91 of file pgr_linearContraction.hpp.
References pgrouting::contraction::Pgr_linear< G >::calculateVertices(), Identifiers< T >::empty(), Identifiers< T >::front(), pgrouting::contraction::Pgr_linear< G >::is_contractible(), pgrouting::contraction::Pgr_linear< G >::m_forbiddenVertices, pgrouting::contraction::Pgr_linear< G >::m_linearVertices, pgrouting::contraction::Pgr_linear< G >::one_cycle(), and pgassert.
Referenced by pgrouting::contraction::Pgr_linear< G >::operator()().
|
inlineprivate |
Definition at line 64 of file pgr_linearContraction.hpp.
References pgrouting::contraction::Pgr_linear< G >::last_edge_id.
Referenced by pgrouting::contraction::Pgr_linear< G >::process_shortcut().
|
inline |
Definition at line 75 of file pgr_linearContraction.hpp.
References Identifiers< T >::has(), and pgrouting::contraction::Pgr_linear< G >::m_forbiddenVertices.
Referenced by pgrouting::contraction::Pgr_linear< G >::calculateVertices(), pgrouting::contraction::Pgr_linear< G >::doContraction(), and pgrouting::contraction::Pgr_linear< G >::one_cycle().
|
inline |
Definition at line 103 of file pgr_linearContraction.hpp.
References Identifiers< T >::front(), pgrouting::contraction::Pgr_linear< G >::is_contractible(), pgrouting::contraction::Pgr_linear< G >::m_linearVertices, pgassert, Identifiers< T >::pop_front(), pgrouting::contraction::Pgr_linear< G >::process_shortcut(), and Identifiers< T >::size().
Referenced by pgrouting::contraction::Pgr_linear< G >::doContraction().
|
inline |
Definition at line 57 of file pgr_linearContraction.hpp.
References pgrouting::contraction::Pgr_linear< G >::doContraction().
|
inline |
u -—e1{v1}-—> v -—e2{v2}-—> w
e1: min cost edge from u to v e2: min cost edge from v to w
result: u —{v+v1+v2}—> w
Definition at line 166 of file pgr_linearContraction.hpp.
References pgrouting::CH_edge::contracted_vertices(), and pgrouting::contraction::Pgr_linear< G >::get_next_id().
Referenced by pgrouting::contraction::Pgr_linear< G >::one_cycle().
|
inline |
Definition at line 70 of file pgr_linearContraction.hpp.
References pgrouting::contraction::Pgr_linear< G >::m_forbiddenVertices.
|
private |
Definition at line 193 of file pgr_linearContraction.hpp.
Referenced by pgrouting::contraction::Pgr_linear< G >::get_next_id().
|
private |
Definition at line 191 of file pgr_linearContraction.hpp.
Referenced by pgrouting::contraction::Pgr_linear< G >::doContraction(), pgrouting::contraction::Pgr_linear< G >::is_contractible(), and pgrouting::contraction::Pgr_linear< G >::setForbiddenVertices().
|
private |
Definition at line 190 of file pgr_linearContraction.hpp.
Referenced by pgrouting::contraction::Pgr_linear< G >::calculateVertices(), pgrouting::contraction::Pgr_linear< G >::doContraction(), and pgrouting::contraction::Pgr_linear< G >::one_cycle().