pgRouting  2.2
pgRouting extends the PostGIS / PostgreSQL geospatial database to provide geospatial routing functionality.
 All Classes Functions Variables Pages
Pgr_dijkstra< G > Class Template Reference
Collaboration diagram for Pgr_dijkstra< G >:

Classes

class  dijkstra_distance_visitor
 class for stopping when a distance/cost has being surpassed More...
 
class  dijkstra_many_goal_visitor
 class for stopping when all targets are found More...
 
class  dijkstra_one_goal_visitor
 class for stopping when 1 target is found More...
 
struct  found_goals
 exception for termination More...
 

Public Member Functions

drivingDistance
void drivingDistance (G &graph, Path &path, int64_t start_vertex, double distance)
 1 to distance More...
 
void drivingDistance (G &graph, std::deque< Path > &paths, std::vector< int64_t > start_vertex, double distance, bool equiCostFlag)
 many to distance More...
 
Dijkstra
void dijkstra (G &graph, Path &path, int64_t start_vertex, int64_t end_vertex, bool only_cost=false)
 one to one More...
 
void dijkstra (G &graph, std::deque< Path > &paths, const std::vector< int64_t > &start_vertex, int64_t end_vertex, bool only_cost=false)
 Many to one. More...
 
void dijkstra (G &graph, std::deque< Path > &paths, const std::vector< int64_t > &start_vertex, const std::vector< int64_t > &end_vertex, bool only_cost=false)
 Many to Many. More...
 
void dijkstra (G &graph, std::deque< Path > &paths, int64_t start_vertex, const std::vector< int64_t > &end_vertex, bool only_cost=false)
 one to Many More...
 

Private Member Functions

bool dijkstra_1_to_1 (G &graph, V source, V target)
 Call to Dijkstra 1 source to 1 target. More...
 
bool dijkstra_1_to_distance (G &graph, V source, double distance)
 Call to Dijkstra 1 source to distance. More...
 
bool dijkstra_1_to_many (G &graph, V source, const std::vector< V > &targets)
 Call to Dijkstra 1 source to many targets. More...
 

Private Attributes

Variables
std::vector< V > predecessors
 
std::vector< double > distances
 
std::deque< V > nodesInDistance
 

Detailed Description

template<class G>
class Pgr_dijkstra< G >

Definition at line 54 of file pgr_dijkstra.hpp.

Member Function Documentation

template<class G >
void Pgr_dijkstra< G >::dijkstra ( G &  graph,
Path path,
int64_t  start_vertex,
int64_t  end_vertex,
bool  only_cost = false 
)

one to one

Dijkstra 1 to 1.

Definition at line 535 of file pgr_dijkstra.hpp.

Referenced by Pgr_ksp< G >::doNextCycle(), and Pgr_ksp< G >::getFirstSolution().

template<class G >
void Pgr_dijkstra< G >::dijkstra ( G &  graph,
std::deque< Path > &  paths,
const std::vector< int64_t > &  start_vertex,
int64_t  end_vertex,
bool  only_cost = false 
)

Many to one.

Definition at line 621 of file pgr_dijkstra.hpp.

template<class G >
void Pgr_dijkstra< G >::dijkstra ( G &  graph,
std::deque< Path > &  paths,
const std::vector< int64_t > &  start_vertex,
const std::vector< int64_t > &  end_vertex,
bool  only_cost = false 
)

Many to Many.

Definition at line 645 of file pgr_dijkstra.hpp.

template<class G >
void Pgr_dijkstra< G >::dijkstra ( G &  graph,
std::deque< Path > &  paths,
int64_t  start_vertex,
const std::vector< int64_t > &  end_vertex,
bool  only_cost = false 
)

one to Many

Dijkstra 1 to many.

Definition at line 572 of file pgr_dijkstra.hpp.

template<class G >
bool Pgr_dijkstra< G >::dijkstra_1_to_1 ( G &  graph,
source,
target 
)
private

Call to Dijkstra 1 source to 1 target.

Definition at line 670 of file pgr_dijkstra.hpp.

template<class G >
bool Pgr_dijkstra< G >::dijkstra_1_to_distance ( G &  graph,
source,
double  distance 
)
private

Call to Dijkstra 1 source to distance.

Definition at line 692 of file pgr_dijkstra.hpp.

template<class G >
bool Pgr_dijkstra< G >::dijkstra_1_to_many ( G &  graph,
source,
const std::vector< V > &  targets 
)
private

Call to Dijkstra 1 source to many targets.

Definition at line 713 of file pgr_dijkstra.hpp.

template<class G >
void Pgr_dijkstra< G >::drivingDistance ( G &  graph,
Path path,
int64_t  start_vertex,
double  distance 
)

1 to distance

Definition at line 499 of file pgr_dijkstra.hpp.

template<class G >
void Pgr_dijkstra< G >::drivingDistance ( G &  graph,
std::deque< Path > &  paths,
std::vector< int64_t >  start_vertex,
double  distance,
bool  equiCostFlag 
)

many to distance

Definition at line 476 of file pgr_dijkstra.hpp.


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