// Copyright (C) 2002 Trustees of Indiana University // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include #include #include #include using namespace boost; #include using namespace std; int test_main(int, char*[]) { typedef adjacency_list > Graph; Graph graph; Graph::vertex_descriptor v1, v2, v3, v4; v1 = add_vertex(graph); v2 = add_vertex(graph); v3 = add_vertex(graph); v4 = add_vertex(graph); Graph::edge_descriptor e; e = add_edge(0, 1, graph).first; put(edge_weight, graph, e, 1); e = add_edge(1, 2, graph).first; put(edge_weight, graph, e, 1); e = add_edge(3, 1, graph).first; put(edge_weight, graph, e, 5); vector_property_map distance; dag_shortest_paths(graph, 0, distance_map(distance) .distance_compare(std::greater()) .distance_inf((std::numeric_limits::min)()) .distance_zero(0)); cout << distance[2] << "\n"; BOOST_CHECK(distance[2] == 2); return 0; }