diff --git a/build/Jamfile b/build/Jamfile
index e2ec5ae1..bd72193d 100644
--- a/build/Jamfile
+++ b/build/Jamfile
@@ -1,7 +1,9 @@
subproject libs/graph/build ;
SOURCES = graphviz_graph_lex graphviz_digraph_lex
- graphviz_graph_parser graphviz_digraph_parser ;
+ graphviz_graph_parser graphviz_digraph_parser
+ read_graphviz_spirit
+ ;
GRAPHVIZ_DEFS(graphviz_graph_lex) =
GRAPHVIZ_DIRECTED=0
@@ -35,6 +37,7 @@ GRAPHVIZ_DEFS(graphviz_digraph_parser) =
: ../src/$(SOURCES).cpp
: DON'T! The Boost Graph Library is a header-only library and
does not need to be built to be used. The only exception is the GraphViz input parser.How to Build the BGL
When compiling programs that use the BGL, be sure to compile with optimization. For instance, select "Release" mode with diff --git a/doc/read_graphviz.html b/doc/read_graphviz.html index c2470cf8..7c0f0efc 100644 --- a/doc/read_graphviz.html +++ b/doc/read_graphviz.html @@ -12,11 +12,14 @@
template <typename MutableGraph> bool read_graphviz(std::istream& in, MutableGraph& graph, - dynamic_properties& dp); + dynamic_properties& dp, + const std::string& node_id = "node_id"); +// Only available if BOOST_GRAPH_READ_GRAPHVIZ_ITERATORS is defined template <typename MultiPassIterator, typename MutableGraph> bool read_graphviz(MultiPassIterator begin, MultiPassIterator end, - MutableGraph& graph, dynamic_properties& dp); + MutableGraph& graph, dynamic_properties& dp, + const std::string& node_id = "node_id"); // Deprecated GraphViz readers void read_graphviz(const std::string& file, GraphvizDigraph& g); @@ -27,7 +30,11 @@ void read_graphviz(FILE* file, GraphvizGraph& g);The read_graphviz function interprets a graph described using the GraphViz DOT language and builds a BGL graph that captures that description. Using this function, you can initialize a graph using -data stored as text.
+data stored as text. To use the iterator version of read_graphviz, +you will need to define the macro BOOST_GRAPH_READ_GRAPHVIZ_ITERATORS +before including the header <boost/graph/graphviz.hpp>. Doing so +may greatly increase the amount of time required to compile the +GraphViz reader.The DOT language can specify both directed and undirected graphs, and read_graphviz differentiates between the two. One must pass read_graphviz an undirected graph when reading an undirected graph; @@ -39,8 +46,7 @@ takes a read_graphviz stores node identifier names under the -property key "node_id". The deprecated reading functions do not -support properties.
+vertex property map named node_id.
To use the GraphViz readers, you will need to build and link against +the "bgl-viz" library. The library can be built by following the +Boost Jam Build Instructions for the subdirectory libs/graph/build.
+The deprecated readers do not provide exceptions on error (they abort), they require the use of one of the predefined graph types (GraphvizDigraph or GraphvizGraph), and they do not support arbitrary properties. They will be removed in a future Boost version.
-To use the deprecated GraphViz readers, you will need to build and -link against the "bgl-viz" library. The library can be built in two -ways:
----
-- Follow the Boost Jam Build Instructions for the subdirectory -libs/graph/build.
-- In the directory libs/graph/src, use the provided Makefile -(for Unix-like systems).
-
Alternatively, you can just include the source files in -libs/graph/src in your project or makefile.
- The read_graphviz function does not use any code from the @@ -166,11 +166,11 @@ that property map value types are default constructible.
- Currently the parser relies upon lowercase language keywords @@ -186,7 +186,7 @@ identifier(so-called "ID" in the source) is required to support this.<