@@ -72,7 +72,7 @@ fill_random_max_flow_graph(Graph& g, CapacityMap cap, ReverseEdgeMap rev,
72
72
// cannot use this, as we have no idea how properties are stored, right?
73
73
typename graph_traits< Graph >::edge_iterator ei, e_end;
74
74
for (boost::tie (ei, e_end) = edges (g); ei != e_end; ++ei)
75
- cap[ *ei] = int_gen ();
75
+ put ( cap, *ei, int_gen () );
76
76
77
77
// get source and sink node
78
78
vertex_descriptor s = random_vertex (g, gen);
@@ -96,9 +96,9 @@ fill_random_max_flow_graph(Graph& g, CapacityMap cap, ReverseEdgeMap rev,
96
96
boost::tie (new_edge, inserted)
97
97
= add_edge (source_vertex, target_vertex, g);
98
98
assert (inserted);
99
- rev[ old_edge] = new_edge;
100
- rev[ new_edge] = old_edge;
101
- cap[ new_edge] = 0 ;
99
+ put ( rev, old_edge, new_edge) ;
100
+ put ( rev, new_edge, old_edge) ;
101
+ put ( cap, new_edge, 0 ) ;
102
102
}
103
103
return std::make_pair (s, t);
104
104
}
@@ -188,10 +188,24 @@ long test_bundled_properties(int n_verts, int n_edges, std::size_t seed)
188
188
boost::tie (src, sink)
189
189
= fill_random_max_flow_graph (g, get (&tEdge::edge_capacity, g),
190
190
get (&tEdge::edge_reverse, g), n_verts, n_edges, seed);
191
- return boykov_kolmogorov_max_flow (g, get (&tEdge::edge_capacity, g),
192
- get (&tEdge::edge_residual_capacity, g), get (&tEdge::edge_reverse, g),
193
- get (&tVertex::vertex_predecessor, g), get (&tVertex::vertex_color, g),
194
- get (&tVertex::vertex_distance, g), get (vertex_index, g), src, sink);
191
+
192
+ long flow_unnamed_overload = boykov_kolmogorov_max_flow (g,
193
+ get (&tEdge::edge_capacity, g), get (&tEdge::edge_residual_capacity, g),
194
+ get (&tEdge::edge_reverse, g), get (&tVertex::vertex_predecessor, g),
195
+ get (&tVertex::vertex_color, g), get (&tVertex::vertex_distance, g),
196
+ get (vertex_index, g), src, sink);
197
+
198
+ long flow_named_overload = boykov_kolmogorov_max_flow (g, src, sink,
199
+ capacity_map (get (&tEdge::edge_capacity, g))
200
+ .residual_capacity_map (get (&tEdge::edge_residual_capacity, g))
201
+ .reverse_edge_map (get (&tEdge::edge_reverse, g))
202
+ .predecessor_map (get (&tVertex::vertex_predecessor, g))
203
+ .color_map (get (&tVertex::vertex_color, g))
204
+ .distance_map (get (&tVertex::vertex_distance, g))
205
+ .vertex_index_map (get (vertex_index, g)));
206
+
207
+ BOOST_TEST (flow_unnamed_overload == flow_named_overload);
208
+ return flow_named_overload;
195
209
}
196
210
197
211
long test_overloads (int n_verts, int n_edges, std::size_t seed)
0 commit comments