Fast map matching  0.1.0
graph.hpp
1 
11 #ifndef FMM_GRAPH_TYPE_HPP
12 #define FMM_GRAPH_TYPE_HPP
13 
14 #include <boost/graph/graph_traits.hpp>
15 #include <boost/graph/adjacency_list.hpp>
16 #include <boost/property_map/property_map.hpp>
17 
18 #include "network/type.hpp"
19 
20 namespace FMM{
21 namespace NETWORK{
22 
27 {
29  double length;
30 };
31 
35 typedef boost::adjacency_list <boost::vecS, boost::vecS, boost::directedS,
36  boost::no_property, EdgeProperty> Graph_T;
37 
41 typedef Graph_T::edge_descriptor EdgeDescriptor;
45 typedef boost::graph_traits<Graph_T>::vertex_iterator NodeIterator;
49 typedef boost::graph_traits<Graph_T>::out_edge_iterator OutEdgeIterator;
50 
55 typedef std::unordered_map<NodeIndex,NodeIndex> PredecessorMap;
56 
61 typedef std::unordered_map<NodeIndex,double> DistanceMap;
62 }
63 }
64 
65 #endif // FMM_GRAPH_TYPE_HPP
FMM::NETWORK::Graph_T
boost::adjacency_list< boost::vecS, boost::vecS, boost::directedS, boost::no_property, EdgeProperty > Graph_T
Boost graph type.
Definition: graph.hpp:36
FMM::NETWORK::EdgeDescriptor
Graph_T::edge_descriptor EdgeDescriptor
Boost graph edge type.
Definition: graph.hpp:41
FMM::NETWORK::DistanceMap
std::unordered_map< NodeIndex, double > DistanceMap
Distance map.
Definition: graph.hpp:61
FMM
Fast map matching.
Definition: geom_algorithm.hpp:17
FMM::NETWORK::OutEdgeIterator
boost::graph_traits< Graph_T >::out_edge_iterator OutEdgeIterator
Boost graph out edge iterator.
Definition: graph.hpp:49
FMM::NETWORK::EdgeProperty
Road edge property.
Definition: graph.hpp:26
FMM::NETWORK::EdgeIndex
unsigned int EdgeIndex
Edge Index in the network, range from [0,num_edges-1 ].
Definition: type.hpp:26
FMM::NETWORK::NodeIterator
boost::graph_traits< Graph_T >::vertex_iterator NodeIterator
Boost graph node iterator.
Definition: graph.hpp:45
FMM::NETWORK::PredecessorMap
std::unordered_map< NodeIndex, NodeIndex > PredecessorMap
Predecessor Map.
Definition: graph.hpp:55
FMM::NETWORK::EdgeProperty::length
double length
length of the edge
Definition: graph.hpp:29
FMM::NETWORK::EdgeProperty::index
EdgeIndex index
Index of the edge.
Definition: graph.hpp:28