|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r65751 - in branches/release: . boost boost/algorithm/string boost/archive boost/bimap boost/detail boost/filesystem boost/functional/hash boost/fusion boost/gil boost/graph boost/graph/detail boost/interprocess boost/intrusive boost/io boost/iostreams boost/msm boost/numeric/ublas boost/program_options boost/property_tree boost/python boost/range boost/serialization boost/signals boost/signals2 boost/spirit boost/spirit/home boost/spirit/home/karma boost/spirit/home/support boost/statechart boost/system boost/thread boost/tr1 boost/unordered boost/utility boost/uuid boost/variant boost/wave doc libs libs/algorithm/string libs/array/doc libs/array/test libs/bimap libs/filesystem libs/functional/hash libs/fusion libs/graph/doc libs/graph/doc/stoer_wagner_imgs libs/graph/example libs/graph/test libs/graph/test/prgen_input_graphs libs/graph_parallel libs/interprocess libs/intrusive libs/iostreams libs/math/doc/sf_and_dist libs/mpi/build libs/mpl/doc/refmanual libs/mpl/doc/src/refmanual libs/msm libs/numeric/ublas libs/numeric/ublas/doc libs/program_options libs/property_tree libs/python libs/range libs/serialization libs/serialization/doc libs/serialization/test libs/signals libs/spirit libs/spirit/classic/example libs/spirit/doc libs/spirit/example libs/spirit/phoenix libs/spirit/test libs/spirit/test/qi libs/statechart libs/static_assert libs/system libs/thread libs/timer libs/tr1 libs/unordered libs/utility libs/utility/swap/test libs/uuid libs/wave more more/getting_started status tools tools/bcp tools/boostbook tools/build/v2 tools/inspect tools/quickbook tools/regression tools/release tools/wave
From: jewillco_at_[hidden]
Date: 2010-10-04 14:50:44
Author: jewillco
Date: 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
New Revision: 65751
URL: http://svn.boost.org/trac/boost/changeset/65751
Log:
Merged changes r64063 (W. P. McNeill examples), r65590 (stoer_wagner_min_cut from Daniel Trebbien), 64187 (DIMACS reader updates), and 64762 (DIMACS reader updates)
Added:
branches/release/boost/graph/buffer_concepts.hpp
- copied unchanged from r65590, /trunk/boost/graph/buffer_concepts.hpp
branches/release/boost/graph/stoer_wagner_min_cut.hpp
- copied unchanged from r65590, /trunk/boost/graph/stoer_wagner_min_cut.hpp
branches/release/libs/graph/doc/KeyedUpdatableQueue.html
- copied unchanged from r65590, /trunk/libs/graph/doc/KeyedUpdatableQueue.html
branches/release/libs/graph/doc/UpdatableQueue.html
- copied unchanged from r65590, /trunk/libs/graph/doc/UpdatableQueue.html
branches/release/libs/graph/doc/stoer_wagner_imgs/
- copied from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/
branches/release/libs/graph/doc/stoer_wagner_imgs/6e4.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/6e4.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/8b7.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/8b7.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/digraph1-min-cut.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/digraph1-min-cut.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/digraph1-min-cut.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/digraph1-min-cut.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/digraph1.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/digraph1.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/digraph1.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/digraph1.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/f79.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/f79.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-c1.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-c1.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-c1.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-c1.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-min-cut.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-min-cut.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-min-cut.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example-min-cut.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner-example.gif
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner.cpp.dot
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner.cpp.dot
branches/release/libs/graph/doc/stoer_wagner_imgs/stoer_wagner.cpp.gif
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_imgs/stoer_wagner.cpp.gif
branches/release/libs/graph/doc/stoer_wagner_min_cut.html
- copied unchanged from r65590, /trunk/libs/graph/doc/stoer_wagner_min_cut.html
branches/release/libs/graph/example/astar_maze.cpp
- copied unchanged from r64063, /trunk/libs/graph/example/astar_maze.cpp
branches/release/libs/graph/example/implicit_graph.cpp
- copied unchanged from r64063, /trunk/libs/graph/example/implicit_graph.cpp
branches/release/libs/graph/example/stoer_wagner.cpp
- copied unchanged from r65590, /trunk/libs/graph/example/stoer_wagner.cpp
branches/release/libs/graph/test/prgen_input_graphs/
- copied from r65590, /trunk/libs/graph/test/prgen_input_graphs/
branches/release/libs/graph/test/prgen_input_graphs/prgen_20_70_2.net
- copied unchanged from r65590, /trunk/libs/graph/test/prgen_input_graphs/prgen_20_70_2.net
branches/release/libs/graph/test/prgen_input_graphs/prgen_50_40_2.net
- copied unchanged from r65590, /trunk/libs/graph/test/prgen_input_graphs/prgen_50_40_2.net
branches/release/libs/graph/test/prgen_input_graphs/prgen_50_70_2.net
- copied unchanged from r65590, /trunk/libs/graph/test/prgen_input_graphs/prgen_50_70_2.net
branches/release/libs/graph/test/stoer_wagner_test.cpp
- copied unchanged from r65590, /trunk/libs/graph/test/stoer_wagner_test.cpp
Properties modified:
branches/release/ (props changed)
branches/release/INSTALL (props changed)
branches/release/Jamroot (props changed)
branches/release/LICENSE_1_0.txt (props changed)
branches/release/boost/ (props changed)
branches/release/boost-build.jam (props changed)
branches/release/boost.css (props changed)
branches/release/boost.png (props changed)
branches/release/boost/algorithm/string/ (props changed)
branches/release/boost/archive/ (props changed)
branches/release/boost/archive/basic_archive.hpp (props changed)
branches/release/boost/array.hpp (props changed)
branches/release/boost/bimap/ (props changed)
branches/release/boost/config.hpp (props changed)
branches/release/boost/detail/ (props changed)
branches/release/boost/detail/endian.hpp (props changed)
branches/release/boost/filesystem/ (props changed)
branches/release/boost/filesystem.hpp (props changed)
branches/release/boost/functional/hash/ (props changed)
branches/release/boost/fusion/ (props changed)
branches/release/boost/gil/ (props changed)
branches/release/boost/graph/ (props changed)
branches/release/boost/interprocess/ (props changed)
branches/release/boost/intrusive/ (props changed)
branches/release/boost/io/ (props changed)
branches/release/boost/iostreams/ (props changed)
branches/release/boost/math_fwd.hpp (props changed)
branches/release/boost/msm/ (props changed)
branches/release/boost/numeric/ublas/ (props changed)
branches/release/boost/numeric/ublas/functional.hpp (props changed)
branches/release/boost/program_options/ (props changed)
branches/release/boost/property_tree/ (props changed)
branches/release/boost/python/ (props changed)
branches/release/boost/range/ (props changed)
branches/release/boost/serialization/ (props changed)
branches/release/boost/signals/ (props changed)
branches/release/boost/signals2/ (props changed)
branches/release/boost/signals2.hpp (props changed)
branches/release/boost/spirit/ (props changed)
branches/release/boost/spirit/home/ (props changed)
branches/release/boost/spirit/home/karma/ (props changed)
branches/release/boost/spirit/home/support/attributes.hpp (props changed)
branches/release/boost/statechart/ (props changed)
branches/release/boost/system/ (props changed)
branches/release/boost/thread/ (props changed)
branches/release/boost/thread.hpp (props changed)
branches/release/boost/tr1/ (props changed)
branches/release/boost/unordered/ (props changed)
branches/release/boost/utility/value_init.hpp (props changed)
branches/release/boost/uuid/ (props changed)
branches/release/boost/variant/ (props changed)
branches/release/boost/version.hpp (props changed)
branches/release/boost/wave/ (props changed)
branches/release/bootstrap.bat (props changed)
branches/release/bootstrap.sh (props changed)
branches/release/doc/ (props changed)
branches/release/index.htm (props changed)
branches/release/index.html (props changed)
branches/release/libs/ (props changed)
branches/release/libs/algorithm/string/ (props changed)
branches/release/libs/array/doc/array.xml (props changed)
branches/release/libs/array/test/array0.cpp (props changed)
branches/release/libs/array/test/array2.cpp (props changed)
branches/release/libs/bimap/ (props changed)
branches/release/libs/filesystem/ (props changed)
branches/release/libs/functional/hash/ (props changed)
branches/release/libs/fusion/ (props changed)
branches/release/libs/graph_parallel/ (props changed)
branches/release/libs/interprocess/ (props changed)
branches/release/libs/intrusive/ (props changed)
branches/release/libs/iostreams/ (props changed)
branches/release/libs/libraries.htm (props changed)
branches/release/libs/maintainers.txt (props changed)
branches/release/libs/math/doc/sf_and_dist/ (props changed)
branches/release/libs/mpi/build/ (props changed)
branches/release/libs/mpl/doc/refmanual/broken-compiler-workarounds.html (props changed)
branches/release/libs/mpl/doc/refmanual/categorized-index-concepts.html (props changed)
branches/release/libs/mpl/doc/refmanual/cfg-no-preprocessed-headers.html (props changed)
branches/release/libs/mpl/doc/refmanual/composition-and-argument-binding.html (props changed)
branches/release/libs/mpl/doc/refmanual/data-types-concepts.html (props changed)
branches/release/libs/mpl/doc/refmanual/data-types-miscellaneous.html (props changed)
branches/release/libs/mpl/doc/refmanual/extensible-associative-sequence.html (props changed)
branches/release/libs/mpl/doc/refmanual/inserter-class.html (props changed)
branches/release/libs/mpl/doc/refmanual/tag-dispatched-metafunction.html (props changed)
branches/release/libs/mpl/doc/refmanual/trivial-metafunctions-summary.html (props changed)
branches/release/libs/mpl/doc/src/refmanual/Iterators-Iterator.rst (props changed)
branches/release/libs/msm/ (props changed)
branches/release/libs/numeric/ublas/ (props changed)
branches/release/libs/numeric/ublas/doc/ (props changed)
branches/release/libs/program_options/ (props changed)
branches/release/libs/property_tree/ (props changed)
branches/release/libs/python/ (props changed)
branches/release/libs/range/ (props changed)
branches/release/libs/serialization/ (props changed)
branches/release/libs/serialization/doc/ (props changed)
branches/release/libs/serialization/test/ (props changed)
branches/release/libs/serialization/test/A.cpp (props changed)
branches/release/libs/serialization/test/A.hpp (props changed)
branches/release/libs/serialization/test/A.ipp (props changed)
branches/release/libs/serialization/test/B.hpp (props changed)
branches/release/libs/serialization/test/C.hpp (props changed)
branches/release/libs/serialization/test/D.hpp (props changed)
branches/release/libs/serialization/test/J.hpp (props changed)
branches/release/libs/serialization/test/Jamfile.v2 (props changed)
branches/release/libs/serialization/test/base.hpp (props changed)
branches/release/libs/serialization/test/binary_archive.hpp (props changed)
branches/release/libs/serialization/test/binary_warchive.hpp (props changed)
branches/release/libs/serialization/test/derived2.hpp (props changed)
branches/release/libs/serialization/test/dll_a.cpp (props changed)
branches/release/libs/serialization/test/dll_base.cpp (props changed)
branches/release/libs/serialization/test/dll_derived2.cpp (props changed)
branches/release/libs/serialization/test/polymorphic_array_binary_archive.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_base.cpp (props changed)
branches/release/libs/serialization/test/polymorphic_base.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_binary_archive.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_derived1.cpp (props changed)
branches/release/libs/serialization/test/polymorphic_derived1.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_derived2.cpp (props changed)
branches/release/libs/serialization/test/polymorphic_derived2.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_text_archive.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_text_warchive.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_xml_archive.hpp (props changed)
branches/release/libs/serialization/test/polymorphic_xml_warchive.hpp (props changed)
branches/release/libs/serialization/test/portable_binary_archive.hpp (props changed)
branches/release/libs/serialization/test/test_array.cpp (props changed)
branches/release/libs/serialization/test/test_binary.cpp (props changed)
branches/release/libs/serialization/test/test_bitset.cpp (props changed)
branches/release/libs/serialization/test/test_check.cpp (props changed)
branches/release/libs/serialization/test/test_class_info_load.cpp (props changed)
branches/release/libs/serialization/test/test_class_info_save.cpp (props changed)
branches/release/libs/serialization/test/test_codecvt_null.cpp (props changed)
branches/release/libs/serialization/test/test_complex.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail1.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail1_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail2.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail2_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail3.cpp (props changed)
branches/release/libs/serialization/test/test_const_load_fail3_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_pass.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn1.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn1_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn2.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn2_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn3.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn3_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn4.cpp (props changed)
branches/release/libs/serialization/test/test_const_save_warn4_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_contained_class.cpp (props changed)
branches/release/libs/serialization/test/test_cyclic_ptrs.cpp (props changed)
branches/release/libs/serialization/test/test_decl.hpp (props changed)
branches/release/libs/serialization/test/test_delete_pointer.cpp (props changed)
branches/release/libs/serialization/test/test_deque.cpp (props changed)
branches/release/libs/serialization/test/test_derived.cpp (props changed)
branches/release/libs/serialization/test/test_derived_class.cpp (props changed)
branches/release/libs/serialization/test/test_derived_class_ptr.cpp (props changed)
branches/release/libs/serialization/test/test_diamond.cpp (props changed)
branches/release/libs/serialization/test/test_diamond_complex.cpp (props changed)
branches/release/libs/serialization/test/test_dll_exported.cpp (props changed)
branches/release/libs/serialization/test/test_dll_plugin.cpp (props changed)
branches/release/libs/serialization/test/test_dll_simple.cpp (props changed)
branches/release/libs/serialization/test/test_exported.cpp (props changed)
branches/release/libs/serialization/test/test_inclusion.cpp (props changed)
branches/release/libs/serialization/test/test_iterators.cpp (props changed)
branches/release/libs/serialization/test/test_iterators_base64.cpp (props changed)
branches/release/libs/serialization/test/test_list.cpp (props changed)
branches/release/libs/serialization/test/test_list_ptrs.cpp (props changed)
branches/release/libs/serialization/test/test_map.cpp (props changed)
branches/release/libs/serialization/test/test_mi.cpp (props changed)
branches/release/libs/serialization/test/test_mult_archive_types.cpp (props changed)
branches/release/libs/serialization/test/test_multiple_inheritance.cpp (props changed)
branches/release/libs/serialization/test/test_multiple_ptrs.cpp (props changed)
branches/release/libs/serialization/test/test_new_operator.cpp (props changed)
branches/release/libs/serialization/test/test_no_rtti.cpp (props changed)
branches/release/libs/serialization/test/test_non_default_ctor.cpp (props changed)
branches/release/libs/serialization/test/test_non_default_ctor2.cpp (props changed)
branches/release/libs/serialization/test/test_non_intrusive.cpp (props changed)
branches/release/libs/serialization/test/test_not_serializable.cpp (props changed)
branches/release/libs/serialization/test/test_null_ptr.cpp (props changed)
branches/release/libs/serialization/test/test_nvp.cpp (props changed)
branches/release/libs/serialization/test/test_object.cpp (props changed)
branches/release/libs/serialization/test/test_optional.cpp (props changed)
branches/release/libs/serialization/test/test_pimpl.cpp (props changed)
branches/release/libs/serialization/test/test_polymorphic.cpp (props changed)
branches/release/libs/serialization/test/test_polymorphic2.cpp (props changed)
branches/release/libs/serialization/test/test_polymorphic2.hpp (props changed)
branches/release/libs/serialization/test/test_polymorphic2imp.cpp (props changed)
branches/release/libs/serialization/test/test_polymorphic_A.cpp (props changed)
branches/release/libs/serialization/test/test_polymorphic_A.hpp (props changed)
branches/release/libs/serialization/test/test_primitive.cpp (props changed)
branches/release/libs/serialization/test/test_private_base.cpp (props changed)
branches/release/libs/serialization/test/test_private_ctor.cpp (props changed)
branches/release/libs/serialization/test/test_recursion.cpp (props changed)
branches/release/libs/serialization/test/test_registered.cpp (props changed)
branches/release/libs/serialization/test/test_reset_object_address.cpp (props changed)
branches/release/libs/serialization/test/test_set.cpp (props changed)
branches/release/libs/serialization/test/test_shared_ptr.cpp (props changed)
branches/release/libs/serialization/test/test_shared_ptr_132.cpp (props changed)
branches/release/libs/serialization/test/test_shared_ptr_multi_base.cpp (props changed)
branches/release/libs/serialization/test/test_simple_class.cpp (props changed)
branches/release/libs/serialization/test/test_simple_class_ptr.cpp (props changed)
branches/release/libs/serialization/test/test_singleton.cpp (props changed)
branches/release/libs/serialization/test/test_smart_cast.cpp (props changed)
branches/release/libs/serialization/test/test_split.cpp (props changed)
branches/release/libs/serialization/test/test_static_warning.cpp (props changed)
branches/release/libs/serialization/test/test_tools.hpp (props changed)
branches/release/libs/serialization/test/test_tracking.cpp (props changed)
branches/release/libs/serialization/test/test_traits_fail.cpp (props changed)
branches/release/libs/serialization/test/test_traits_pass.cpp (props changed)
branches/release/libs/serialization/test/test_unregistered.cpp (props changed)
branches/release/libs/serialization/test/test_utf8_codecvt.cpp (props changed)
branches/release/libs/serialization/test/test_valarray.cpp (props changed)
branches/release/libs/serialization/test/test_variant.cpp (props changed)
branches/release/libs/serialization/test/test_vector.cpp (props changed)
branches/release/libs/serialization/test/test_void_cast.cpp (props changed)
branches/release/libs/serialization/test/text_archive.hpp (props changed)
branches/release/libs/serialization/test/text_warchive.hpp (props changed)
branches/release/libs/serialization/test/xml_archive.hpp (props changed)
branches/release/libs/serialization/test/xml_warchive.hpp (props changed)
branches/release/libs/signals/ (props changed)
branches/release/libs/spirit/ (props changed)
branches/release/libs/spirit/classic/example/ (props changed)
branches/release/libs/spirit/doc/ (props changed)
branches/release/libs/spirit/example/ (props changed)
branches/release/libs/spirit/phoenix/ (props changed)
branches/release/libs/spirit/test/ (props changed)
branches/release/libs/spirit/test/qi/optional.cpp (props changed)
branches/release/libs/statechart/ (props changed)
branches/release/libs/static_assert/ (props changed)
branches/release/libs/system/ (props changed)
branches/release/libs/thread/ (props changed)
branches/release/libs/timer/ (props changed)
branches/release/libs/tr1/ (props changed)
branches/release/libs/unordered/ (props changed)
branches/release/libs/utility/swap.html (props changed)
branches/release/libs/utility/swap/test/std_bitset.cpp (props changed)
branches/release/libs/utility/value_init.htm (props changed)
branches/release/libs/utility/value_init_test.cpp (props changed)
branches/release/libs/uuid/ (props changed)
branches/release/libs/wave/ (props changed)
branches/release/more/ (props changed)
branches/release/more/getting_started/ (props changed)
branches/release/rst.css (props changed)
branches/release/status/ (props changed)
branches/release/status/Jamfile.v2 (props changed)
branches/release/tools/ (props changed)
branches/release/tools/bcp/ (props changed)
branches/release/tools/boostbook/ (props changed)
branches/release/tools/build/v2/ (props changed)
branches/release/tools/inspect/ (props changed)
branches/release/tools/quickbook/ (props changed)
branches/release/tools/regression/ (props changed)
branches/release/tools/release/ (props changed)
branches/release/tools/wave/ (props changed)
Text files modified:
branches/release/boost/graph/detail/d_ary_heap.hpp | 6 +++
branches/release/boost/graph/graph_concepts.hpp | 24 -----------
branches/release/boost/graph/named_function_params.hpp | 79 +++++++++++++++++++++++++++++++++++++--
branches/release/boost/graph/read_dimacs.hpp | 45 +++++++++++++++++-----
branches/release/libs/graph/doc/BUILD_DOCS.sh | 11 +++++
branches/release/libs/graph/doc/graph_theory_review.html | 36 ++++++++++++++++++
branches/release/libs/graph/doc/read_dimacs.html | 34 +++++++++++++---
branches/release/libs/graph/doc/table_of_contents.html | 3 +
branches/release/libs/graph/example/Jamfile.v2 | 3 +
branches/release/libs/graph/test/Jamfile.v2 | 3 +
10 files changed, 198 insertions(+), 46 deletions(-)
Modified: branches/release/boost/graph/detail/d_ary_heap.hpp
==============================================================================
--- branches/release/boost/graph/detail/d_ary_heap.hpp (original)
+++ branches/release/boost/graph/detail/d_ary_heap.hpp 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -92,6 +92,8 @@
public:
typedef typename Container::size_type size_type;
typedef Value value_type;
+ typedef typename boost::property_traits<DistanceMap>::value_type key_type;
+ typedef DistanceMap key_map;
d_ary_heap_indirect(DistanceMap distance,
IndexInHeapPropertyMap index_in_heap,
@@ -164,6 +166,10 @@
verify_heap();
}
+ DistanceMap keys() const {
+ return distance;
+ }
+
private:
Compare compare;
Container data;
Modified: branches/release/boost/graph/graph_concepts.hpp
==============================================================================
--- branches/release/boost/graph/graph_concepts.hpp (original)
+++ branches/release/boost/graph/graph_concepts.hpp 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -18,6 +18,7 @@
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/properties.hpp>
#include <boost/graph/numeric_values.hpp>
+#include <boost/graph/buffer_concepts.hpp>
#include <boost/concept_check.hpp>
#include <boost/detail/workaround.hpp>
@@ -493,28 +494,6 @@
Graph g;
};
- // This needs to move out of the graph library
- BOOST_concept(Buffer,(B))
- {
- BOOST_CONCEPT_USAGE(Buffer) {
- b.push(t);
- b.pop();
- typename B::value_type& v = b.top();
- const_constraints(b);
- ignore_unused_variable_warning(v);
- }
- void const_constraints(const B& cb) {
- const typename B::value_type& v = cb.top();
- n = cb.size();
- bool e = cb.empty();
- ignore_unused_variable_warning(v);
- ignore_unused_variable_warning(e);
- }
- typename B::size_type n;
- typename B::value_type t;
- B b;
- };
-
BOOST_concept(ColorValue,(C))
: EqualityComparable<C>
, DefaultConstructible<C>
@@ -614,7 +593,6 @@
using boost::concepts::EdgeIndexGraphConcept;
// Utility concepts
-using boost::concepts::BufferConcept;
using boost::concepts::ColorValueConcept;
using boost::concepts::BasicMatrixConcept;
using boost::concepts::NumericValueConcept;
Modified: branches/release/boost/graph/named_function_params.hpp
==============================================================================
--- branches/release/boost/graph/named_function_params.hpp (original)
+++ branches/release/boost/graph/named_function_params.hpp 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -10,19 +10,23 @@
#ifndef BOOST_GRAPH_NAMED_FUNCTION_PARAMS_HPP
#define BOOST_GRAPH_NAMED_FUNCTION_PARAMS_HPP
-#include <boost/graph/properties.hpp>
+#include <functional>
+#include <vector>
#include <boost/ref.hpp>
#include <boost/parameter/name.hpp>
#include <boost/parameter/binding.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/mpl/not.hpp>
#include <boost/type_traits/add_reference.hpp>
-#include <boost/graph/named_function_params.hpp>
+#include <boost/graph/properties.hpp>
+#include <boost/graph/detail/d_ary_heap.hpp>
#include <boost/property_map/property_map.hpp>
#include <boost/property_map/shared_array_property_map.hpp>
namespace boost {
+ struct parity_map_t { };
+ struct vertex_assignment_map_t { };
struct distance_compare_t { };
struct distance_combine_t { };
struct distance_inf_t { };
@@ -51,6 +55,8 @@
struct learning_constant_range_t { };
struct vertices_equivalent_t { };
struct edges_equivalent_t { };
+ struct index_in_heap_map_t { };
+ struct max_priority_queue_t { };
#define BOOST_BGL_DECLARE_NAMED_PARAMS \
BOOST_BGL_ONE_PARAM_CREF(weight_map, edge_weight) \
@@ -62,6 +68,7 @@
BOOST_BGL_ONE_PARAM_CREF(root_vertex, root_vertex) \
BOOST_BGL_ONE_PARAM_CREF(edge_centrality_map, edge_centrality) \
BOOST_BGL_ONE_PARAM_CREF(centrality_map, vertex_centrality) \
+ BOOST_BGL_ONE_PARAM_CREF(parity_map, parity_map) \
BOOST_BGL_ONE_PARAM_CREF(color_map, vertex_color) \
BOOST_BGL_ONE_PARAM_CREF(edge_color_map, edge_color) \
BOOST_BGL_ONE_PARAM_CREF(capacity_map, edge_capacity) \
@@ -72,6 +79,7 @@
BOOST_BGL_ONE_PARAM_CREF(vertex_index_map, vertex_index) \
BOOST_BGL_ONE_PARAM_CREF(vertex_index1_map, vertex_index1) \
BOOST_BGL_ONE_PARAM_CREF(vertex_index2_map, vertex_index2) \
+ BOOST_BGL_ONE_PARAM_CREF(vertex_assignment_map, vertex_assignment_map) \
BOOST_BGL_ONE_PARAM_CREF(visitor, graph_visitor) \
BOOST_BGL_ONE_PARAM_CREF(distance_compare, distance_compare) \
BOOST_BGL_ONE_PARAM_CREF(distance_combine, distance_combine) \
@@ -98,7 +106,9 @@
BOOST_BGL_ONE_PARAM_CREF(diameter_range, diameter_range) \
BOOST_BGL_ONE_PARAM_CREF(learning_constant_range, learning_constant_range) \
BOOST_BGL_ONE_PARAM_CREF(vertices_equivalent, vertices_equivalent) \
- BOOST_BGL_ONE_PARAM_CREF(edges_equivalent, edges_equivalent)
+ BOOST_BGL_ONE_PARAM_CREF(edges_equivalent, edges_equivalent) \
+ BOOST_BGL_ONE_PARAM_CREF(index_in_heap_map, index_in_heap_map) \
+ BOOST_BGL_ONE_PARAM_REF(max_priority_queue, max_priority_queue)
template <typename T, typename Tag, typename Base = no_property>
struct bgl_named_params : public Base
@@ -541,7 +551,68 @@
boost::graph::keywords::tag::color_map,
default_color_type>
make_color_map_from_arg_pack(white_color);
- }
+
+ template <bool Exists, class Graph, class ArgPack, class KeyT, class ValueT, class KeyMapTag, class IndexInHeapMapTag, class Compare, class Q>
+ struct priority_queue_maker_helper {
+ typedef Q priority_queue_type;
+
+ static priority_queue_type
+ make_queue(const Graph& g, const ArgPack& ap, KeyT defaultKey, const Q& q) {
+ return q;
+ }
+ };
+
+ template <class Graph, class ArgPack, class KeyT, class ValueT, class KeyMapTag, class IndexInHeapMapTag, class Compare, class Q>
+ struct priority_queue_maker_helper<false, Graph, ArgPack, KeyT, ValueT, KeyMapTag, IndexInHeapMapTag, Compare, Q> {
+ typedef typename std::vector<ValueT>::size_type default_index_in_heap_type;
+ typedef typename map_maker<Graph, ArgPack, IndexInHeapMapTag, default_index_in_heap_type>::helper::map_type index_in_heap_map;
+ typedef boost::d_ary_heap_indirect<ValueT, 4, index_in_heap_map, typename map_maker<Graph, ArgPack, KeyMapTag, KeyT>::helper::map_type, Compare> priority_queue_type;
+
+ static priority_queue_type
+ make_queue(const Graph& g, const ArgPack& ap, KeyT defaultKey, const Q& q) {
+ return priority_queue_type(
+ map_maker<Graph, ArgPack, KeyMapTag, KeyT>::make_map(g, ap, defaultKey),
+ map_maker<Graph, ArgPack, IndexInHeapMapTag, default_index_in_heap_type>::make_map(g, ap, typename boost::property_traits<index_in_heap_map>::value_type(-1))
+ );
+ }
+ };
+
+ template <class Graph, class ArgPack, class KeyT, class ValueT, class PriorityQueueTag, class KeyMapTag, class IndexInHeapMapTag, class Compare>
+ struct priority_queue_maker {
+ BOOST_STATIC_CONSTANT(
+ bool,
+ g_hasQ =
+ (parameter_exists<ArgPack, PriorityQueueTag>
+ ::value));
+ typedef priority_queue_maker_helper<g_hasQ, Graph, ArgPack, KeyT, ValueT, KeyMapTag, IndexInHeapMapTag, Compare,
+ typename boost::remove_const<
+ typename boost::parameter::value_type<
+ ArgPack,
+ PriorityQueueTag,
+ boost::reference_wrapper<int>
+ >::type::type
+ >::type> helper;
+ typedef typename helper::priority_queue_type priority_queue_type;
+
+ static priority_queue_type make_queue(const Graph& g, const ArgPack& ap, KeyT defaultKey) {
+ return helper::make_queue(g, ap, defaultKey, ap[::boost::parameter::keyword<PriorityQueueTag>::instance | 0]);
+ }
+ };
+
+ template <class PriorityQueueTag, class KeyT, class ValueT, class Compare = std::less<KeyT>, class KeyMapTag = boost::graph::keywords::tag::distance_map, class IndexInHeapMapTag = boost::graph::keywords::tag::index_in_heap_map>
+ struct make_priority_queue_from_arg_pack_gen {
+ KeyT defaultKey;
+
+ make_priority_queue_from_arg_pack_gen(KeyT defaultKey_) : defaultKey(defaultKey_) { }
+
+ template <class Graph, class ArgPack>
+ typename priority_queue_maker<Graph, ArgPack, KeyT, ValueT, PriorityQueueTag, KeyMapTag, IndexInHeapMapTag, Compare>::priority_queue_type
+ operator()(const Graph& g, const ArgPack& ap) const {
+ return priority_queue_maker<Graph, ArgPack, KeyT, ValueT, PriorityQueueTag, KeyMapTag, IndexInHeapMapTag, Compare>::make_queue(g, ap, defaultKey);
+ }
+ };
+
+ } // namespace detail
} // namespace boost
Modified: branches/release/boost/graph/read_dimacs.hpp
==============================================================================
--- branches/release/boost/graph/read_dimacs.hpp (original)
+++ branches/release/boost/graph/read_dimacs.hpp 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -28,19 +28,22 @@
namespace boost {
+ namespace detail {
+
template <class Graph, class CapacityMap, class ReverseEdgeMap>
-int read_dimacs_max_flow(Graph& g,
- CapacityMap capacity,
- ReverseEdgeMap reverse_edge,
- typename graph_traits<Graph>::vertex_descriptor& src,
- typename graph_traits<Graph>::vertex_descriptor& sink,
- std::istream& in = std::cin)
+int read_dimacs_max_flow_internal(Graph& g,
+ CapacityMap capacity,
+ ReverseEdgeMap reverse_edge,
+ typename graph_traits<Graph>::vertex_descriptor& src,
+ typename graph_traits<Graph>::vertex_descriptor& sink,
+ std::istream& in,
+ bool require_source_and_sink,
+ const std::string& problem_type)
{
// const int MAXLINE = 100; /* max line length in the input file */
const int ARC_FIELDS = 3; /* no of fields in arc line */
const int NODE_FIELDS = 2; /* no of fields in node line */
const int P_FIELDS = 3; /* no of fields in problem line */
- const char* PROBLEM_TYPE = "max"; /* name of problem type*/
typedef typename graph_traits<Graph>::vertices_size_type vertices_size_type;
typedef typename graph_traits<Graph>::vertex_descriptor vertex_descriptor;
@@ -145,7 +148,7 @@
/*wrong number of parameters in the problem line*/
{ err_no = EN2; goto error; }
- if ( std::strcmp ( pr_type, PROBLEM_TYPE ) )
+ if ( pr_type != problem_type )
/*wrong problem type*/
{ err_no = EN3; goto error; }
@@ -203,7 +206,7 @@
break;
case 'a': /* arc description */
- if ( no_nslines == 0 || no_nklines == 0 )
+ if ( require_source_and_sink && (no_nslines == 0 || no_nklines == 0) )
/* there was not source and sink description above */
{ err_no = EN14; goto error; }
@@ -264,7 +267,8 @@
if ( no_alines < m ) /* not enough arcs */
{ err_no = EN19; goto error; }
- if ( out_degree(src, g) == 0 || out_degree(sink, g) == 0 )
+ if ( require_source_and_sink &&
+ (out_degree(src, g) == 0 || out_degree(sink, g) == 0) )
/* no arc goes out of the source */
{ err_no = EN20; goto error; }
@@ -282,6 +286,27 @@
}
/* -------------------- end of parser -------------------*/
+ } // namespace detail
+
+template <class Graph, class CapacityMap, class ReverseEdgeMap>
+int read_dimacs_max_flow(Graph& g,
+ CapacityMap capacity,
+ ReverseEdgeMap reverse_edge,
+ typename graph_traits<Graph>::vertex_descriptor& src,
+ typename graph_traits<Graph>::vertex_descriptor& sink,
+ std::istream& in = std::cin) {
+ return detail::read_dimacs_max_flow_internal(g, capacity, reverse_edge, src, sink, in, true, "max");
+}
+
+template <class Graph, class CapacityMap, class ReverseEdgeMap>
+int read_dimacs_min_cut(Graph& g,
+ CapacityMap capacity,
+ ReverseEdgeMap reverse_edge,
+ std::istream& in = std::cin) {
+ typename graph_traits<Graph>::vertex_descriptor dummy_src, dummy_sink; // Not filled in
+ return detail::read_dimacs_max_flow_internal(g, capacity, reverse_edge, dummy_src, dummy_sink, in, false, "cut");
+}
+
} // namespace boost
#endif // BOOST_GRAPH_READ_DIMACS_HPP
Modified: branches/release/libs/graph/doc/BUILD_DOCS.sh
==============================================================================
--- branches/release/libs/graph/doc/BUILD_DOCS.sh (original)
+++ branches/release/libs/graph/doc/BUILD_DOCS.sh 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -1,13 +1,22 @@
#!/bin/sh
# Copyright (C) 2009 The Trustees of Indiana University.
+# Copyright (C) 2010 Daniel Trebbien.
# Use, modification and distribution is subject to 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)
-# Authors: Jeremiah Willcock, Andrew Lumsdaine
+# Authors: Jeremiah Willcock, Daniel Trebbien, Andrew Lumsdaine
for i in read_graphml read_graphviz write_graphml; do
rst2html.py -gdt --link-stylesheet --traceback --trim-footnote-reference-space --footnote-references=superscript --stylesheet=../../../rst.css $i.rst > $i.html
done
# Also see grid_graph_export_png.sh for figure conversions
+
+# Stoer-Wagner images from Daniel Trebbien
+fdp -s -n -Tgif -ostoer_wagner_imgs/digraph1.gif stoer_wagner_imgs/digraph1.dot
+fdp -s -n -Tgif -ostoer_wagner_imgs/digraph1-min-cut.gif stoer_wagner_imgs/digraph1-min-cut.dot
+fdp -s -n -Tgif -ostoer_wagner_imgs/stoer_wagner-example.gif stoer_wagner_imgs/stoer_wagner-example.dot
+fdp -s -n -Tgif -ostoer_wagner_imgs/stoer_wagner-example-c1.gif stoer_wagner_imgs/stoer_wagner-example-c1.dot
+fdp -s -n -Tgif -ostoer_wagner_imgs/stoer_wagner-example-min-cut.gif stoer_wagner_imgs/stoer_wagner-example-min-cut.dot
+dot -Tgif -ostoer_wagner_imgs/stoer_wagner.cpp.gif stoer_wagner_imgs/stoer_wagner.cpp.dot
Modified: branches/release/libs/graph/doc/graph_theory_review.html
==============================================================================
--- branches/release/libs/graph/doc/graph_theory_review.html (original)
+++ branches/release/libs/graph/doc/graph_theory_review.html 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -1,6 +1,7 @@
<HTML>
<!--
Copyright (c) Jeremy Siek 2000
+ Copyright (c) Daniel Trebbien 2010
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at
@@ -578,6 +579,41 @@
<a href="./bibliography.html#karzanov74:_deter">Karzanov</a>.
+<h2><a name="sec:min-cut-algorithms">Minimum Cut Algorithms</a></h2>
+
+<h3>Undirected Graphs</h3>
+<p>Given an undirected graph <i>G</i> = (<i>V</i>, <i>E</i>), a <em>cut</em> of <i>G</i> is a partition of the vertices into two, non-empty sets <i>X</i> and <img src="stoer_wagner_imgs/6e4.gif" alt="\overline{X} = V - X" style="vertical-align: middle; padding-bottom: 2px">. The <i>weight</i> of a cut is defined as the number of edges between sets <i>X</i> and <img src="stoer_wagner_imgs/f79.gif" alt="\overline{X}" style="vertical-align: middle; padding-bottom: 3px"> if <i>G</i> is unweighted, or the sum of the weights of all edges between sets <i>X</i> and <img src="stoer_wagner_imgs/f79.gif" alt="\overline{X}" style="vertical-align: middle; padding-bottom: 3px"> if <i>G</i> is weighted (each edge has an associated, non-negative weight).
+
+<p>When the weight of a cut <img src="stoer_wagner_imgs/8b7.gif" alt="C = \{X, \overline{X}\}" style="vertical-align: middle"> is minimal for a graph <i>G</i> (that is, no other cut of <i>G</i> has a lesser weight), then the cut is known as a <em>minimum cut</em> or a <em>min-cut</em>. For example, given this weighted graph:
+
+<p>
+
+<p>The cut {{0, 6}, {3, 2, 7, 1, 5, 4}} has weight 13:
+
+<p>
+
+<p>And the min-cut is {{0, 1, 4, 5}, {2, 3, 6, 7}} (weight 4):
+
+<p>
+
+<p>Unlike this example, a graph will sometimes have multiple min-cuts, all of equal weight. A minimum cut algorithm determines one of them as well as the min-cut weight.
+
+<h3>Directed Graphs</h3>
+
+<p>Given a directed graph <i>G</i> = (<i>V</i>, <i>E</i>), a <em>cut</em> of <i>G</i> is a partition of the vertices into two, non-empty sets <i>S</i> and <i>T</i> where <i>S</i> is known as the set of <em>source vertices</em> and <i>T</i> is known as the set of <em>sink vertices</em>. The <em>capacity</em> of a cut <i>C</i> = (<i>S</i>, <i>T</i>) is the number of edges from a vertex in <i>S</i> to a vertex in <i>T</i> if <i>G</i> is unweighted, or the sum of weights of edges from a vertex in <i>S</i> to a vertex in <i>T</i> if <i>G</i> is weighted.
+
+<p>When the capacity of a cut <i>C</i> = (<i>S</i>, <i>T</i>) of a directed graph is minimal (that is, no other cut of <i>G</i> has lesser capacity), then <i>C</i> is known as a <em>minimum cut</em> or <em>min-cut</em>.
+
+<p>For example, given this directed graph:
+
+<p>
+
+<p>A min-cut is:
+
+<p>
+
+<p>where <i>S</i> = {0}, <i>T</i> = {1, 2, 3}, and the min-cut capacity is 1.
+
<br>
<HR>
<TABLE>
Modified: branches/release/libs/graph/doc/read_dimacs.html
==============================================================================
--- branches/release/libs/graph/doc/read_dimacs.html (original)
+++ branches/release/libs/graph/doc/read_dimacs.html 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -1,6 +1,7 @@
<HTML>
<!--
// Copyright (c) 2006, Stephan Diederich
+// Copyright (c) 2010, Trustees of Indiana University
//
// This code may be used under either of the following two licences:
//
@@ -32,7 +33,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
-->
<Head>
-<Title>Boost Graph Library: read_dimacs_max_flow</Title>
+<Title>Boost Graph Library: read_dimacs_max_flow and read_dimacs_min_cut</Title>
<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b"
ALINK="#ff0000">
<IMG SRC="../../../boost.png"
@@ -47,18 +48,27 @@
<pre>
//reads a graph with attached edge_capacity properties from an std::istream
template <class Graph, class CapacityMap, class ReverseEdgeMap>
-int read_dimacs_max_flow(Graph& g,
+int read_dimacs_max_flow(Graph& g,
CapacityMap capacity,
ReverseEdgeMap reverse_edge,
- typename graph_traits<Graph>::vertex_descriptor& src,
- typename graph_traits<Graph>::vertex_descriptor& sink,
- std::istream& in=std::cin)
+ typename graph_traits<Graph>::vertex_descriptor& src,
+ typename graph_traits<Graph>::vertex_descriptor& sink,
+ std::istream& in=std::cin)
+
+//reads a graph with attached edge_capacity properties from an std::istream
+template <class Graph, class CapacityMap, class ReverseEdgeMap>
+int read_dimacs_min_cut(Graph& g,
+ CapacityMap capacity,
+ ReverseEdgeMap reverse_edge,
+ std::istream& in=std::cin)
</pre>
<p>
-This method reads a BGL graph object from a max-flow problem description in extended dimacs format. (see Goldbergs site for more information). For each edge found in the
-file an additional reverse_edge is added and set in the reverse_edge map. Source- and sink-vertex-descriptors are set according to the dimacs file.
+These functions read a BGL graph object from a max-flow or min-cut problem description in extended dimacs format. (see Goldberg's site for more information). For each edge found in the
+file an additional reverse_edge is added and set in the reverse_edge map. For
+max-flow problems, source and sink vertex descriptors are set according to the
+dimacs file.
<H3>Where Defined</H3>
@@ -81,6 +91,16 @@
A property map that models mutable Lvalue Property Map whose key and value type is the edge descriptor of the graph. This map stores the corresponding reverse edge for each each in Graph g.<br>
</blockquote>
+ OUT: <tt>vertex_descriptor& src</tt>
+<blockquote>
+ A graph vertex that will be set to the source of a max-flow problem.
+</blockquote>
+
+ OUT: <tt>vertex_descriptor& sink</tt>
+<blockquote>
+ A graph vertex that will be set to the sink of a max-flow problem.
+</blockquote>
+
IN: <tt>std::istream& in</tt>
<blockquote>
A standard <tt>std::istream</tt> object. <br>
Modified: branches/release/libs/graph/doc/table_of_contents.html
==============================================================================
--- branches/release/libs/graph/doc/table_of_contents.html (original)
+++ branches/release/libs/graph/doc/table_of_contents.html 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -208,6 +208,7 @@
</li>
<li>boykov_kolmogorov_max_flow</li>
<LI>edmonds_maximum_cardinality_matching
+ <LI>stoer_wagner_min_cut
</OL>
<li>Sparse Matrix Ordering Algorithms
@@ -286,7 +287,7 @@
<li>Graph Input/Output
<ol>
<li>AT&T Graphviz: read_graphviz, write_graphviz</li>
- <li>DIMACS Max-flow: read_dimacs_max_flow, write_dimacs_max_flow</li>
+ <li>DIMACS Max-flow: read_dimacs_max_flow and read_dimacs_min_cut, write_dimacs_max_flow</li>
<li>GraphML: read_graphml and write_graphml</li>
</ol></li>
Modified: branches/release/libs/graph/example/Jamfile.v2
==============================================================================
--- branches/release/libs/graph/example/Jamfile.v2 (original)
+++ branches/release/libs/graph/example/Jamfile.v2 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -27,3 +27,6 @@
exe boykov_kolmogorov-eg : boykov_kolmogorov-eg.cpp ;
exe ospf-example : ospf-example.cpp ../build//boost_graph ;
# exe cc-internet : cc-internet.cpp ../build//boost_graph ;
+exe implicit_graph : implicit_graph.cpp ;
+exe astar_maze : astar_maze.cpp ;
+exe stoer_wagner : stoer_wagner.cpp ;
Modified: branches/release/libs/graph/test/Jamfile.v2
==============================================================================
--- branches/release/libs/graph/test/Jamfile.v2 (original)
+++ branches/release/libs/graph/test/Jamfile.v2 2010-10-04 14:50:40 EDT (Mon, 04 Oct 2010)
@@ -9,6 +9,8 @@
import modules ;
+path-constant TEST_DIR : . ;
+
path-constant PLANAR_INPUT_FILES : ./planar_input_graphs ;
path-constant CYCLE_RATIO_INPUT_FILE : ./cycle_ratio_s382.90.dot ;
@@ -118,6 +120,7 @@
[ run incremental_components_test.cpp ]
[ run random_spanning_tree_test.cpp ../build//boost_graph ]
[ run graphml_test.cpp ../build//boost_graph : : "graphml_test.xml" ]
+ [ run stoer_wagner_test.cpp ../../test/build : $(TEST_DIR) ]
;
# Run SDB tests only when -sSDB= is set.
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk