mirror of
https://github.com/boostorg/graph.git
synced 2026-07-21 13:23:42 +00:00
Compare commits
178 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2d912ef88c | |||
| 3125c8577d | |||
| 02cdd5c0f8 | |||
| 55d57690f1 | |||
| 0f49c8dcb2 | |||
| 85dd95cf77 | |||
| 15d8e1dc21 | |||
| 99a56222da | |||
| 3bec282dbd | |||
| 3d5661096c | |||
| dfb49e339d | |||
| b493c0ea47 | |||
| 64b6038f92 | |||
| fbd5c5120f | |||
| 46ae2cb6c1 | |||
| d83d611b18 | |||
| e53d23d7d7 | |||
| 401165fe0c | |||
| a728a94caa | |||
| 833169b3a0 | |||
| 79a1ef7d8f | |||
| 41051db37b | |||
| 99d4f31d38 | |||
| 2c884b70b7 | |||
| 0cb7bbf192 | |||
| a306a8119f | |||
| 88edab5b45 | |||
| b0474f1dd9 | |||
| 344dd6b155 | |||
| bf2f7f86fa | |||
| 58e287d115 | |||
| d34d447b68 | |||
| a03ed0e26d | |||
| f4b0928c2d | |||
| bc49236ccc | |||
| 3a07fe7c22 | |||
| ac847ac715 | |||
| ec2dcfddbb | |||
| 9badc94845 | |||
| 65f63fecc1 | |||
| 62cc164059 | |||
| 560f485326 | |||
| 5898cc5bae | |||
| 1035ddac56 | |||
| ce0f796b84 | |||
| 1b3a6936a2 | |||
| bf73135721 | |||
| 1b468cb8aa | |||
| 05a7299c0e | |||
| fb06d7e38e | |||
| 0b1a337f52 | |||
| 891ec4e4e3 | |||
| 64428fc074 | |||
| 9a10195600 | |||
| 0d52712c3d | |||
| 5597592ff5 | |||
| dea8296e5b | |||
| bcb16ef822 | |||
| ce0ec9e236 | |||
| 9e359134a1 | |||
| be9ad03abe | |||
| dbe744f6e2 | |||
| 9084e6ce9b | |||
| a4a5a1a42b | |||
| f9da93dbe2 | |||
| a0919bdff6 | |||
| 573f424452 | |||
| 4a159ba118 | |||
| 0d6c5bb4e2 | |||
| 6616bdba33 | |||
| 7a6a6fcbb6 | |||
| 11f9e9b044 | |||
| 399aa3b28a | |||
| a9e4925167 | |||
| 3eadd82c6b | |||
| 779274575b | |||
| 5f28b0237a | |||
| 29a09c1fc0 | |||
| 7465bc2c20 | |||
| 36656fda3d | |||
| 0245e863c8 | |||
| af44a9cfa5 | |||
| 22ca266765 | |||
| 12aa017c9f | |||
| bb6401e096 | |||
| 6cff97469a | |||
| 75100306fe | |||
| da3078ed52 | |||
| 70bbfe664b | |||
| 3f81217fad | |||
| 3d7d3eb428 | |||
| 7f05dc489b | |||
| 70e0dd2d23 | |||
| 654e43a7ed | |||
| 4f36d52ec3 | |||
| 174d0d2dff | |||
| f7db7b7771 | |||
| d0176ea39d | |||
| 42b9c97d31 | |||
| 0e08ed3d80 | |||
| 665b330286 | |||
| f36e7b9170 | |||
| 7815e65261 | |||
| eddae97983 | |||
| e96148194d | |||
| c668929a24 | |||
| e5a0f4f5fc | |||
| efd6f46383 | |||
| 61c59d9c1d | |||
| 727a9d994d | |||
| f836ed2531 | |||
| 5b572a82a3 | |||
| a1b7e1cd95 | |||
| 9df2b90f56 | |||
| 183d88cfb6 | |||
| 472dba30ed | |||
| d8fc6477d7 | |||
| 2a204d5482 | |||
| db9796ddfd | |||
| d629b74d98 | |||
| 421842272a | |||
| c4d72905bf | |||
| f497c3d195 | |||
| 86e4dd21af | |||
| c8ffc289d9 | |||
| 5879c83284 | |||
| 8041171b33 | |||
| 1e416130db | |||
| 2e318dccc1 | |||
| 02f8dbe592 | |||
| 18586182a1 | |||
| 0d93784f95 | |||
| 9225f94c4b | |||
| 69317c5bdc | |||
| ada2d70c01 | |||
| 5271a6bef6 | |||
| 6937336a09 | |||
| 9ba47b4b7b | |||
| bb1fba7555 | |||
| e87ac08817 | |||
| cc60980341 | |||
| 6fe01d0c4c | |||
| 29d60b8e6a | |||
| 0e2f464666 | |||
| 1e42266075 | |||
| aa3dcfb2e1 | |||
| 9be555c4f5 | |||
| 8899a047d4 | |||
| 6c93d9b187 | |||
| a5c1c8d953 | |||
| 80147f664b | |||
| 7ae0a8d974 | |||
| 549f85c80f | |||
| 4df63cf4f3 | |||
| 6466795448 | |||
| 4373b57677 | |||
| 97e891fee0 | |||
| cd346002ea | |||
| 48577cde2f | |||
| 0a4891fcf0 | |||
| 91e1935e1d | |||
| 8fe7018793 | |||
| 85e1d7e344 | |||
| ca5bbacc2e | |||
| b48254406d | |||
| 49ca29e905 | |||
| e10fef2660 | |||
| fddbb9b66e | |||
| 48867ed3ab | |||
| 75d3e89442 | |||
| ba824058ef | |||
| fe508c8c46 | |||
| 73a5b07661 | |||
| bbe399a2b0 | |||
| 786336804e | |||
| 869dab48ef | |||
| b62baf4ec1 | |||
| cf9d1521d8 |
@@ -1,50 +0,0 @@
|
||||
subproject libs/graph/build ;
|
||||
|
||||
SOURCES = graphviz_graph_lex graphviz_digraph_lex
|
||||
graphviz_graph_parser graphviz_digraph_parser
|
||||
read_graphviz_spirit
|
||||
;
|
||||
|
||||
GRAPHVIZ_DEFS(graphviz_graph_lex) =
|
||||
GRAPHVIZ_DIRECTED=0
|
||||
;
|
||||
GRAPHVIZ_DEFS(graphviz_digraph_lex) =
|
||||
GRAPHVIZ_DIRECTED=1
|
||||
;
|
||||
GRAPHVIZ_DEFS(graphviz_graph_parser) =
|
||||
GRAPHVIZ_DIRECTED=0
|
||||
;
|
||||
GRAPHVIZ_DEFS(graphviz_digraph_parser) =
|
||||
GRAPHVIZ_DIRECTED=1
|
||||
;
|
||||
|
||||
{
|
||||
|
||||
rule bgl-lib-file
|
||||
{
|
||||
local objects source defs ;
|
||||
defs = $(DEFINES) ;
|
||||
for source in $(>)
|
||||
{
|
||||
DEFINES = $(defs) $(GRAPHVIZ_DEFS($(source:B))) ;
|
||||
objects += [ Objects $(source) ] ;
|
||||
}
|
||||
LibraryFromObjects $(<) : $(objects) ;
|
||||
}
|
||||
local gGENERATOR_FUNCTION(LIB) = bgl-lib-file ;
|
||||
|
||||
lib bgl-viz
|
||||
: ../src/$(SOURCES).cpp
|
||||
: <sysinclude>$(BOOST_ROOT) <define>YY_NO_UNISTD_H
|
||||
# Darwin compiler ICEs if we turn optimization on
|
||||
<darwin><*><debug-symbols>off
|
||||
<darwin><*><optimization>off
|
||||
# Intel compiler ICEs if we turn optimization on
|
||||
<intel-win32><*><optimization>off
|
||||
<vc-7_1><*><cxxflags>-GR-
|
||||
: debug <inlining>on #inlining prevents linker name clashes due to truncation!
|
||||
<debug-symbols>off # Debugging symbols become HUGE
|
||||
|
||||
;
|
||||
|
||||
}
|
||||
+43
-19
@@ -1,26 +1,50 @@
|
||||
# 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)
|
||||
|
||||
project boost/graph
|
||||
: requirements <include>../src
|
||||
: source-location ../src
|
||||
;
|
||||
|
||||
lib bgl-viz
|
||||
: graphviz_graph_lex
|
||||
graphviz_digraph_lex
|
||||
graphviz_graph_parser
|
||||
graphviz_digraph_parser
|
||||
: <define>YY_NO_UNISTD_H
|
||||
;
|
||||
if [ modules.peek : GRAPHVIZ_PARSER ]
|
||||
{
|
||||
lib boost_graph
|
||||
:
|
||||
graphviz_graph_lex
|
||||
graphviz_digraph_lex
|
||||
graphviz_graph_parser
|
||||
graphviz_digraph_parser
|
||||
: <define>YY_NO_UNISTD_H
|
||||
;
|
||||
|
||||
obj graphviz_graph_lex : graphviz_lex.ll
|
||||
: <flex.prefix>bgl_undir_ <define>GRAPHVIZ_DIRECTED=0
|
||||
<implicit-dependency>graphviz_graph_parser ;
|
||||
obj graphviz_graph_parser : graphviz_parser.yy
|
||||
: <bison.prefix>bgl_undir_ <define>GRAPHVIZ_DIRECTED=0 ;
|
||||
|
||||
|
||||
obj graphviz_digraph_lex : graphviz_lex.ll
|
||||
: <flex.prefix>bgl_dir_ <define>GRAPHVIZ_DIRECTED=1
|
||||
<implicit-dependency>graphviz_digraph_parser ;
|
||||
obj graphviz_digraph_parser : graphviz_parser.yy
|
||||
: <bison.prefix>bgl_dir_ <define>GRAPHVIZ_DIRECTED=1 ;
|
||||
obj graphviz_graph_lex : graphviz_lex.ll
|
||||
: <flex.prefix>bgl_undir_ <define>GRAPHVIZ_DIRECTED=0
|
||||
<implicit-dependency>graphviz_graph_parser ;
|
||||
obj graphviz_graph_parser : graphviz_parser.yy
|
||||
: <bison.prefix>bgl_undir_ <define>GRAPHVIZ_DIRECTED=0 ;
|
||||
|
||||
|
||||
obj graphviz_digraph_lex : graphviz_lex.ll
|
||||
: <flex.prefix>bgl_dir_ <define>GRAPHVIZ_DIRECTED=1
|
||||
<implicit-dependency>graphviz_digraph_parser ;
|
||||
obj graphviz_digraph_parser : graphviz_parser.yy
|
||||
: <bison.prefix>bgl_dir_ <define>GRAPHVIZ_DIRECTED=1 ;
|
||||
}
|
||||
else
|
||||
{
|
||||
lib boost_graph
|
||||
:
|
||||
read_graphviz_spirit.cpp
|
||||
:
|
||||
<define>BOOST_GRAPH_NO_LIB=1
|
||||
<link>shared:<define>BOOST_GRAPH_DYN_LINK=1
|
||||
# # Intel compiler ICEs if we turn optimization on
|
||||
<toolset>intel-vc71-win-9.1:<optimization>off
|
||||
# Without these flags, MSVC 7.1 and 8.0 crash
|
||||
<toolset>msvc-7.1:<cxxflags>-GR-
|
||||
<toolset>msvc-8.0:<cxxflags>-GR-
|
||||
;
|
||||
}
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
# Copyright 2005 The Trustees of Indiana University.
|
||||
|
||||
# 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: Douglas Gregor
|
||||
# Andrew Lumsdaine
|
||||
|
||||
subproject libs/graph/build/python ;
|
||||
|
||||
SEARCH on python.jam = $(BOOST_BUILD_PATH) ;
|
||||
include python.jam ;
|
||||
|
||||
extension bgl
|
||||
: # Sources
|
||||
../../src/python/module.cpp
|
||||
# Graph types
|
||||
../../src/python/graph.cpp
|
||||
../../src/python/digraph.cpp
|
||||
# Graph I/O
|
||||
../../src/python/graphviz.cpp
|
||||
# Graph algorithms
|
||||
# Core Algorithm Patterns
|
||||
../../src/python/breadth_first_search.cpp
|
||||
../../src/python/depth_first_search.cpp
|
||||
# Shortest Paths Algorithms
|
||||
../../src/python/dijkstra_shortest_paths.cpp
|
||||
../../src/python/bellman_ford_shortest_paths.cpp
|
||||
../../src/python/dag_shortest_paths.cpp
|
||||
# Minimum Spanning Tree Algorithms
|
||||
../../src/python/kruskal_min_spanning_tree.cpp
|
||||
../../src/python/prim_minimum_spanning_tree.cpp
|
||||
# Connected Components Algorithms
|
||||
../../src/python/connected_components.cpp
|
||||
../../src/python/strong_components.cpp
|
||||
../../src/python/biconnected_components.cpp
|
||||
../../src/python/incremental_components.cpp
|
||||
# ...
|
||||
# Other algorithms
|
||||
../../src/python/topological_sort.cpp
|
||||
../../src/python/transitive_closure.cpp
|
||||
# ../../src/python/transpose_graph.cpp Need copy_graph to work, first
|
||||
../../src/python/isomorphism.cpp
|
||||
../../src/python/betweenness_centrality.cpp
|
||||
../../src/python/sequential_vertex_coloring.cpp
|
||||
# Sparse Matrix Ordering
|
||||
../../src/python/cuthill_mckee_ordering.cpp
|
||||
../../src/python/king_ordering.cpp
|
||||
# ../../src/python/minimum_degree_ordering.cpp
|
||||
../../src/python/circle_layout.cpp
|
||||
../../src/python/fruchterman_reingold.cpp
|
||||
../../src/python/kamada_kawai_spring_layout.cpp
|
||||
../../src/python/page_rank.cpp
|
||||
# Pickling support
|
||||
../../src/python/pickle.cpp
|
||||
<dll>../../../python/build/boost_python
|
||||
<lib>../bgl-viz
|
||||
: # Default build
|
||||
<debug-symbols>off
|
||||
;
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) 2004 Kris Beevers
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: AStarHeuristic</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) 2004 Kris Beevers
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: AStarVisitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>AdjacencyGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>AdjacencyMatrix</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: BFSVisitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>BasicMatrix</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Bellman Ford Visitor</Title>
|
||||
@@ -79,16 +75,6 @@ none
|
||||
<th>Name</th><th>Expression</th><th>Return Type</th><th>Description</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Initialize Vertex</td>
|
||||
<td><tt>vis.initialize_vertex(s, g)</tt></td>
|
||||
<td><tt>void</tt></td>
|
||||
<td>
|
||||
This is invoked on every vertex of the graph before the start of the
|
||||
graph search.
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Examine Edge</td>
|
||||
<td><tt>vis.examine_edge(e, g)</tt></td>
|
||||
@@ -156,6 +142,7 @@ when there is a negative cycle in the graph.
|
||||
<li><a href="./bellman_visitor.html"><tt>bellman_visitor</tt></a>
|
||||
</ul>
|
||||
|
||||
<a name="python"></a>
|
||||
<h3>Python</h3>
|
||||
|
||||
To implement a model of the <tt>BellmanFordVisitor</tt> concept in Python,
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Bidirectional</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Buffer</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: ColorValue Concept</Title>
|
||||
|
||||
+4
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>DFS Visitor</Title>
|
||||
@@ -174,6 +170,7 @@ all the out-edges of <tt>u</tt> have been examined.
|
||||
<li><a href="./dfs_visitor.html"><tt>dfs_visitor</tt></a>
|
||||
</ul>
|
||||
|
||||
<a name="python"></a>
|
||||
<h3>Python</h3>
|
||||
|
||||
To implement a model of the <tt>DFSVisitor</tt> concept in Python,
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Dijkstra Visitor</Title>
|
||||
@@ -184,6 +180,7 @@ search tree and all of the adjacent vertices have been discovered
|
||||
<li><a href="./dijkstra_visitor.html"><tt>dijkstra_visitor</tt></a>
|
||||
</ul>
|
||||
|
||||
<a name="python"></a>
|
||||
<h3>Python</h3>
|
||||
|
||||
To implement a model of the <tt>DijkstraVisitor</tt> concept in Python,
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>EdgeListGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Edge Mutable Graph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: EventVisitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: EventVisitorList</Title>
|
||||
|
||||
+4
-8
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Graph</Title>
|
||||
@@ -74,7 +70,7 @@ and <a href="http://www.sgi.com/tech/stl/EqualityComparable.html">Equality Compa
|
||||
|
||||
<tr>
|
||||
<td><pre>boost::graph_traits<G>::directed_category</pre>
|
||||
The choices are <TT>directed_tag</TT> and <TT>undirected_tag</TT>.
|
||||
This type shall be convertible to <TT>directed_tag</TT> or <TT>undirected_tag</TT>.
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>IncidenceGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>IteratorConstructibleGraph</Title>
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
# 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)
|
||||
|
||||
DVIPS = dvips
|
||||
|
||||
LATEX = latex
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Monoid</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>MutableGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>MutablePropertyGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>PropertyGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Property</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>VertexAndEdgeListGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>VertexListGraph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Vertex Mutable Graph</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Acknowledgements</Title>
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
<html>
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- 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)
|
||||
-->
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
@@ -35,7 +42,7 @@ namespace boost {
|
||||
template <class Graph, class VertexDescriptor, class OutEdgeIter>
|
||||
class adjacency_iterator_generator {
|
||||
public:
|
||||
typedef <a href="../../utility/iterator_adaptors.htm#iterator_adaptor">iterator_adaptor</a><...> type;
|
||||
typedef <a href="../../iterator/doc/iterator_adaptor.html">iterator_adaptor</a><...> type;
|
||||
};
|
||||
}
|
||||
</pre>
|
||||
|
||||
+36
-11
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Adjacency List</Title>
|
||||
@@ -153,15 +149,18 @@ shows how to represent a family tree with a graph.
|
||||
<a href="./VertexAndEdgeListGraph.html">VertexAndEdgeListGraph</a>,
|
||||
<a href="./MutablePropertyGraph.html">MutablePropertyGraph</a>,
|
||||
<a href="../../utility/CopyConstructible.html">CopyConstructible</a>,
|
||||
and <a href="../../utility/Assignable.html">Assignable</a>.
|
||||
<a href="../../utility/Assignable.html">Assignable</a>,
|
||||
and <a href="../../serialization/doc/index.html">Serializable</a>.
|
||||
|
||||
|
||||
<P>
|
||||
|
||||
<H3>Where Defined</H3>
|
||||
|
||||
<P>
|
||||
<a href="../../../boost/graph/adjacency_list.hpp"><TT>boost/graph/adjacency_list.hpp</TT></a>
|
||||
|
||||
<a href="../../../boost/graph/adjacency_list.hpp"><TT>boost/graph/adjacency_list.hpp</TT></a><br><br>
|
||||
Also, the serialization functionality is in
|
||||
<a href="../../../boost/graph/adj_list_serialize.hpp"><tt>boost/graph/adj_list_serialize.hpp</tt></a>.
|
||||
<P>
|
||||
|
||||
<H2>Vertex and Edge Properties</H2>
|
||||
@@ -1053,9 +1052,35 @@ attached to the graph object <tt>g</tt>. The <tt>graph_property</tt>
|
||||
traits class is defined in <a
|
||||
href="../../../boost/graph/adjacency_list.hpp"><tt>boost/graph/adjacency_list.hpp</tt></a>.
|
||||
|
||||
<!-- add the shortcut property functions -->
|
||||
|
||||
<hr>
|
||||
|
||||
<!-- add the shortcut property functions -->
|
||||
|
||||
|
||||
<h4><a name="serialization">Serialization</a></h4>
|
||||
|
||||
<hr>
|
||||
|
||||
<pre>
|
||||
template<class <a href="../../serialization/doc/archives.html#saving_interface">SavingArchive</a>>
|
||||
SavingArchive& operator<<(SavingArchive& ar, const adjacency_list& graph);
|
||||
</pre>
|
||||
Serializes the graph into the archive. Requires the vertex and edge properties of the
|
||||
graph to be <a href="../../serialization/doc/index.html">Serializable</a>.
|
||||
<br>
|
||||
Include <a href="../../../boost/graph/adj_list_serialize.hpp"><tt>boost/graph/adj_list_serialize.hpp</tt></a>.
|
||||
<hr>
|
||||
|
||||
<pre>
|
||||
template<class <a href="../../serialization/doc/archives.html#loading_interface">LoadingArchive</a>>
|
||||
LoadingArchive& operator>>(LoadingArchive& ar, const adjacency_list& graph);
|
||||
</pre>
|
||||
Reads the graph from the archive. Requires the vertex and edge properties of the
|
||||
graph to be <a href="../../serialization/doc/index.html">Serializable</a>.
|
||||
<br>
|
||||
Include <a href="../../../boost/graph/adj_list_serialize.hpp"><tt>boost/graph/adj_list_serialize.hpp</tt></a>.
|
||||
<hr>
|
||||
|
||||
|
||||
<h3>See Also</h3>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Graph Traits</Title>
|
||||
|
||||
+50
-24
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Adjacency Matrix</Title>
|
||||
@@ -209,7 +205,10 @@ The output is:
|
||||
|
||||
<h3>Model Of</h3>
|
||||
|
||||
<a href="./VertexAndEdgeListGraph.html">VertexAndEdgeListGraph</a>, <a
|
||||
<a href="./VertexAndEdgeListGraph.html">VertexAndEdgeListGraph</a>,
|
||||
<a href="./IncidenceGraph.html">Incidence Graph</a>,
|
||||
<a href="./BidirectionalGraph.html">Bidirectional Graph</a>,
|
||||
<a
|
||||
href="./AdjacencyMatrix.html">AdjacencyMatrix</a>, <a
|
||||
href="./MutablePropertyGraph.html">MutablePropertyGraph</a>,
|
||||
<a href="../../utility/CopyConstructible.html">CopyConstructible</a>,
|
||||
@@ -255,6 +254,13 @@ The type for the edge descriptors associated with the
|
||||
iterator models <a href="../../utility/MultiPassInputIterator.html">MultiPassInputIterator</a>. <br>
|
||||
(Required by <a href="IncidenceGraph.html">IncidenceGraph</a>.)
|
||||
|
||||
<hr>
|
||||
<tt>graph_traits<adjacency_matrix>::in_edge_iterator</tt>
|
||||
<br><br>
|
||||
The type for the iterators returned by <tt>in_edges()</tt>. This
|
||||
iterator models <a href="../../utility/MultiPassInputIterator.html">MultiPassInputIterator</a>. <br>
|
||||
(Required by <a href="BidirectionalGraph.html">BidirectionalGraph</a>.)
|
||||
|
||||
<hr>
|
||||
<tt>graph_traits<adjacency_matrix>::adjacency_iterator</tt>
|
||||
<br><br>
|
||||
@@ -361,15 +367,15 @@ adjacency_matrix(EdgeIterator first, EdgeIterator last,
|
||||
std::pair<vertex_iterator, vertex_iterator>
|
||||
vertices(const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns an iterator-range providing access to the vertex set of graph <tt>g</i>.<br>
|
||||
Returns an iterator-range providing access to the vertex set of graph <tt>g</tt>.<br>
|
||||
(Required by <a href="VertexListGraph.html">VertexListGraph</a>.)
|
||||
|
||||
<hr>
|
||||
<pre>
|
||||
std::pair<edge_iterator, edge_iterator>
|
||||
edges(const adjacency_matrix& g)
|
||||
edges(const adjacency_matrix& g);
|
||||
</pre>
|
||||
Returns an iterator-range providing access to the edge set of graph <tt>g</i>.<br>
|
||||
Returns an iterator-range providing access to the edge set of graph <tt>g</tt>.<br>
|
||||
(Required by <a href="EdgeListGraph.html">EdgeListGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -378,7 +384,7 @@ std::pair<adjacency_iterator, adjacency_iterator>
|
||||
adjacent_vertices(vertex_descriptor v, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns an iterator-range providing access to the vertices adjacent to
|
||||
vertex <tt>v</i> in graph <tt>g</i>.<br>
|
||||
vertex <tt>v</tt> in graph <tt>g</tt>.<br>
|
||||
(Required by <a href="AdjacencyGraph.html">AdjacencyGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -387,9 +393,9 @@ std::pair<out_edge_iterator, out_edge_iterator>
|
||||
out_edges(vertex_descriptor v, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns an iterator-range providing access to the out-edges of
|
||||
vertex <tt>v</i> in graph <tt>g</i>. If the graph is undirected,
|
||||
this iterator-range provides access to all edge incident on
|
||||
vertex <tt>v</i>. <br>
|
||||
vertex <tt>v</tt> in graph <tt>g</tt>. If the graph is undirected,
|
||||
this iterator-range provides access to all edges incident on
|
||||
vertex <tt>v</tt>. <br>
|
||||
(Required by <a href="IncidenceGraph.html">IncidenceGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -397,7 +403,7 @@ vertex <tt>v</i>. <br>
|
||||
vertex_descriptor
|
||||
source(edge_descriptor e, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the source vertex of edge <tt>e</i>.<br>
|
||||
Returns the source vertex of edge <tt>e</tt>.<br>
|
||||
(Required by <a href="IncidenceGraph.html">IncidenceGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -405,7 +411,7 @@ Returns the source vertex of edge <tt>e</i>.<br>
|
||||
vertex_descriptor
|
||||
target(edge_descriptor e, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the target vertex of edge <tt>e</i>.<br>
|
||||
Returns the target vertex of edge <tt>e</tt>.<br>
|
||||
(Required by <a href="IncidenceGraph.html">IncidenceGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -413,15 +419,35 @@ Returns the target vertex of edge <tt>e</i>.<br>
|
||||
degree_size_type
|
||||
out_degree(vertex_descriptor u, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the number of edges leaving vertex <tt>u</i>.<br>
|
||||
Returns the number of edges leaving vertex <tt>u</tt>.<br>
|
||||
(Required by <a href="IncidenceGraph.html">IncidenceGraph</a>.)
|
||||
<hr>
|
||||
|
||||
<hr>
|
||||
<pre>
|
||||
std::pair<in_edge_iterator, in_edge_iterator>
|
||||
in_edges(vertex_descriptor v, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns an iterator-range providing access to the in-edges of
|
||||
vertex <tt>v</tt> in graph <tt>g</tt>. If the graph is undirected,
|
||||
this iterator-range provides access to all edges incident on
|
||||
vertex <tt>v</tt>. <br>
|
||||
(Required by <a href="BidirectionalGraph.html">BidirectionalGraph</a>.)
|
||||
|
||||
<hr>
|
||||
<pre>
|
||||
degree_size_type
|
||||
in_degree(vertex_descriptor u, const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the number of edges entering vertex <tt>u</tt>.<br>
|
||||
(Required by <a href="BidirectionalGraph.html">BidirectionalGraph</a>.)
|
||||
<hr>
|
||||
|
||||
<hr>
|
||||
<pre>
|
||||
vertices_size_type num_vertices(const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the number of vertices in the graph <tt>g</i>.<br>
|
||||
Returns the number of vertices in the graph <tt>g</tt>.<br>
|
||||
(Required by <a href="VertexListGraph.html">VertexListGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -443,7 +469,7 @@ std::pair<edge_descriptor, bool>
|
||||
edge(vertex_descriptor u, vertex_descriptor v,
|
||||
const adjacency_matrix& g)
|
||||
</pre>
|
||||
Returns the edge connecting vertex <tt>u</i> to vertex <tt>v</i> in graph <tt>g</i>.<br>
|
||||
Returns the edge connecting vertex <tt>u</tt> to vertex <tt>v</tt> in graph <tt>g</tt>.<br>
|
||||
(Required by <a href="AdjacencyMatrix.html">AdjacencyMatrix</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -452,7 +478,7 @@ std::pair<edge_descriptor, bool>
|
||||
add_edge(vertex_descriptor u, vertex_descriptor v,
|
||||
adjacency_matrix& g)
|
||||
</pre>
|
||||
Adds edge <tt>(u,v)</i> to the graph and returns the edge descriptor for
|
||||
Adds edge <tt>(u,v)</tt> to the graph and returns the edge descriptor for
|
||||
the new edge. If the edge is already in the graph then a duplicate
|
||||
will not be added and the <tt>bool</tt> flag will be <tt>false</tt>.
|
||||
This operation does not invalidate any of the graph's iterators
|
||||
@@ -466,7 +492,7 @@ add_edge(vertex_descriptor u, vertex_descriptor v,
|
||||
const EdgeProperty& p,
|
||||
adjacency_matrix& g)
|
||||
</pre>
|
||||
Adds edge <tt>(u,v)</i> to the graph and attaches <tt>p</tt> as the
|
||||
Adds edge <tt>(u,v)</tt> to the graph and attaches <tt>p</tt> as the
|
||||
value of the edge's internal property storage. Also see the previous
|
||||
<tt>add_edge()</tt> member function for more details.
|
||||
|
||||
@@ -475,7 +501,7 @@ value of the edge's internal property storage. Also see the previous
|
||||
void remove_edge(vertex_descriptor u, vertex_descriptor v,
|
||||
adjacency_matrix& g)
|
||||
</pre>
|
||||
Removes the edge <tt>(u,v)</i> from the graph. <br>
|
||||
Removes the edge <tt>(u,v)</tt> from the graph. <br>
|
||||
(Required by <a href="MutableGraph.html">MutableGraph</a>.)
|
||||
|
||||
<hr>
|
||||
@@ -490,7 +516,7 @@ to calling <tt>remove_edge(source(e, g), target(e, g), g)</tt>.<br>
|
||||
<pre>
|
||||
void clear_vertex(vertex_descriptor u, adjacency_matrix& g)
|
||||
</pre>
|
||||
Removes all edges to and from vertex <tt>u</i>. The vertex still appears
|
||||
Removes all edges to and from vertex <tt>u</tt>. The vertex still appears
|
||||
in the vertex set of the graph.<br>
|
||||
(Required by <a href="MutableGraph.html">MutableGraph</a>.)
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) 2004 Kris Beevers
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: astar_heuristic</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) 2004 Kris Beevers
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: A* Heuristic Search</Title>
|
||||
@@ -257,7 +253,11 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
type. The vertex descriptor type of the graph needs to be usable as
|
||||
the key type of the map.<br>
|
||||
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
</blockquote>
|
||||
|
||||
OUT: <tt>predecessor_map(PredecessorMap p_map)</tt>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) 2004 Kris Beevers
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: astar_visitor</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Bandwidth</Title>
|
||||
|
||||
+12
-1
@@ -1,4 +1,11 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta name="generator" content=
|
||||
@@ -110,7 +117,11 @@ IN: <tt>VertexIndexMap vertex_index</tt>
|
||||
<a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Bellman Ford Shortest Paths</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: bellman_visitor</Title>
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<head>
|
||||
<title>Boost Graph Library: Brandes' Betweenness Centrality</title>
|
||||
</head>
|
||||
@@ -256,7 +263,11 @@ IN: <tt>vertex_index_map(VertexIndexMap vertex_index)</tt>
|
||||
<a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: bfs_visitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Named Parameters</Title>
|
||||
|
||||
+29
-8
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Bibliography</Title>
|
||||
@@ -379,7 +375,32 @@ Software--Practice & Experience, 21 (11), pp. 1129-1164, 1991.
|
||||
<dd>King, I. P.<br>
|
||||
<em>An automatic reordering scheme for simultaneous equations derived from network analysis.</em><br>
|
||||
Int. J. Numer. Methods Engrg. 2, pp. 523-533, 1970.
|
||||
|
||||
|
||||
<p></p><dt><a name="palmer2000">63</a>
|
||||
<dd>C. Palmer and J. Steffan<br>
|
||||
<em>Generating Network Topologies That Obey Power Laws</em><br>
|
||||
Proceedings of GLOBECOM. November, 2000.
|
||||
|
||||
<p></p><dt><a name="edmonds65">64</a>
|
||||
<dd>J. Edmonds<br>
|
||||
<em>Paths, trees, and flowers</em><br>
|
||||
Canadian Journal of Mathematics 17 (1965), pp. 449-467.
|
||||
|
||||
<p></p><dt><a name="lengauer-tarjan79">65</a>
|
||||
<dd>Thomas Lengauer and Robert Endre Tarjan<br>
|
||||
<em>A fast algorithm for finding dominators in a flowgraph</em><br>
|
||||
ACM Transactions on Programming Language and Systems, 1(1):121-141, 1979.
|
||||
|
||||
<p></p><dt><a name="muchnick97">66</a>
|
||||
<dd>Steven S. Muchnick<br>
|
||||
<em>Advanced Compiler Design and Implementation</em><br>
|
||||
Morgan Kaufmann Publishers, San Fransisco, 1997.
|
||||
|
||||
<p></p><dt><a name="appel98">67</a>
|
||||
<dd>Andrew W. Appel<br>
|
||||
<em>Modern Compiler Implementation in JAVA</em><br>
|
||||
Cambridge University Press, 1998.
|
||||
|
||||
</dl>
|
||||
|
||||
<br>
|
||||
|
||||
@@ -30,12 +30,30 @@ and
|
||||
</h1>
|
||||
|
||||
<PRE>
|
||||
template<typename Graph, typename ComponentMap, typename OutputIterator,
|
||||
typename DiscoverTimeMap, typename LowPointMap>
|
||||
<i>// named parameter version</i>
|
||||
template <typename Graph, typename ComponentMap, typename OutputIterator,
|
||||
typename P, typename T, typename R>
|
||||
std::pair<std::size_t, OutputIterator>
|
||||
biconnected_components(const Graph& g, ComponentMap comp, OutputIterator out,
|
||||
const bgl_named_params<P, T, R>& params)
|
||||
|
||||
template <typename Graph, typename ComponentMap,
|
||||
typename P, typename T, typename R>
|
||||
std::size_t
|
||||
biconnected_components(const Graph& g, ComponentMap comp,
|
||||
OutputIterator out, DiscoverTimeMap discover_time,
|
||||
LowPointMap lowpt);
|
||||
const bgl_named_params<P, T, R>& params)
|
||||
|
||||
template <typename Graph, typename OutputIterator,
|
||||
typename P, typename T, typename R>
|
||||
OutputIterator articulation_points(const Graph& g, OutputIterator out,
|
||||
const bgl_named_params<P, T, R>& params)
|
||||
|
||||
<i>// non-named parameter version</i>
|
||||
template <typename Graph, typename ComponentMap, typename OutputIterator,
|
||||
typename DiscoverTimeMap, typename LowPointMap>
|
||||
std::pair<std::size_t, OutputIterator>
|
||||
biconnected_components(const Graph& g, ComponentMap comp, OutputIterator out,
|
||||
DiscoverTimeMap discover_time, LowPointMap lowpt);
|
||||
|
||||
template <typename Graph, typename ComponentMap, typename OutputIterator>
|
||||
std::pair<std::size_t, OutputIterator>
|
||||
@@ -43,9 +61,8 @@ biconnected_components(const Graph& g, ComponentMap comp, OutputIterator out);
|
||||
|
||||
template <typename Graph, typename ComponentMap>
|
||||
std::size_t biconnected_components(const Graph& g, ComponentMap comp);
|
||||
|
||||
<a name="sec:articulation_points">
|
||||
template<typename Graph, typename OutputIterator>
|
||||
template <typename Graph, typename OutputIterator>
|
||||
OutputIterator articulation_points(const Graph& g, OutputIterator out);
|
||||
</PRE>
|
||||
|
||||
@@ -123,7 +140,22 @@ algorithms return a Python <tt>list</tt> containing the articulation
|
||||
points.
|
||||
</blockquote>
|
||||
|
||||
UTIL/OUT: <tt>DiscoverTimeMap discover_time</tt>
|
||||
<h3>Named Parameters</h3>
|
||||
|
||||
IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
<blockquote>
|
||||
This maps each vertex to an integer in the range <tt>[0,
|
||||
num_vertices(g))</tt>. The type
|
||||
<tt>VertexIndexMap</tt> must be a model of
|
||||
<a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
UTIL/OUT: <tt>discover_time_map(DiscoverTimeMap discover_time)</tt>
|
||||
<blockquote>
|
||||
The discovery time of each vertex in the depth-first search. The
|
||||
type <tt>DiscoverTimeMap</tt> must be a model of <a
|
||||
@@ -141,7 +173,7 @@ UTIL/OUT: <tt>DiscoverTimeMap discover_time</tt>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
UTIL/OUT: <tt>LowPointMap lowpt</tt>
|
||||
UTIL/OUT: <tt>lowpoint_map(LowPointMap lowpt)</tt>
|
||||
<blockquote>
|
||||
The low point of each vertex in the depth-first search, which is the
|
||||
smallest vertex reachable from a given vertex with at most one back
|
||||
@@ -160,6 +192,37 @@ UTIL/OUT: <tt>LowPointMap lowpt</tt>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
UTIL/OUT: <tt>predecessor_map(PredecessorMap p_map)</tt>
|
||||
<blockquote>
|
||||
The predecessor map records the depth first search tree.
|
||||
The <tt>PredecessorMap</tt> type
|
||||
must be a <a
|
||||
href="../../property_map/ReadWritePropertyMap.html">Read/Write
|
||||
Property Map</a> whose key and value types are the same as the vertex
|
||||
descriptor type of the graph.<br>
|
||||
<b>Default:</b> an <a
|
||||
href="../../property_map/iterator_property_map.html">
|
||||
</tt>iterator_property_map</tt></a> created from a
|
||||
<tt>std::vector</tt> of <tt>vertex_descriptor</tt> of size
|
||||
<tt>num_vertices(g)</tt> and using <tt>get(vertex_index, g)</tt> for
|
||||
the index map.<br>
|
||||
|
||||
<b>Python</b>: Must be a <tt>vertex_vertex_map</tt> for the graph.<br>
|
||||
</blockquote>
|
||||
|
||||
IN: <tt>visitor(DFSVisitor vis)</tt>
|
||||
<blockquote>
|
||||
A visitor object that is invoked inside the algorithm at the
|
||||
event-points specified by the <a href="./DFSVisitor.html">DFS
|
||||
Visitor</a> concept. The visitor object is passed by value <a
|
||||
href="#1">[1]</a>. <br> <b>Default:</b>
|
||||
<tt>dfs_visitor<null_visitor></tt><br>
|
||||
|
||||
<b>Python</b>: The parameter should be an object that derives from
|
||||
the <a href="DFSVisitor.html#python"><tt>DFSVisitor</tt></a> type of
|
||||
the graph.
|
||||
</blockquote>
|
||||
|
||||
<H3>Complexity</H3>
|
||||
|
||||
<P>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000, 2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Breadth-First Search</Title>
|
||||
@@ -224,7 +220,11 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
@@ -242,7 +242,7 @@ UTIL: <tt>buffer(Buffer& Q)</tt>
|
||||
<b>Default:</b> <tt>boost::queue</tt><br>
|
||||
|
||||
<b>Python</b>: The buffer must derive from the <a
|
||||
href="./Buffer.html#python">Buffer</a> type for the graph.
|
||||
href="./Buffer.html">Buffer</a> type for the graph.
|
||||
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000, 2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Breadth-First Visit</Title>
|
||||
@@ -113,7 +109,7 @@ UTIL: <tt>buffer(Buffer& Q)</tt>
|
||||
<b>Default:</b> <tt>boost::queue</tt><br>
|
||||
|
||||
<b>Python</b>: The buffer must derive from the <a
|
||||
href="./Buffer.html#python">Buffer</a> type for the graph.
|
||||
href="./Buffer.html">Buffer</a> type for the graph.
|
||||
</blockquote>
|
||||
|
||||
|
||||
|
||||
+7
-9
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Challenge</Title>
|
||||
@@ -26,9 +22,9 @@
|
||||
<ul>
|
||||
|
||||
<li>Dynamic graph algorithms such as described in <a
|
||||
href="http://citeseer.nj.nec.com/eppstein99dynamic.html">Dynamic Graph
|
||||
href="http://citeseer.ist.psu.edu/eppstein99dynamic.html">Dynamic Graph
|
||||
Algorithms</a> and <a
|
||||
href="http://citeseer.nj.nec.com/alberts98software.html">A Software
|
||||
href="http://citeseer.ist.psu.edu/alberts98software.html">A Software
|
||||
Library of Dynamic Graph Algorithms</a>.
|
||||
|
||||
<li>Polish up code/docs for pending items and champion the formal
|
||||
@@ -108,6 +104,8 @@ It is currently difficult to use from a C++ program.
|
||||
<li>Implement a minimum-cost maximum-flow algorithm.</li>
|
||||
|
||||
<li>Make the <tt>type</tt> of all (internal) property maps convertible to the <tt>const_type</tt> of the property maps.<li>
|
||||
|
||||
<li>Add static functions to <tt>adjacency_list</tt> to return the per-vertex, per-edge, and per-graph overhead.</li>
|
||||
</ul>
|
||||
|
||||
<br>
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Function template circle_graph_layout</title></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table cellpadding="2" width="100%"><td valign="top"><img src="../../../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td><td align="center"><a href="../../../index.htm">Home</a></td><td align="center"><a href="../../libraries.htm">Libraries</a></td><td align="center"><a href="../../../people/people.htm">People</a></td><td align="center"><a href="../../../more/faq.htm">FAQ</a></td><td align="center"><a href="../../../more/index.htm">More</a></td></table><hr><div class="refentry" lang="en"><a name="id103562-bb"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2><img src="figs/python.gif" alt="(Python)"/><span class="refentrytitle">Function template circle_graph_layout</span></h2><p>boost::circle_graph_layout — Layout the graph with the vertices at the points of a regular n-polygon. </p></div><h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2><div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
|
||||
<html><!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Function template circle_graph_layout</title></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table cellpadding="2" width="100%"><td valign="top"><img src="../../../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td><td align="center"><a href="../../../index.htm">Home</a></td><td align="center"><a href="../../libraries.htm">Libraries</a></td><td align="center"><a href="../../../people/people.htm">People</a></td><td align="center"><a href="../../../more/faq.htm">FAQ</a></td><td align="center"><a href="../../../more/index.htm">More</a></td></table><hr><div class="refentry" lang="en"><a name="id103562-bb"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2><img src="figs/python.gif" alt="(Python)"/><span class="refentrytitle">Function template circle_graph_layout</span></h2><p>boost::circle_graph_layout — Layout the graph with the vertices at the points of a regular n-polygon. </p></div><h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2><div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis">
|
||||
<span class="bold"><b>template</b></span><<span class="bold"><b>typename</b></span> VertexListGraph, <span class="bold"><b>typename</b></span> PositionMap, <span class="bold"><b>typename</b></span> Radius>
|
||||
<span class="type"><span class="bold"><b>void</b></span></span> circle_graph_layout(<span class="bold"><b>const</b></span> VertexListGraph & g, PositionMap position,
|
||||
Radius radius);</pre></div><div class="refsect1" lang="en"><a name="id821794"></a><h2>Where Defined</h2><a href="../../../boost/graph/circle_layout.hpp">boost/graph/circle_layout.hpp</a><h2>Description</h2><p>The distance from the center of the polygon to each point is determined by the <tt class="computeroutput">radius</tt> parameter. The <tt class="computeroutput">position</tt> parameter must be an Lvalue Property Map whose value type is a class type containing <tt class="computeroutput">x</tt> and <tt class="computeroutput">y</tt> members that will be set to the <tt class="computeroutput">x</tt> and <tt class="computeroutput">y</tt> coordinates.
|
||||
|
||||
@@ -0,0 +1,720 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<!--
|
||||
-- Copyright (c) 2005 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)
|
||||
-->
|
||||
<head>
|
||||
<title>Compressed Sparse Row Graph</title>
|
||||
|
||||
<STYLE TYPE="text/css">
|
||||
<!--
|
||||
.indent
|
||||
{
|
||||
padding-left: 50pt;
|
||||
padding-right: 50pt;
|
||||
}
|
||||
-->
|
||||
</STYLE>
|
||||
|
||||
<script language="JavaScript" type="text/JavaScript">
|
||||
<!--
|
||||
function address(host, user) {
|
||||
var atchar = '@';
|
||||
var thingy = user+atchar+host;
|
||||
thingy = '<a hre' + 'f=' + "mai" + "lto:" + thingy + '>' + user+atchar+host + '</a>';
|
||||
document.write(thingy);
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<IMG SRC="../../../boost.png"
|
||||
ALT="C++ Boost" width="277" height="86"></img>
|
||||
<h1>Compressed Sparse Row Graph</h1>
|
||||
|
||||
<p>The class template <code>compressed_sparse_row_graph</code> is
|
||||
a graph class that uses the compact Compressed Sparse Row (CSR)
|
||||
format to store directed graphs. While CSR graphs have much less
|
||||
overhead than many other graph formats (e.g., <a
|
||||
href="adjacency_list.html"><code>adjacency_list</code></a>), they
|
||||
do not provide any mutability: one cannot add or remove vertices
|
||||
or edges from a CSR graph. Use this format in high-performance
|
||||
applications or for very large graphs that you do not need to
|
||||
change.</p>
|
||||
|
||||
<p>The CSR format stores vertices and edges in separate arrays,
|
||||
with the indices into these arrays corresponding to the identifier
|
||||
for the vertex or edge, respectively. The edge array is sorted by
|
||||
the source of each edge, but contains only the targets for the
|
||||
edges. The vertex array stores offsets into the edge array,
|
||||
providing the offset of the first edge outgoing from each
|
||||
vertex. Iteration over the out-edges for the <i>i</i><sup>th</sup>
|
||||
vertex in the graph is achieved by
|
||||
visiting <tt>edge_array[vertex_array[i]]</tt>, <tt>edge_array[vertex_array[i]+1]</tt>,
|
||||
..., <tt>edge_array[vertex_array[i+1]]</tt>. This format minimizes
|
||||
memory use to <i>O(n + m)</i>, where <i>n</i> and <i>m</i> are the
|
||||
number of vertices and edges, respectively. The constants
|
||||
multiplied by <i>n</i> and <i>m</i> are based on the size of the
|
||||
integers needed to represent indices into the edge and vertex
|
||||
arrays, respectively, which can be controlled using
|
||||
the <a href="#template-parms">template parameters</a>.</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="#synopsis">Synopsis</a></li>
|
||||
<li><a href="#where">Where Defined</a></li>
|
||||
<li><a href="#models">Models</a></li>
|
||||
<li><a href="#template-parms">Template parameters</a></li>
|
||||
<li><a href="#properties">Properties</a></li>
|
||||
<li><a href="#member-functions">Member functions</a>
|
||||
<ul>
|
||||
<li><a href="#constructors">Constructors</a></li>
|
||||
<li><a href="#mutators">Mutators</a></li>
|
||||
<li><a href="#property-access">Property access</a></li>
|
||||
</ul></li>
|
||||
|
||||
<li><a href="#non-members">Non-member functions</a>
|
||||
<ul>
|
||||
<li><a href="#vertex-access">Vertex access</a></li>
|
||||
<li><a href="#edge-access">Edge access</a></li>
|
||||
<li><a href="#property-map-accessors">Property map accessors</a></li>
|
||||
<li><a href="#incremental-construction-functions">Incremental construction functions</a></li>
|
||||
</ul></li>
|
||||
|
||||
<li><a href="#example">Example</a></li>
|
||||
</ul>
|
||||
|
||||
<a name="synopsis"></a><h2>Synopsis</h2>
|
||||
|
||||
<pre>
|
||||
namespace boost {
|
||||
|
||||
template<typename <a href="#Directed">Directed</a> = directedS, typename <a href="#VertexProperty">VertexProperty</a> = void,
|
||||
typename <a href="#EdgeProperty">EdgeProperty</a> = void, typename <a href="#GraphProperty">GraphProperty</a> = no_property,
|
||||
typename <a href="#Vertex">Vertex</a> = std::size_t, typename <a href="#EdgeIndex">EdgeIndex</a> = Vertex>
|
||||
class compressed_sparse_row_graph
|
||||
{
|
||||
public:
|
||||
<i>// <a href="#constructors">Graph constructors</a></i>
|
||||
<a href="#default-const">compressed_sparse_row_graph</a>();
|
||||
|
||||
template<typename InputIterator>
|
||||
<a href="#edge-const">compressed_sparse_row_graph</a>(InputIterator edge_begin, InputIterator edge_end,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges = 0,
|
||||
const GraphProperty& prop = GraphProperty());
|
||||
|
||||
template<typename InputIterator, typename EdgePropertyIterator>
|
||||
<a href="#edge-prop-const">compressed_sparse_row_graph</a>(InputIterator edge_begin, InputIterator edge_end,
|
||||
EdgePropertyIterator ep_iter,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges = 0,
|
||||
const GraphProperty& prop = GraphProperty());
|
||||
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
<a href="#graph-const">compressed_sparse_row_graph</a>(const Graph& g, const VertexIndexMap& vi,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges);
|
||||
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
compressed_sparse_row_graph(const Graph& g, const VertexIndexMap& vi);
|
||||
|
||||
template<typename Graph>
|
||||
explicit <a href="#graph-const">compressed_sparse_row_graph</a>(const Graph& g);
|
||||
|
||||
<i>// <a href="#mutators">Graph mutators</a></i>
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
void <a href="#assign">assign</a>(const Graph& g, const VertexIndexMap& vi,
|
||||
vertices_size_type numverts, edges_size_type numedges);
|
||||
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
void <a href="#assign">assign</a>(const Graph& g, const VertexIndexMap& vi);
|
||||
|
||||
template<typename Graph>
|
||||
void <a href="#assign">assign</a>(const Graph& g);
|
||||
|
||||
<i>// <a href="#property-access">Property Access</a></i>
|
||||
VertexProperty& <a href="#vertex-subscript">operator[]</a>(vertex_descriptor v);
|
||||
const VertexProperty& <a href="#vertex-subscript">operator[]</a>(vertex_descriptor v) const;
|
||||
EdgeProperty& <a href="#edge-subscript">operator[]</a>(edge_descriptor v);
|
||||
const EdgeProperty& <a href="#edge-subscript">operator[]</a>(edge_descriptor v) const;
|
||||
};
|
||||
|
||||
<i>// <a href="IncidenceGraph.html">Incidence Graph requirements</a></i>
|
||||
vertex_descriptor source(edge_descriptor, const compressed_sparse_row_graph&);
|
||||
vertex_descriptor target(edge_descriptor, const compressed_sparse_row_graph&);
|
||||
std::pair<out_edge_iterator, out_edge_iterator>
|
||||
out_edges(vertex_descriptor, const compressed_sparse_row_graph&);
|
||||
degree_size_type out_degree(vertex_descriptor v, const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="AdjacencyGraph.html">Adjacency Graph requirements</a></i>
|
||||
std::pair<adjacency_iterator, adjacency_iterator>
|
||||
adjacent_vertices(vertex_descriptor, const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="VertexListGraph.html">Vertex List Graph requirements</a></i>
|
||||
std::pair<vertex_iterator, vertex_iterator> vertices(const compressed_sparse_row_graph&);
|
||||
vertices_size_type num_vertices(const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="EdgeListGraph.html">Edge List Graph requirements</a></i>
|
||||
std::pair<edge_iterator, edge_iterator> edges(const compressed_sparse_row_graph&);
|
||||
edges_size_type num_edges(const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="#vertex-access">Vertex access</a></i>
|
||||
vertex_descriptor <a href="#vertex">vertex</a>(vertices_size_type i, const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="#edge-access">Edge access</a></i>
|
||||
std::pair<out_edge_iterator, out_edge_iterator>
|
||||
<a href="#edge_range">edge_range</a>(vertex_descriptor u, vertex_descriptor v, const compressed_sparse_row_graph&);
|
||||
std::pair<edge_descriptor, bool>
|
||||
<a href="#edge">edge</a>(vertex_descriptor u, vertex_descriptor v, const compressed_sparse_row_graph&);
|
||||
edge_descriptor <a href="#edge_from_index">edge_from_index</a>(edges_size_type i, const compressed_sparse_row_graph&);
|
||||
|
||||
<i>// <a href="#property-map-accessors">Property map accessors</a></i>
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>>
|
||||
property_map<compressed_sparse_row_graph, PropertyTag>::type
|
||||
<a href="#get">get</a>(PropertyTag, compressed_sparse_row_graph& g)
|
||||
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>>
|
||||
property_map<compressed_sparse_row_graph, Tag>::const_type
|
||||
<a href="#get">get</a>(PropertyTag, const compressed_sparse_row_graph& g)
|
||||
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>, class X>
|
||||
typename property_traits<property_map<compressed_sparse_row_graph, PropertyTag>::const_type>::value_type
|
||||
<a href="#get-x">get</a>(PropertyTag, const compressed_sparse_row_graph& g, X x)
|
||||
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>, class X, class Value>
|
||||
void <a href="#put-x">put</a>(PropertyTag, const compressed_sparse_row_graph& g, X x, const Value& value);
|
||||
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type&
|
||||
<a href="#get_property">get_property</a>(compressed_sparse_row_graph& g, GraphPropertyTag);
|
||||
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type const &
|
||||
<a href="#get_property">get_property</a>(const compressed_sparse_row_graph& g, GraphPropertyTag);
|
||||
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
void <a href="#set_property">set_property</a>(const compressed_sparse_row_graph& g, GraphPropertyTag,
|
||||
const typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type& value);
|
||||
|
||||
<i>// <a href="#incremental-construction-functions">Incremental construction functions</a></i>
|
||||
template<typename Graph>
|
||||
vertex_descriptor <a href=#add_vertex">add_vertex</a>(compressed_sparse_row_graph& g);
|
||||
|
||||
template<typename Graph>
|
||||
vertex_descriptor <a href=#add_vertices">add_vertices</a>(vertices_size_type count, compressed_sparse_row_graph& g);
|
||||
|
||||
template<typename Graph>
|
||||
edge_descriptor <a href=#add_edge">add_vertices</a>(vertex_descriptor src, vertex_descriptor tgt, compressed_sparse_row_graph& g);
|
||||
|
||||
} <i>// end namespace boost</i>
|
||||
</pre>
|
||||
|
||||
<a name="where"></a><h2>Where Defined</h2>
|
||||
<p><code><<a href="../../../boost/graph/compressed_sparse_row_graph.hpp">boost/graph/compressed_sparse_row_graph.hpp</a>></code></p>
|
||||
|
||||
<a name="models"></a><h2>Models</h2>
|
||||
|
||||
<p>The <tt>compressed_sparse_row_graph</tt> class template models
|
||||
(i.e., implements the requirements of) many of the
|
||||
BGL <a href="graph_concepts.html">graph concepts</a>, allowing it
|
||||
to be used with most of the BGL algorithms. In particular, it
|
||||
models the following specific graph concepts:</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="Graph.html">Graph</a></li>
|
||||
<li><a href="IncidenceGraph.html">IncidenceGraph</a></li>
|
||||
<li><a href="AdjacencyGraph.html">AdjacencyGraph</a></li>
|
||||
<li><a href="VertexListGraph.html">VertexListGraph</a></li>
|
||||
<li><a href="EdgeListGraph.html">EdgeListGraph</a></li>
|
||||
<li><a href="PropertyGraph.html">PropertyGraph</a></li>
|
||||
</ul>
|
||||
|
||||
<a name="template-parms"></a><h2>Template Parameters</h2>
|
||||
|
||||
<p>The <tt>compressed_sparse_row_graph</tt> class has several
|
||||
template parameters that can customize the layout in memory and
|
||||
what properties are attached to the graph itself. All
|
||||
parameters have defaults, so users interested only in the
|
||||
structure of a graph can use the
|
||||
type <tt>compressed_sparse_row_graph<></tt> and ignore
|
||||
the parameters.</p>
|
||||
|
||||
<b>Parameters</b>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
<a name="Directed"></a><code>Directed</code>
|
||||
<blockquote>
|
||||
A selector that determines whether the graph will be directed,
|
||||
bidirectional or undirected. At this time, the CSR graph type
|
||||
only supports directed graphs, so this value must
|
||||
be <code>boost::directedS</code>.<br>
|
||||
<b>Default</b>: <code>boost::directedS</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="VertexProperty"></a><code>VertexProperty</code>
|
||||
<blockquote>
|
||||
A class type that will be
|
||||
attached to each vertex in the graph. If this value
|
||||
is <code>void</code>, no properties will be attached to
|
||||
the vertices of the graph.<br>
|
||||
<b>Default</b>: <code>void</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="EdgeProperty"></a><code>EdgeProperty</code>
|
||||
<blockquote>
|
||||
A class type that will be attached to each edge in the graph. If
|
||||
this value is <code>void</code>, no properties will be
|
||||
attached to the edges of the graph.<br>
|
||||
<b>Default</b>: <code>void</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="GraphProperty"></a><code>GraphProperty</code>
|
||||
<blockquote>
|
||||
A nested set
|
||||
of <code>property</code> templates that describe the
|
||||
properties of the graph itself. If this value
|
||||
is <code>no_property</code>, no properties will be attached to
|
||||
the graph.<br>
|
||||
<b>Default</b>: <code>no_property</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="Vertex"></a><code>Vertex</code>
|
||||
<blockquote>
|
||||
An unsigned integral type that will be
|
||||
used as both the index into the array of vertices and as the
|
||||
vertex descriptor itself. Larger types permit the CSR graph to
|
||||
store more vertices; smaller types reduce the storage required
|
||||
per vertex.<br>
|
||||
<b>Default</b>: <code>std::size_t</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="EdgeIndex"></a><code>EdgeIndex</code>
|
||||
<blockquote>
|
||||
An unsigned integral type that will be used as the index into
|
||||
the array of edges. As with the <code>Vertex</code> parameter,
|
||||
larger types permit more edges whereas smaller types reduce
|
||||
the amount of storage needed per
|
||||
edge. The <code>EdgeIndex</code> type shall not be smaller
|
||||
than the <code>Vertex</code> type, but it may be larger. For
|
||||
instance, <code>Vertex</code> may be a 16-bit integer
|
||||
(allowing 32,767 vertices in the graph)
|
||||
whereas <code>EdgeIndex</code> could then be a 32-bit integer
|
||||
to allow a complete graph to be stored in the CSR format.<br>
|
||||
<b>Default</b>: <code>Vertex</code>
|
||||
</blockquote>
|
||||
|
||||
<a name="properties"></a><h2>Interior Properties</h2>
|
||||
|
||||
<p> The <tt>compressed_sparse_row_graph</tt> allows properties to
|
||||
be attached to its vertices, edges, or to the graph itself by way
|
||||
of its <a href="#template-parms">template parameters</a>. These
|
||||
properties may be accessed via
|
||||
the <a href="#property-access">member</a>
|
||||
and <a href="#property-map-accessors">non-member</a> property
|
||||
access functions, using the <a href="bundles.html">bundled
|
||||
properties</a> scheme.</p>
|
||||
|
||||
<p>The CSR graph provides two kinds of built-in
|
||||
properties: <tt>vertex_index</tt>, which maps from vertices to
|
||||
values in <tt>[0, n)</tt> and <tt>edge_index</tt>, which maps
|
||||
from edges to values in <tt>[0, m)</tt>, where <tt>n</tt>
|
||||
and <tt>m</tt> are the number of vertices and edges in the graph,
|
||||
respectively. </p>
|
||||
|
||||
<a name="member-functions"></a><h2>Member Functions</h2>
|
||||
|
||||
<a name="constructors"></a><h3>Constructors</h3>
|
||||
<pre><a name="default-const"></a>
|
||||
compressed_sparse_row_graph();
|
||||
</pre>
|
||||
<p class="indent">Constructs a graph with no vertices or edges.</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="edge-const"></a>
|
||||
template<typename InputIterator>
|
||||
compressed_sparse_row_graph(InputIterator edge_begin, InputIterator edge_end,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges = 0,
|
||||
const GraphProperty& prop = GraphProperty());
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Constructs a graph with <code>numverts</code> vertices whose
|
||||
edges are specified by the iterator range <code>[edge_begin,
|
||||
edge_end)</code>. The <tt>InputIterator</tt> must be a model of
|
||||
<a
|
||||
href="http://www.sgi.com/tech/stl/InputIterator.html">InputIterator</a>
|
||||
whose <code>value_type</code> is an <code>std::pair</code> of
|
||||
integer values. These integer values are the source and target
|
||||
vertices for the edges, and must fall within the range <code>[0,
|
||||
numverts)</code>. The edges in <code>[edge_begin,
|
||||
edge_end)</code> must be sorted so that all edges originating
|
||||
from vertex <i>i</i> preceed any edges originating from all
|
||||
vertices <i>j</i> where <i>j > i</i>.
|
||||
</p>
|
||||
|
||||
<p class="indent">
|
||||
The value <code>numedges</code>, if provided, tells how many
|
||||
edges are in the range <code>[edge_begin, edge_end)</code> and
|
||||
will be used to preallocate data structures to save both memory
|
||||
and time during construction.
|
||||
</p>
|
||||
|
||||
<p class="indent">
|
||||
The value <code>prop</code> will be used to initialize the graph
|
||||
property.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="edge-prop-const"></a>
|
||||
template<typename InputIterator, typename EdgePropertyIterator>
|
||||
compressed_sparse_row_graph(InputIterator edge_begin, InputIterator edge_end,
|
||||
EdgePropertyIterator ep_iter,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges = 0,
|
||||
const GraphProperty& prop = GraphProperty());
|
||||
</pre>
|
||||
<p class="indent">
|
||||
This constructor constructs a graph with <code>numverts</code>
|
||||
vertices and the edges provided in the iterator range
|
||||
<code>[edge_begin, edge_end)</code>. Its semantics are identical
|
||||
to the <a href="#edge-const">edge range constructor</a>, except
|
||||
that edge properties are also initialized. The type
|
||||
<tt>EdgePropertyIterator</tt> must be a model of the <a
|
||||
href="http://www.sgi.com/tech/stl/InputIterator.html">InputIterator</a>
|
||||
concept whose <tt>value_type</tt> is convertible to
|
||||
<tt>EdgeProperty</tt>. The iterator range <tt>[ep_iter, ep_ter +
|
||||
m)</tt> will be used to initialize the properties on the edges
|
||||
of the graph, where <tt>m</tt> is distance from
|
||||
<tt>edge_begin</tt> to <tt>edge_end</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="#graph-const"></a>
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
compressed_sparse_row_graph(const Graph& g, const VertexIndexMap& vi,
|
||||
vertices_size_type numverts,
|
||||
edges_size_type numedges);
|
||||
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
compressed_sparse_row_graph(const Graph& g, const VertexIndexMap& vi);
|
||||
|
||||
template<typename Graph>
|
||||
explicit compressed_sparse_row_graph(const Graph& g);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Calls the <a href="#assign"><tt>assign</tt></a> function with
|
||||
all of the arguments it is given.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<a name="mutators"></a><h3>Mutators</h3>
|
||||
<pre><a name="assign"></a>
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
void assign(const Graph& g, const VertexIndexMap& vi,
|
||||
vertices_size_type numverts, edges_size_type numedges);
|
||||
|
||||
template<typename Graph, typename VertexIndexMap>
|
||||
void assign(const Graph& g, const VertexIndexMap& vi);
|
||||
|
||||
template<typename Graph>
|
||||
void assign(const Graph& g);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Clears the CSR graph and builds a CSR graph in place from the
|
||||
structure of another graph. The graph type <tt>Graph</tt> must
|
||||
be a model of <a href="IncidenceGraph.html">IncidenceGraph</a>
|
||||
and have a <tt>vertex(i, g)</tt> function that retrieves the
|
||||
<i>i</i><sup>th</sup> vertex in the graph.
|
||||
|
||||
<br><b>Parameters</b>
|
||||
|
||||
<ul>
|
||||
<li><tt>g</tt>: The incoming graph.</li>
|
||||
|
||||
<li><tt>vi</tt>: A map from vertices to indices. If not
|
||||
provided, <tt>get(vertex_index, g)</tt> will be used.</li>
|
||||
|
||||
<li><tt>numverts</tt>: The number of vertices in the graph
|
||||
<tt>g</tt>. If not provided, <tt>Graph</tt> must be a model of
|
||||
<a href="VertexListGraph.html">VertexListGraph</a>.</li>
|
||||
|
||||
<li><tt>numedges</tt>: The number of edges in the graph
|
||||
<tt>g</tt>. If not provided, <tt>Graph</tt> must be a model of
|
||||
<a href="EdgeListGraph.html">EdgeListGraph</a>.</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<a name="property-access"></a><h3>Property Access</h3>
|
||||
|
||||
<pre><a name="vertex-subscript"></a>
|
||||
VertexProperty& operator[](vertex_descriptor v);
|
||||
const VertexProperty& operator[](vertex_descriptor v) const;
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Retrieves the property value associated with vertex
|
||||
<tt>v</tt>. Only valid when <tt>VertexProperty</tt> is a class
|
||||
type that is not <tt>no_property</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="edge-subscript">
|
||||
EdgeProperty& operator[](edge_descriptor v);
|
||||
const EdgeProperty& operator[](edge_descriptor v) const;
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Retrieves the property value associated with edge
|
||||
<tt>v</tt>. Only valid when <tt>EdgeProperty</tt> is a class
|
||||
type that is not <tt>no_property</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
<a name="non-members"></a><h2>Non-member Functions</h2>
|
||||
|
||||
<a name="vertex-access"></a><h3>Vertex access</h3>
|
||||
|
||||
<pre><a name="vertex"></a>
|
||||
vertex_descriptor vertex(vertices_size_type i, const compressed_sparse_row_graph&);
|
||||
</pre>
|
||||
<p class="indent">
|
||||
Retrieves the <i>i</i><sup>th</sup> vertex in the graph in
|
||||
constant time.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<a name="edge-access"></a><h3>Edge access</h3>
|
||||
<pre><a name="edge_range"></a>
|
||||
std::pair<out_edge_iterator, out_edge_iterator>
|
||||
edge_range(vertex_descriptor u, vertex_descriptor v, const compressed_sparse_row_graph&);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Returns all edges from <tt>u</tt> to <tt>v</tt>. Requires time
|
||||
linear in the number of edges outgoing from <tt>u</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="edge"></a>
|
||||
std::pair<edge_descriptor, bool>
|
||||
edge(vertex_descriptor u, vertex_descriptor v, const compressed_sparse_row_graph&);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
If there exists an edge <i>(u, v)</i> in the graph, returns the
|
||||
descriptor for that edge and <tt>true</tt>; otherwise, the
|
||||
second value in the pair will be <tt>false</tt>. If multiple
|
||||
edges exist from <tt>u</tt> to <tt>v</tt>, the first edge will
|
||||
be returned; use <a href="#edge_range"><tt>edge_range</tt></a>
|
||||
to retrieve all edges.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="edge_from_index"></a>
|
||||
edge_descriptor edge_from_index(edges_size_type i, const compressed_sparse_row_graph&);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Returns the <i>i</i><sup>th</sup> edge in the graph. This
|
||||
operation requires logarithmic time in the number of vertices.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<h3><a name="property-map-accessors">Property Map Accessors</a></h3>
|
||||
|
||||
<pre><a name="get"></a>
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>>
|
||||
property_map<compressed_sparse_row_graph, PropertyTag>::type
|
||||
get(PropertyTag, compressed_sparse_row_graph& g)
|
||||
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>>
|
||||
property_map<compressed_sparse_row_graph, Tag>::const_type
|
||||
get(PropertyTag, const compressed_sparse_row_graph& g)
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Returns the property map object for the vertex property
|
||||
specified by <TT>PropertyTag</TT>. The <TT>PropertyTag</TT> must
|
||||
be a member pointer to access one of the fields in
|
||||
<tt>VertexProperty</tt> or <tt>EdgeProperty</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="get-x"></a>
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>, class X>
|
||||
typename property_traits<property_map<compressed_sparse_row_graph, PropertyTag>::const_type>::value_type
|
||||
get(PropertyTag, const compressed_sparse_row_graph& g, X x)
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
This returns the property value for <tt>x</tt>, where <tt>x</tt>
|
||||
is either a vertex or edge descriptor.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="put-x"></a>
|
||||
template<typename <a href="./PropertyTag.html">PropertyTag</a>, class X, class Value>
|
||||
void put(PropertyTag, const compressed_sparse_row_graph& g, X x, const Value& value);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
This sets the property value for <tt>x</tt> to
|
||||
<tt>value</tt>. <tt>x</tt> is either a vertex or edge
|
||||
descriptor. <tt>Value</tt> must be convertible to <tt>typename
|
||||
property_traits<property_map<compressed_sparse_row_graph,
|
||||
PropertyTag>::type>::value_type</tt>
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="get_property"></a>
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type&
|
||||
get_property(compressed_sparse_row_graph& g, GraphPropertyTag);
|
||||
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type const &
|
||||
get_property(const compressed_sparse_row_graph& g, GraphPropertyTag);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Return the property specified by <tt>GraphPropertyTag</tt> that
|
||||
is attached to the graph object <tt>g</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="set_property"></a>
|
||||
template<typename <a href="./PropertyTag.html#GraphPropertyTag">GraphPropertyTag</a>>
|
||||
void set_property(const compressed_sparse_row_graph& g, GraphPropertyTag,
|
||||
const typename graph_property<compressed_sparse_row_graph, GraphPropertyTag>::type& value);
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Set the property specified by <tt>GraphPropertyTag</tt> that
|
||||
is attached to the graph object <tt>g</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<h3><a name="incremental-construction-functions">Incremental construction functions</a></h3>
|
||||
|
||||
<pre><a name="add_vertex"></a>
|
||||
vertex_descriptor add_vertex(compressed_sparse_row_graph& g)
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Add a new vertex to the end of the graph <tt>g</tt>, and return a
|
||||
descriptor for that vertex. The new vertex will be greater than any of
|
||||
the previous vertices in <tt>g</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="add_vertices"></a>
|
||||
vertex_descriptor add_vertices(vertices_size_type count, compressed_sparse_row_graph& g)
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Add <tt>count</tt> new vertices to the end of the graph <tt>g</tt>, and
|
||||
return a descriptor for the smallest new vertex. The new vertices will
|
||||
be greater than any of the previous vertices in <tt>g</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
|
||||
<pre><a name="add_edge"></a>
|
||||
edge_descriptor add_edge(vertex_descriptor src, vertex_descriptor tgt, compressed_sparse_row_graph& g)
|
||||
</pre>
|
||||
|
||||
<p class="indent">
|
||||
Add a new edge from <tt>src</tt> to <tt>tgt</tt> in the graph <tt>g</tt>,
|
||||
and return a descriptor for it. There must not be an edge in <tt>g</tt>
|
||||
whose source vertex is greater than <tt>src</tt>. If the vertex
|
||||
<tt>src</tt> has out edges before this operation is called, there must be
|
||||
none whose target is larger than <tt>tgt</tt>.
|
||||
</p>
|
||||
|
||||
<hr></hr>
|
||||
<a name="example"></a><h2>Example</h2>
|
||||
|
||||
<br>[<a
|
||||
href="../example/csr-example.cpp">libs/graph/example/csr-example.cpp</a>]
|
||||
|
||||
<p>We will use the <tt>compressed_sparse_row_graph</tt> graph
|
||||
class to store a simple Web graph. In this web graph the vertices
|
||||
represent web pages and the edges represent links from one web
|
||||
page to another. With each web page we want to associate a URL, so
|
||||
we initially create a <tt>WebPage</tt> class that stores the
|
||||
URL. Then we can create our graph type by providing
|
||||
<tt>WebPage</tt> as a parameter to the
|
||||
<tt>compressed_sparse_row_graph</tt> class template.</p>
|
||||
|
||||
<pre>
|
||||
class WebPage
|
||||
{
|
||||
public:
|
||||
std::string url;
|
||||
};
|
||||
|
||||
// ...
|
||||
|
||||
typedef compressed_sparse_row_graph<directedS, WebPage> WebGraph;
|
||||
WebGraph g(&the_edges[0], &the_edges[0] + sizeof(the_edges)/sizeof(E), 6);
|
||||
</pre>
|
||||
|
||||
<p>We can then set the properties on the vertices of the graph
|
||||
using the <a href="bundles.html">bundled properties</a> syntax,
|
||||
and display the edges for the user.</p>
|
||||
|
||||
<pre>
|
||||
// Set the URLs of each vertex
|
||||
int index = 0;
|
||||
BGL_FORALL_VERTICES(v, g, WebGraph)
|
||||
g[v].url = urls[index++];
|
||||
|
||||
// Output each of the links
|
||||
std::cout << "The web graph:" << std::endl;
|
||||
BGL_FORALL_EDGES(e, g, WebGraph)
|
||||
std::cout << " " << g[source(e, g)].url << " -> " << g[target(e, g)].url
|
||||
<< std::endl;
|
||||
</pre>
|
||||
|
||||
<p>See the <a href="../example/csr-example.cpp">complete example
|
||||
source</a> for other operations one can perform with a
|
||||
<tt>compressed_sparse_row_graph</tt>.</p>
|
||||
<br>
|
||||
<HR>
|
||||
<TABLE>
|
||||
<TR valign=top>
|
||||
<TD nowrap>Copyright © 2005</TD><TD>
|
||||
<A HREF="../../../people/doug_gregor.html">Doug Gregor</A>, Indiana University (<script language="Javascript">address("cs.indiana.edu", "dgregor")</script>)<br>
|
||||
Jeremiah Willcock, Indiana University (<script language="Javascript">address("osl.iu.edu", "jewillco")</script>)<br>
|
||||
<A HREF=http://www.osl.iu.edu/~lums>Andrew Lumsdaine</A>,
|
||||
Indiana University (<script language="Javascript">address("osl.iu.edu", "lums")</script>)
|
||||
</TD></TR></TABLE>
|
||||
</body>
|
||||
</html>
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000-2001
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Connected Components</Title>
|
||||
@@ -118,7 +114,12 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Constructing Graph Algorithms</Title>
|
||||
|
||||
+9
-9
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Copy Graph</Title>
|
||||
@@ -79,9 +75,13 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
The vertex index map type must be a model of <a
|
||||
href="../../property_map/ReadablePropertyMap.html">Readable Property
|
||||
Map</a> and must map the vertex descriptors of <tt>G</tt> to the
|
||||
integers from 0 to <tt>num_vertices(G)</tt>.<br>
|
||||
integers in the half-open range <tt>[0,num_vertices(G))</tt>.<br>
|
||||
|
||||
<b>Default:</b> <tt>get(vertex_index, G)</tt>
|
||||
<b>Default:</b> <tt>get(vertex_index, G)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
</blockquote>
|
||||
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
|
||||
<!-- Copyright (c) Jeremy Siek 2000 -->
|
||||
|
||||
<!-- Permission to use, copy, modify, distribute and sell this software -->
|
||||
<!-- and its documentation for any purpose is hereby granted without fee, -->
|
||||
<!-- provided that the above copyright notice appears in all copies and -->
|
||||
<!-- that both that copyright notice and this permission notice appear -->
|
||||
<!-- in supporting documentation. Silicon Graphics makes no -->
|
||||
<!-- representations about the suitability of this software for any -->
|
||||
<!-- purpose. It is provided "as is" without express or implied warranty. -->
|
||||
-- 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)
|
||||
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Cuthill-Mckee Ordering</Title>
|
||||
@@ -83,7 +79,7 @@ The goal of the Cuthill-Mckee (and reverse Cuthill-Mckee) ordering
|
||||
algorithm[<A
|
||||
HREF="bibliography.html#george81:__sparse_pos_def">14</A>, <A
|
||||
HREF="bibliography.html#cuthill69:reducing_bandwith">43</A>, <a
|
||||
href="bibliography.html#liu75:rcm">44</a>, <a
|
||||
href="bibliography.html#liu75:anal_cm_rcm">44</a>, <a
|
||||
href="bibliography.html#george71:fem">45</a> ] is to reduce the <a
|
||||
href="./bandwidth.html">bandwidth</a> of a graph by reordering the
|
||||
indices assigned to each vertex. The Cuthill-Mckee ordering algorithm
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Directed Acyclic Graph Shortest Paths</Title>
|
||||
@@ -54,7 +50,7 @@ than either the Dijkstra or Bellman-Ford algorithm.
|
||||
Use breadth-first search instead of this algorithm
|
||||
when all edge weights are equal to one. For the definition of the
|
||||
shortest-path problem see Section <A
|
||||
HREF="graph_theory_review.html#sec:shortest-path-algorithms">Shortest-Paths
|
||||
HREF="graph_theory_review.html#sec:shortest-paths-algorithms">Shortest-Paths
|
||||
Algorithms</A> for some background to the shortest-path problem.
|
||||
</P>
|
||||
|
||||
@@ -119,7 +115,11 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
<a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
@@ -6,6 +6,13 @@
|
||||
:copyright: This stylesheet has been placed in the public domain.
|
||||
|
||||
Default cascading style sheet for the HTML output of Docutils.
|
||||
|
||||
-- Copyright (c) 2005 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)
|
||||
|
||||
*/
|
||||
|
||||
.first {
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Depth-First Search</Title>
|
||||
@@ -224,7 +220,11 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Depth-First Visit</Title>
|
||||
@@ -27,12 +23,12 @@
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
template <class <a href="./IncidenceGraph.html">IncidenceGraph</a>, class <a href="./DFSVisitor.html">DFSVisitor</a>, class <a href="#ColorMap">ColorMap</a>>
|
||||
template <class <a href="./IncidenceGraph.html">IncidenceGraph</a>, class <a href="./DFSVisitor.html">DFSVisitor</a>, class ColorMap>
|
||||
void depth_first_visit(IncidenceGraph& g,
|
||||
typename graph_traits<IncidenceGraph>::vertex_descriptor s,
|
||||
DFSVisitor& vis, ColorMap color)
|
||||
|
||||
template <class <a href="./IncidenceGraph.html">IncidenceGraph</a>, class <a href="./DFSVisitor.html">DFSVisitor</a>, class <a href="#ColorMap">ColorMap</a>,
|
||||
template <class <a href="./IncidenceGraph.html">IncidenceGraph</a>, class <a href="./DFSVisitor.html">DFSVisitor</a>, class ColorMap,
|
||||
class TerminatorFunc>
|
||||
void depth_first_visit(IncidenceGraph& g,
|
||||
typename graph_traits<IncidenceGraph>::vertex_descriptor s,
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: dfs_visitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Dijkstra's Shortest Paths</Title>
|
||||
@@ -37,14 +33,14 @@ dijkstra_shortest_paths(Graph& g,
|
||||
template <typename Graph, typename <a href="DijkstraVisitor.html">DijkstraVisitor</a>,
|
||||
typename PredecessorMap, typename DistanceMap,
|
||||
typename WeightMap, typename VertexIndexMap, typename <a href="http://www.sgi.com/tech/stl/BinaryPredicate.html">CompareFunction</a>, typename <a href="http://www.sgi.com/tech/stl/BinaryFunction.html">CombineFunction</a>,
|
||||
typename DistInf, typename DistZero>
|
||||
typename DistInf, typename DistZero, typename ColorMap = <i>default</i>>
|
||||
void dijkstra_shortest_paths
|
||||
(const Graph& g,
|
||||
typename graph_traits<Graph>::vertex_descriptor s,
|
||||
PredecessorMap predecessor, DistanceMap distance, WeightMap weight,
|
||||
VertexIndexMap index_map,
|
||||
CompareFunction compare, CombineFunction combine, DistInf inf, DistZero zero,
|
||||
DijkstraVisitor vis)
|
||||
DijkstraVisitor vis, ColorMap color = <i>default</i>)
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
@@ -56,7 +52,7 @@ algorithm for the case when some edge weights are negative. Use
|
||||
breadth-first search instead of Dijkstra's algorithm when all edge
|
||||
weights are equal to one. For the definition of the shortest-path
|
||||
problem see Section <A
|
||||
HREF="graph_theory_review.html#sec:shortest-path-algorithms">Shortest-Paths
|
||||
HREF="graph_theory_review.html#sec:shortest-paths-algorithms">Shortest-Paths
|
||||
Algorithms</A> for some background to the shortest-path problem.
|
||||
</P>
|
||||
|
||||
@@ -227,7 +223,12 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
<a href="../../property_map/ReadablePropertyMap.html">Readable Property Map</a>. The value type of the map must be an
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: dijkstra_visitor</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: distance_recorder</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Edge List Class</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Edmunds-Karp Maximum Flow</Title>
|
||||
@@ -195,6 +191,10 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
Map</a>. The key type of the map must be the graph's vertex
|
||||
descriptor type.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
</blockquote>
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -102,5 +102,5 @@ void test_isomorphism()
|
||||
int test_main(int, char* [])
|
||||
{
|
||||
test_isomorphism();
|
||||
return EXIT_SUCCESS;
|
||||
return boost::report_errors();
|
||||
}
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
<HTML>
|
||||
<!--
|
||||
-- Copyright (c) The Trustees of Indiana University
|
||||
-- Copyright (c) 2004, 2005 The Trustees of Indiana University
|
||||
--
|
||||
-- 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: Douglas Gregor
|
||||
-- Jeremiah Willcock
|
||||
-- Andrew Lumsdaine
|
||||
-->
|
||||
<Head>
|
||||
@@ -45,7 +46,10 @@ public:
|
||||
|
||||
erdos_renyi_iterator();
|
||||
erdos_renyi_iterator(RandomGenerator& gen, vertices_size_type n,
|
||||
double probability = 0.0, bool allow_self_loops = false);
|
||||
double fraction = 0.0, bool allow_self_loops = false);
|
||||
erdos_renyi_iterator(RandomGenerator& gen, vertices_size_type n,
|
||||
edges_size_type m, bool allow_self_loops = false);
|
||||
|
||||
// Iterator operations
|
||||
reference operator*() const;
|
||||
pointer operator->() const;
|
||||
@@ -56,21 +60,28 @@ public:
|
||||
};
|
||||
</PRE>
|
||||
|
||||
<p> This class template implements a generator for Erdöos-Renyi
|
||||
<p> This class template implements a generator for Erdös-Renyi
|
||||
graphs, suitable for initializing an <a
|
||||
href="adjacency_list.html"><tt>adjacency_list</tt></a> or other graph
|
||||
structure with iterator-based initialization. An Erdöos-Renyi
|
||||
structure with iterator-based initialization. An Erdös-Renyi
|
||||
graph <em>G = (n, p)</em> is a graph with <em>n</em> vertices
|
||||
that. The probability of having an edge <em>(u, v)</em> in <em>G</em>
|
||||
is <em>p</em> for any vertices <em>u</em> and <em>v</em>. Typically,
|
||||
there are no self-loops, but the generator can optionally introduce
|
||||
self-loops with probability <em>p</em>.</p>
|
||||
self-loops with probability <em>p</em>. This generator will not
|
||||
produce any parallel edges and will produce edges in sorted order (as
|
||||
required by, e.g., the <a
|
||||
href="compressed_sparse_row.html"><tt>compressed_sparse_row_graph</tt></a>).</p>
|
||||
|
||||
<p>Erdös-Renyi graphs typically exhibit very little
|
||||
structure. For this reason, they are rarely useful in modeling
|
||||
real-world problems. However, they are often used when determining
|
||||
the theoretical complexity of complex graph algorithms.</p>
|
||||
|
||||
<p>If you want the possibility of generating parallel edges and don't
|
||||
care about sorted order, use the <a
|
||||
href="erdos_renyi_generator.html"><tt>erdos_renyi_iterator</tt></a>.</p>
|
||||
|
||||
<h3>Where Defined</h3>
|
||||
|
||||
<a href="../../../boost/graph/erdos_renyi_generator.hpp"><tt>boost/graph/erdos_renyi_generator.hpp</tt></a>
|
||||
@@ -85,14 +96,26 @@ Constructs a past-the-end iterator.
|
||||
|
||||
<pre>
|
||||
erdos_renyi_iterator(RandomGenerator& gen, vertices_size_type n,
|
||||
double probability = 0.0, bool allow_self_loops =
|
||||
false);
|
||||
double fraction = 0.0, bool allow_self_loops = false);
|
||||
</pre>
|
||||
<blockquote>
|
||||
Constructs an Erdös-Renyi generator iterator that creates a
|
||||
graph with <tt>n</tt> vertices and edges with probability
|
||||
<tt>probability</tt>. Probabilities are drawn from the random number
|
||||
generator <tt>gen</tt>. Self-loops are permitted only when
|
||||
graph with <tt>n</tt> vertices and a given <tt>fraction</tt> of the
|
||||
total number of edges that a simple graph may have.
|
||||
<tt>probability</tt>. Random vertices and edges are selected using the
|
||||
random number generator <tt>gen</tt>. Self-loops are permitted only when
|
||||
<tt>allow_self_loops</tt> is <tt>true</tt>.
|
||||
</blockquote>
|
||||
|
||||
<pre>
|
||||
erdos_renyi_iterator(RandomGenerator& gen, vertices_size_type n,
|
||||
edges_size_type m, bool allow_self_loops = false);
|
||||
</pre>
|
||||
<blockquote>
|
||||
Constructs an Erdös-Renyi generator iterator that creates a
|
||||
graph with <tt>n</tt> vertices and <tt>m</tt> edges.
|
||||
<tt>probability</tt>. Random vertices and edges are selected using the
|
||||
random number generator <tt>gen</tt>. Self-loops are permitted only when
|
||||
<tt>allow_self_loops</tt> is <tt>true</tt>.
|
||||
</blockquote>
|
||||
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2002
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Exceptions</Title>
|
||||
|
||||
+4
-8
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: FAQ</Title>
|
||||
@@ -77,7 +73,7 @@ disadvantage of an adaptor class (compared to overloaded functions) is
|
||||
that one has to physically wrap and unwrap the objects as they go
|
||||
into/out of BGL algorithms. So the overloaded function route is more
|
||||
convenient. Granted, this is not a huge difference, but since there
|
||||
weren't other strong reasons, it was enough for us to choose member
|
||||
weren't other strong reasons, it was enough for us to choose free
|
||||
functions.
|
||||
</p>
|
||||
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
# -*- makefile -*-
|
||||
# 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)
|
||||
|
||||
.SUFFIXES: .fig .gif .tif .jpeg
|
||||
|
||||
|
||||
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 3.7 KiB |
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 2.9 KiB |
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 7.7 KiB |
Executable
BIN
Binary file not shown.
|
After Width: | Height: | Size: 8.3 KiB |
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>File Dependency Example</Title>
|
||||
@@ -85,14 +81,27 @@ href="../example/file_dependencies.cpp"><TT>examples/file_dependencies.cpp</TT><
|
||||
<H2>Graph Setup</H2>
|
||||
|
||||
<P>
|
||||
Here we show the construction of the graph. For simplicity we have
|
||||
Here we show the construction of the graph. First, these are the required
|
||||
header files:
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
#include <iostream> // std::cout
|
||||
#include <utility> // std::pair
|
||||
#include <boost/graph/graph_traits.hpp>
|
||||
#include <boost/graph/adjacency_list.hpp>
|
||||
#include <boost/graph/topological_sort.hpp>
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
For simplicity we have
|
||||
constructed the graph "by-hand". A compilation system such
|
||||
as <TT>make</TT> would instead parse a <TT>Makefile</TT> to get the
|
||||
list of files and to set-up the dependencies. We use the
|
||||
<TT>adjacency_list</TT> class to represent the graph. The
|
||||
<TT>vecS</TT> selector means that a <TT>std::vector</TT> will be used
|
||||
to represent each edge-list, which provides efficient traversal. The
|
||||
<TT>directedS</TT> selector means we want a directed graph, and the
|
||||
<TT>bidirectionalS</TT> selector means we want a directed graph with access to both the edges outgoing from each vertex and the edges incoming to each vertex, and the
|
||||
<TT>color_property</TT> attaches a color property to each vertex of the
|
||||
graph. The color property will be used in several of the algorithms in
|
||||
the following sections.
|
||||
@@ -127,11 +136,10 @@ the following sections.
|
||||
};
|
||||
|
||||
using namespace boost;
|
||||
typedef adjacency_list<vecS, vecS, directedS,
|
||||
property<vertex_color_t, default_color_type>,
|
||||
property<edge_weight_t, int>
|
||||
typedef adjacency_list<vecS, vecS, bidirectionalS,
|
||||
property<vertex_color_t, default_color_type>
|
||||
> Graph;
|
||||
Graph g(N, used_by, used_by + sizeof(used_by) / sizeof(Edge));
|
||||
Graph g(used_by, used_by + sizeof(used_by) / sizeof(Edge), N);
|
||||
typedef graph_traits<Graph>::vertex_descriptor Vertex;
|
||||
</PRE>
|
||||
|
||||
@@ -195,86 +203,42 @@ earliest time that a file can be built assuming that an unlimited
|
||||
number of files can be built at the same time? The main criteria for
|
||||
when a file can be built is that all of the files it depends on must
|
||||
already be built. To simplify things for this example, we'll assume
|
||||
that each file takes 1 time unit to build (even header files). The
|
||||
that each file takes 1 time unit to build (even header files). For
|
||||
parallel compilation, we can build all of the files corresponding to
|
||||
vertices with no dependencies, e.g., those that have
|
||||
an <i>in-degree</i> of 0, in the first step. For all other files, the
|
||||
main observation for determining the ``time slot'' for a file is that
|
||||
the time slot must be one more than the maximum time-slot of the files
|
||||
it depends on.
|
||||
|
||||
<P>
|
||||
This idea of calculating a value based on the previously computed
|
||||
values of neighboring vertices is the same idea behind Dijkstra's
|
||||
single-source shortest paths algorithm (see <a
|
||||
href="./dijkstra_shortest_paths.html"><tt>dijkstra_shortest_paths()</tt></a>). The
|
||||
main difference between this situation and a shortest-path algorithm
|
||||
is that we want to use the maximum of the neighbors' values instead of
|
||||
the minimum. In addition, we do not have a single source
|
||||
vertex. Instead we will want to treat all vertices with in-degree of
|
||||
zero as sources (i.e., vertices with no edges coming into them). So we
|
||||
use Dijkstra's algorithm with several extra parameters instead
|
||||
of relying on the defaults.
|
||||
|
||||
<P>
|
||||
To use <TT>dijkstra_shortest_paths()</TT>, we must first set up the vertex
|
||||
and edge properties that will be used in the algorithm. We will need
|
||||
a time property (replacing the distance property of Dijkstra's
|
||||
algorithm) and an edge weight property. We will use a
|
||||
<TT>std::vector</TT> to store the time. The weight property has already
|
||||
been attached to the graph via a plug-in so here we just declare an
|
||||
map for the internal weight property.
|
||||
<P>We start be creating a vector <code>time</code> that will store the
|
||||
time step at which each file can be built. We initialize every value
|
||||
with time step zero.</p>
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
std::vector<int> time(N, 0);
|
||||
typedef std::vector<int>::iterator Time;
|
||||
using boost::edge_weight_t;
|
||||
typedef boost::property_map<Graph, edge_weight_t>::type Weight;
|
||||
Weight weight = get(edge_weight, g);
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
The next step is to identify the vertices with zero in-degree which
|
||||
will be our ``source'' vertices from which to start the shortest path
|
||||
searches. The in-degrees can be calculated with the following loop.
|
||||
<p>Now, we want to visit the vertices against in topological order,
|
||||
from those files that need to be built first until those that need
|
||||
to be built last. However, instead of printing out the order
|
||||
immediately, we will compute the time step in which each file should
|
||||
be built based on the time steps of the files it depends on. We
|
||||
only need to consider those files whose in-degree is greater than
|
||||
zero.</p>
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
std::vector<int> in_degree(N, 0);
|
||||
Graph::vertex_iterator i, iend;
|
||||
Graph::out_edge_iterator j, jend;
|
||||
for (boost::tie(i, iend) = vertices(g); i != iend; ++i)
|
||||
for (boost::tie(j, jend) = out_edges(*i, g); j != jend; ++j)
|
||||
in_degree[target(*j, g)] += 1;
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
Next we need to define comparison of the "cost". In this
|
||||
case we want each file to have a time stamp greater than any of its
|
||||
predecessors. Therefore we define comparison with the
|
||||
<TT>std::greater<int></TT> function object. We also need to
|
||||
tell the algorithm that we want to use addition to combine time
|
||||
values, so we use <TT>std::plus<int></TT>.
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
std::greater<int> compare;
|
||||
std::plus<int> combine;
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
We are now ready to call <TT>uniform_cost_search()</TT>. We just
|
||||
loop through all the vertices in the graph, and invoke the algorithm
|
||||
if the vertex has zero in-degree.
|
||||
|
||||
<P>
|
||||
<PRE>
|
||||
for (boost::tie(i, iend) = vertices(g); i != iend; ++i)
|
||||
if (in_degree[*i] == 0)
|
||||
boost::dijkstra_shortest_paths(g, *i,
|
||||
distance_map(&time[0]).
|
||||
weight_map(weight).
|
||||
distance_compare(compare).
|
||||
distance_combine(combine));
|
||||
</PRE>
|
||||
<pre>
|
||||
for (i = make_order.begin(); i != make_order.end(); ++i) {
|
||||
if (in_degree (*i, g) > 0) {
|
||||
Graph::in_edge_iterator j, j_end;
|
||||
int maxdist = 0;
|
||||
for (tie(j, j_end) = in_edges(*i, g); j != j_end; ++j)
|
||||
maxdist = std::max(time[source(*j, g)], maxdist);
|
||||
time[*i]=maxdist+1;
|
||||
}
|
||||
}
|
||||
</pre>
|
||||
|
||||
<P>
|
||||
Last, we output the time-slot that we've calculated for each vertex.
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Jeremy Siek makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Filtered Graph</Title>
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
<HTML>
|
||||
<!--
|
||||
-- Copyright (c) 2002 Rensselaer Polytechnic Institute
|
||||
--
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Floyd-Warshall All Pairs Shortest Paths</Title>
|
||||
<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b"
|
||||
|
||||
@@ -1,4 +1,12 @@
|
||||
<HTML>
|
||||
<!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Fruchterman-Reingold Force-Directed Layout</Title>
|
||||
<BODY BGCOLOR="#ffffff" LINK="#0000ee" TEXT="#000000" VLINK="#551a8b"
|
||||
@@ -193,7 +201,12 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
Map</a>. The value type of the map must be an integer type. The
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
<b>Python:</b> Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Graph Coloring Example</Title>
|
||||
@@ -121,7 +117,7 @@ namespace boost {
|
||||
void
|
||||
smallest_last_ordering(const VertexListGraph& G, Order order,
|
||||
Degree degree, Marker marker,
|
||||
BucketSorter& bucket_sorter) {
|
||||
BucketSorter& degree_buckets) {
|
||||
typedef typename graph_traits<VertexListGraph> GraphTraits;
|
||||
|
||||
typedef typename GraphTraits::vertex_descriptor Vertex;
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Concepts</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Graph Theory Review</Title>
|
||||
@@ -29,7 +25,7 @@ the reader has some previous acquaintance with graph algorithms, this
|
||||
chapter should be enough to get started. If the reader has no
|
||||
previous background in graph algorithms we suggest a more thorough
|
||||
introduction such as <a
|
||||
href="http://www.toc.lcs.mit.edu/~clr/">Introduction to Algorithms</a>
|
||||
href="http://toc.lcs.mit.edu/~clr/">Introduction to Algorithms</a>
|
||||
by Cormen, Leiserson, and Rivest.
|
||||
|
||||
<P>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Graph Traits</Title>
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
<HTML>
|
||||
<!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Gürsoy-Atun Layout</Title>
|
||||
<script language="JavaScript" type="text/JavaScript">
|
||||
@@ -81,7 +88,7 @@ Maps</a>.
|
||||
|
||||
<p> <a href="#topologies">Various topologies</a> are provided that
|
||||
produce different, interesting results. The <a
|
||||
href="#square_topology">square toplogy</a> can be used for normal
|
||||
href="#square_topology">square topology</a> can be used for normal
|
||||
display of graphs or distributing vertices for parallel computation on
|
||||
a process array, for instance. Other topologies, such as the <a
|
||||
href="#sphere_topology">sphere topology</a> (or N-dimensional <a
|
||||
@@ -178,6 +185,10 @@ IN: <tt>VertexIndexMap vertex_index_map</tt>
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
</blockquote>
|
||||
|
||||
IN: <tt>EdgeWeightMap weight</tt>
|
||||
@@ -225,6 +236,10 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
<blockquote>
|
||||
Equivalent to the non-named <tt>vertex_index_map</tt> parameter.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
</blockquote>
|
||||
|
||||
<a name="topologies"><h3>Topologies</h3></a>
|
||||
@@ -234,7 +249,7 @@ are provided, or you may create your own so long as it meets the
|
||||
requirements of the <a href="#topology-concept">Topology concept</a>.
|
||||
|
||||
<a name="topology-concept"><h4>Topology Concept</h4></a> Let
|
||||
<tt>Topology</tt> be a model of the Toplogy concept and let
|
||||
<tt>Topology</tt> be a model of the Topology concept and let
|
||||
<tt>space</tt> be an object of type <tt>Topology</tt>. <tt>p1</tt> and
|
||||
<tt>p2</tt> are objects of associated type <tt>point_type</tt> (see
|
||||
below). The following expressions must be valid:
|
||||
|
||||
+37
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: History</Title>
|
||||
@@ -80,6 +76,40 @@ September 27, 2000.
|
||||
<h2>Changes by version</h2>
|
||||
<a name="by-version">
|
||||
<ul>
|
||||
<a name="1.34.0"></a><li>Version 1.34.0<br><b>New algorithms and components</b>
|
||||
<ul>
|
||||
<li><a href="maximum_matching.html"><tt>edmonds_maximum_cardinality_matching</tt></a>, from Aaron Windsor.</li>
|
||||
<li><a href="lengauer_tarjan_dominator.htm"><tt>lengauer_tarjan_dominator_tree</tt></a>, from JongSoo Park.</li>
|
||||
<li><a href="compressed_sparse_row.html"><tt>compressed_sparse_row_graph</tt></a>, from Jeremiah Willcock and Douglas Gregor of Indiana University.</li>
|
||||
<li><a href="sorted_erdos_renyi_gen.html"><tt>sorted_erdos_renyi_iterator</tt></a>, from Jeremiah Willcock of Indiana University.</li>
|
||||
</ul><br><b>Enhancements</b><br>
|
||||
<ul>
|
||||
<li>Note: the name of the compiled library for GraphViz reading is now called <code>boost_graph</code> rather than <code>bgl-viz</code>.</li>
|
||||
<li><a href="biconnected_components.html"><tt>biconnected_components</tt></a> now has a visitor parameter and supports named parameters, from Janusz Piwowarski.</li>
|
||||
<li><a href="adjacency_matrix.html"><tt>adjacency_matrix</tt></a> now models the <a href="BidirectionalGraph.html">Bidirectional Graph</a> concept.</li>
|
||||
<li><a href="adjacency_list.html"><tt>adjacency_list</tt></a> is now <a href="../../serialization/doc/index.html">Serializable</a>, from Jeremy Siek of Rice University.</li>
|
||||
<li>Added <tt>edges_size_type</tt> and <tt>vertices_size_type</tt> to <tt>adjacency_list_traits</tt>, from Jeremy Siek of Rice University.</li>
|
||||
<li>Added <tt>operator< </tt>, etc. to the edge descriptor of <tt>adjacency_list</tt>,
|
||||
from Jeremy Siek of Rice University.</li>
|
||||
</ul>
|
||||
<br><b>Bug Fixes</b><br>
|
||||
<ul>
|
||||
<li>Fixed a bug that causes the relaxed heap to fail on x86 Linux.</li>
|
||||
<li>Bundled properties now work with adjacency list I/O.</li>
|
||||
<li><a href="floyd_warshall_shortest.html"><tt>floyd_warshall_all_pairs_shortest_paths</tt></a> now properly uses its <tt>compare</tt>, <tt>inf</tt>, and <tt>zero</tt> parameters.</li>
|
||||
<li><a href="johnson_all_pairs_shortest.html"><tt>johnson_all_pairs_shortest_paths</tt></a> now supports <tt>compare</tt>, <tt>combine</tt>, <tt>inf</tt>, and <tt>zero</tt>.</li>
|
||||
<li>Fixed a bug in smallest_last_vertex_ordering.hpp which could cause a vertex to be moved to the wrong bucket during an BucketSorter update.
|
||||
</ul>
|
||||
<br>
|
||||
</li>
|
||||
|
||||
<li>Version 1.33.1<br><b>Bug Fixes</b>
|
||||
<ul>
|
||||
<li><a href="fruchterman_reingold.html"><TT>fruchterman_reingold_force_directed_layout</TT></A>: Fixed enumeration of grid-force pairs, which caused some odd graph formations along grid lines.</li>
|
||||
<li><a href="king_ordering.html"><tt>king_ordering</tt></a> and <a
|
||||
href="cuthill_mckee_ordering.html"><tt>cuthill_mckee_ordering</tt></a>: Fixed bug that caused failures with the multi-component version of these algorithms.</li>
|
||||
</ul></li>
|
||||
|
||||
<li>Version 1.33.0<br><b>New algorithms and components</b>
|
||||
<ul>
|
||||
<li><a href="python.html">Experimental Python bindings</a>, from Doug Gregor and Indiana University.</li>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: incident</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Incremental Connected Components</Title>
|
||||
|
||||
+3
-7
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>The Boost Graph Library</Title>
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
<html>
|
||||
<!--
|
||||
-- Copyright (c) 2000 Jeremy Siek
|
||||
--
|
||||
-- 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)
|
||||
-->
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
|
||||
@@ -37,7 +44,7 @@ namespace boost {
|
||||
template <class Graph, class VertexDescriptor, class InEdgeIter>
|
||||
class inv_adjacency_iterator_generator {
|
||||
public:
|
||||
typedef <a href="../../utility/iterator_adaptors.htm#iterator_adaptor">iterator_adaptor</a><...> type;
|
||||
typedef <a href="../../iterator/doc/iterator_adaptor.html">iterator_adaptor</a><...> type;
|
||||
};
|
||||
}
|
||||
</pre>
|
||||
|
||||
+15
-9
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Isomorphism</Title>
|
||||
@@ -130,7 +126,12 @@ href="../../property_map/ReadablePropertyMap.html">Readable Property
|
||||
Map</a>. The value type of the map must be an integer type. The vertex
|
||||
descriptor type of graph 1 needs to be usable as the key type of the
|
||||
map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g1)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g1)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
@@ -144,7 +145,12 @@ href="../../property_map/ReadablePropertyMap.html">Readable Property
|
||||
Map</a>. The value type of the map must be an integer type. The vertex
|
||||
descriptor type of graph 2 needs to be usable as the key type of the
|
||||
map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g2)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g2)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Johnson All Pairs Shortest Paths</Title>
|
||||
@@ -25,6 +21,16 @@
|
||||
|
||||
<PRE>
|
||||
<i>// named parameter version</i>
|
||||
template <class VertexAndEdgeListGraph, class DistanceMatrix,
|
||||
class VertexID, class Weight, class BinaryPredicate,
|
||||
class BinaryFunction, class Infinity, class DistanceZero>
|
||||
bool
|
||||
johnson_all_pairs_shortest_paths(VertexAndEdgeListGraph& g1,
|
||||
DistanceMatrix& D,
|
||||
VertexID id1, Weight w1, const BinaryPredicate& compare,
|
||||
const BinaryFunction& combine, const Infinity& inf,
|
||||
DistanceZero zero);
|
||||
|
||||
template <typename Graph, typename DistanceMatrix, typename P, typename T, typename R>
|
||||
bool johnson_all_pairs_shortest_paths(Graph& g, DistanceMatrix& D,
|
||||
const bgl_named_params<P, T, R>& params = <i>all defaults</i>)
|
||||
@@ -104,6 +110,11 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
integer type. The vertex descriptor type of the graph needs to be
|
||||
usable as the key type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
</blockquote>
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
# 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)
|
||||
|
||||
|
||||
$lastpage = 0;
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<head>
|
||||
<meta name="generator" content=
|
||||
"HTML Tidy for Mac OS X (vers 12 April 2005), see www.w3.org">
|
||||
@@ -151,7 +158,7 @@ OUT: <tt>PositionMap position</tt>
|
||||
This property map is used to store the position of each vertex. The
|
||||
type <tt>PositionMap</tt> must be a model of <a
|
||||
href="../../property_map/WritablePropertyMap.html">Writable Property
|
||||
Map</a>, with the graph's edge descriptor type as its key type.<br>
|
||||
Map</a>, with the graph's vertex descriptor type as its key type.<br>
|
||||
|
||||
<b>Python</b>: The position map must be a <tt>vertex_point2d_map</tt> for
|
||||
the graph.<br>
|
||||
@@ -217,7 +224,12 @@ IN: <tt>VertexIndexMap index</tt>
|
||||
<blockquote>
|
||||
As a mapping from vertices to index values between 0 and
|
||||
<tt class="computeroutput">num_vertices(g)</tt> .<br>
|
||||
<b>Default</b>:<tt class="computeroutput">get(vertex_index,g)</tt>.<br>
|
||||
<b>Default</b>:<tt class="computeroutput">get(vertex_index,g)</tt>.
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Kevin Bacon Example</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
~~ Copyright (c) Jeremy Siek 2000
|
||||
~~
|
||||
~~ Permission to use, copy, modify, distribute and sell this software
|
||||
~~ and its documentation for any purpose is hereby granted without fee,
|
||||
~~ provided that the above copyright notice appears in all copies and
|
||||
~~ that both that copyright notice and this permission notice appear
|
||||
~~ in supporting documentation. Silicon Graphics makes no
|
||||
~~ representations about the suitability of this software for any
|
||||
~~ purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
|
||||
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. We make no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Known Problems</Title>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Kruskal Minimum Spanning Tree</Title>
|
||||
@@ -95,7 +91,7 @@ IN: <tt>const Graph& g</tt>
|
||||
IN: <tt>OutputIterator spanning_tree_edges</tt>
|
||||
<blockquote>
|
||||
The edges of the minimum spanning tree are output to this <a
|
||||
href="http:www.sgi.com/tech/stl/OutputIterator.html">Output
|
||||
href="http://www.sgi.com/tech/stl/OutputIterator.html">Output
|
||||
Iterator</a>.<br>
|
||||
|
||||
<b>Python</b>: This parameter is not used in Python. Instead, a
|
||||
@@ -167,7 +163,12 @@ IN: <tt>vertex_index_map(VertexIndexMap i_map)</tt>
|
||||
Map</a>. The value type of the map must be an integer type. The
|
||||
vertex descriptor type of the graph needs to be usable as the key
|
||||
type of the map.<br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt><br>
|
||||
<b>Default:</b> <tt>get(vertex_index, g)</tt>
|
||||
Note: if you use this default, make sure your graph has
|
||||
an internal <tt>vertex_index</tt> property. For example,
|
||||
<tt>adjacenty_list</tt> with <tt>VertexList=listS</tt> does
|
||||
not have an internal <tt>vertex_index</tt> property.
|
||||
<br>
|
||||
|
||||
<b>Python</b>: Unsupported parameter.
|
||||
</blockquote>
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Struct template layout_tolerance</title></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table cellpadding="2" width="100%"><td valign="top"><img src="../../../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td><td align="center"><a href="../../../index.htm">Home</a></td><td align="center"><a href="../../libraries.htm">Libraries</a></td><td align="center"><a href="../../../people/people.htm">People</a></td><td align="center"><a href="../../../more/faq.htm">FAQ</a></td><td align="center"><a href="../../../more/index.htm">More</a></td></table><hr><div class="refentry" lang="en"><a name="struct.boost.layout_tolerance"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2><span class="refentrytitle">Struct template layout_tolerance</span></h2><p>boost::layout_tolerance — Determines when to terminate layout of a particular graph based on a given relative tolerance. </p></div><h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2><div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><b>template</b></span><<span class="bold"><b>typename</b></span> T = double>
|
||||
<html><!--
|
||||
-- Copyright (c) 2004 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)
|
||||
-->
|
||||
<head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Struct template layout_tolerance</title></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table cellpadding="2" width="100%"><td valign="top"><img src="../../../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td><td align="center"><a href="../../../index.htm">Home</a></td><td align="center"><a href="../../libraries.htm">Libraries</a></td><td align="center"><a href="../../../people/people.htm">People</a></td><td align="center"><a href="../../../more/faq.htm">FAQ</a></td><td align="center"><a href="../../../more/index.htm">More</a></td></table><hr><div class="refentry" lang="en"><a name="struct.boost.layout_tolerance"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2><span class="refentrytitle">Struct template layout_tolerance</span></h2><p>boost::layout_tolerance — Determines when to terminate layout of a particular graph based on a given relative tolerance. </p></div><h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2><div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="bold"><b>template</b></span><<span class="bold"><b>typename</b></span> T = double>
|
||||
<span class="bold"><b>struct</b></span> layout_tolerance {
|
||||
<span class="emphasis"><em>// <a href="layout_tolerance.html#struct.boost.layout_toleranceconstruct-copy-destruct">construct/copy/destruct</a></em></span>
|
||||
<span class="emphasis"><em>// <a href="layout_tolerance.html#layout_toleranceconstruct-copy-destruct">construct/copy/destruct</a></em></span>
|
||||
<a href="layout_tolerance.html#id103752-bb">layout_tolerance</a>(<span class="bold"><b>const</b></span> T & = T(0.001));
|
||||
|
||||
<span class="emphasis"><em>// <a href="layout_tolerance.html#id103692-bb">public member functions</a></em></span>
|
||||
|
||||
@@ -2,13 +2,9 @@
|
||||
<!--
|
||||
-- Copyright (c) Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine 2000
|
||||
--
|
||||
-- Permission to use, copy, modify, distribute and sell this software
|
||||
-- and its documentation for any purpose is hereby granted without fee,
|
||||
-- provided that the above copyright notice appears in all copies and
|
||||
-- that both that copyright notice and this permission notice appear
|
||||
-- in supporting documentation. Silicon Graphics makes no
|
||||
-- representations about the suitability of this software for any
|
||||
-- purpose. It is provided "as is" without express or implied warranty.
|
||||
-- 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)
|
||||
-->
|
||||
<Head>
|
||||
<Title>Boost Graph Library: Converting Existing Graphs to BGL</Title>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user