Hello everyone
I wanted to inform you that I won’t be able to attend today’s meeting due to a family function at my home. I sincerely apologize for the inconvenience and appreciate your understanding. This is a one-time situation, and I will resume work as usual starting tomorrow.
In the meantime, I am currently encountering a compilation error in my code that I would appreciate some guidance on. The issue occurs when compiling metrics_driver.cpp
and appears to be related to Boost Graph Library’s expectations from the Pgr_base_graph
class. Below is the error:
In file included from /usr/include/boost/graph/adjacency_list.hpp:24, from /home/saloni/GSoC-pgRouting/include/metrics/bandwidth.hpp:36, from /home/saloni/GSoC-pgRouting/src/metrics/metrics_driver.cpp:36: /usr/include/boost/graph/graph_traits.hpp: In instantiation of ‘struct boost::graph_traits<pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false> >’: /usr/include/boost/graph/bandwidth.hpp:67:52: required by substitution of ‘template<class Graph> typename boost::graph_traits<G>::vertices_size_type boost::bandwidth(const Graph&) [with Graph = pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>]’ /home/saloni/GSoC-pgRouting/src/metrics/metrics_driver.cpp:82:31: required from here /usr/include/boost/graph/graph_traits.hpp:61:43: error: no type named ‘vertex_descriptor’ in ‘class pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>’ 61 | typedef typename G::vertex_descriptor vertex_descriptor; | ^~~~~~~~~~~~~~~~~ /usr/include/boost/graph/graph_traits.hpp:62:41: error: no type named ‘edge_descriptor’ in ‘class pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>’ 62 | typedef typename G::edge_descriptor edge_descriptor; | ^~~~~~~~~~~~~~~ /usr/include/boost/graph/graph_traits.hpp:69:43: error: no type named ‘directed_category’ in ‘class pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>’ 69 | typedef typename G::directed_category directed_category; | ^~~~~~~~~~~~~~~~~ /usr/include/boost/graph/graph_traits.hpp:70:48: error: no type named ‘edge_parallel_category’ in ‘class pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>’ 70 | typedef typename G::edge_parallel_category edge_parallel_category; | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/graph/graph_traits.hpp:71:44: error: no type named ‘traversal_category’ in ‘class pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>’ 71 | typedef typename G::traversal_category traversal_category; | ^~~~~~~~~~~~~~~~~~ /home/saloni/GSoC-pgRouting/src/metrics/metrics_driver.cpp: In function ‘void do_metrics(std::string, int, IID_t_rt**, size_t*, char**, char**)’: /home/saloni/GSoC-pgRouting/src/metrics/metrics_driver.cpp:82:31: error: call of overloaded ‘bandwidth(pgrouting::UndirectedGraph&)’ is ambiguous 82 | result = bandwidth(undigraph); | ~~~~~~~~~^~~~~~~~~~~ /home/saloni/GSoC-pgRouting/include/metrics/bandwidth.hpp:46:10: note: candidate: ‘uint64_t pgrouting::metrics::bandwidth(const G&) [with G = pgrouting::graph::Pgr_base_graph<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>; uint64_t = long unsigned int]’ 46 | uint64_t bandwidth(const G &graph) { | ^~~~~~~~~ In file included from /home/saloni/GSoC-pgRouting/include/metrics/bandwidth.hpp:37: /usr/include/boost/graph/bandwidth.hpp:67:52: note: candidate: ‘typename boost::graph_traits<G>::vertices_size_type boost::bandwidth(const Graph&) [with Graph = pgrouting::graph::Pgr_base_graph<adjacency_list<vecS, vecS, undirectedS, pgrouting::Basic_vertex, pgrouting::Basic_edge>, pgrouting::Basic_vertex, pgrouting::Basic_edge, false>; typename graph_traits<G>::vertices_size_type = long unsigned int]’ 67 | typename graph_traits< Graph >::vertices_size_type bandwidth(const Graph& g) | ^~~~~~~~~ make[2]: *** [src/metrics/CMakeFiles/metrics.dir/build.make:121: src/metrics/CMakeFiles/metrics.dir/metrics_driver.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:2888: src/metrics/CMakeFiles/metrics.dir/all] Error 2 make: *** [Makefile:136: all] Error 2
Also could you please inform me that what would be the motive for this week so that I can start working on that.
Thankyou!