|
Boost-Commit : |
From: asutton_at_[hidden]
Date: 2007-06-06 18:51:58
Author: asutton
Date: 2007-06-06 18:51:57 EDT (Wed, 06 Jun 2007)
New Revision: 4475
URL: http://svn.boost.org/trac/boost/changeset/4475
Log:
Changed all non-member functions to use the impl() method to access
the underlying graph rather than implementing member function variants
of all the required graph methods
Text files modified:
sandbox/SOC/2007/graphs/boost/graph/directed_graph.hpp | 184 +++++++++------------------------------
sandbox/SOC/2007/graphs/boost/graph/undirected_graph.hpp | 176 +++++++------------------------------
2 files changed, 77 insertions(+), 283 deletions(-)
Modified: sandbox/SOC/2007/graphs/boost/graph/directed_graph.hpp
==============================================================================
--- sandbox/SOC/2007/graphs/boost/graph/directed_graph.hpp (original)
+++ sandbox/SOC/2007/graphs/boost/graph/directed_graph.hpp 2007-06-06 18:51:57 EDT (Wed, 06 Jun 2007)
@@ -78,6 +78,13 @@
: m_graph(n, p)
{}
+ inline type& impl()
+ { return m_graph; }
+
+ inline const type& impl() const
+ { return m_graph; }
+
+
// bundled property support
#ifndef BOOST_GRAPH_NO_BUNDLED_PROPERTIES
vertex_bundled& operator [](vertex_descriptor v)
@@ -96,112 +103,6 @@
// Graph concepts
static inline vertex_descriptor null_vertex()
{ return type::null_vertex(); }
-
- // IncidenceGraph concepts
- vertex_descriptor source(edge_descriptor e) const
- { return boost::source(e, m_graph); }
-
- vertex_descriptor target(edge_descriptor e) const
- { return boost::target(e, m_graph); }
-
- inline degree_size_type out_degree(vertex_descriptor v) const
- { return boost::out_degree(v, m_graph); }
-
- inline std::pair<out_edge_iterator, out_edge_iterator> out_edges(vertex_descriptor v) const
- { return boost::out_edges(v, m_graph); }
-
- // BidirectionalGraph concepts
- inline degree_size_type in_degree(vertex_descriptor v) const
- { return boost::in_degree(v, m_graph); }
-
- inline std::pair<in_edge_iterator, in_edge_iterator> in_edges(vertex_descriptor v) const
- { return boost::in_edges(v, m_graph); }
-
- inline degree_size_type degree(vertex_descriptor v)
- { return boost::degree(v, m_graph); }
-
- // AdjacencyGraph concepts
- inline std::pair<adjacency_iterator, adjacency_iterator> adjacent_vertices(vertex_descriptor v) const
- { return boost::adjacent_vertices(v, m_graph); }
-
- // VertexListGraph concepts
- inline vertices_size_type num_vertices() const
- { return boost::num_vertices(m_graph); }
-
- inline std::pair<vertex_iterator, vertex_iterator> vertices() const
- { return boost::vertices(m_graph); }
-
- // EdgeListGraph concepts
- inline edges_size_type num_edges() const
- { return boost::num_edges(m_graph); }
-
- inline std::pair<edge_iterator, edge_iterator> edges() const
- { return boost::edges(m_graph); }
-
- // MutableGraph concepts
- inline vertex_descriptor add_vertex()
- { return boost::add_vertex(m_graph); }
-
- inline void clear_vertex(vertex_descriptor v)
- { boost::clear_vertex(v, m_graph); }
-
- inline void remove_vertex(vertex_descriptor v)
- { boost::remove_vertex(v, m_graph); }
-
- inline std::pair<edge_descriptor, bool> add_edge(vertex_descriptor u, vertex_descriptor v)
- { return boost::add_edge(u, v, m_graph); }
-
- inline void remove_edge(vertex_descriptor u, vertex_descriptor v)
- { boost::remove_edge(u, v, m_graph); }
-
- inline void remove_edge(edge_descriptor e)
- { boost::remove_edge(e, m_graph); }
-
- inline void remove_edge(edge_iterator i)
- { boost::remove_edge(i, m_graph); }
-
- template <typename Predicate>
- inline void remove_edge_if(Predicate p)
- { boost::remove_edge_if(p, m_graph); }
-
- template <typename Predicate>
- inline void remove_out_edge_if(vertex_descriptor v, Predicate p)
- { boost::remove_out_edge_if(v, p, m_graph); }
-
- template <typename Predicate>
- inline void remove_in_edge_if(vertex_descriptor v, Predicate p)
- { boost::remove_in_edge_if(v, p, m_graph); }
-
- // PropertyGraph concepts
- template <typename Property>
- inline typename property_map<type, Property>::type
- get(Property p)
- { return boost::get(p, m_graph); }
-
- template <typename Property>
- inline typename property_map<type, Property>::const_type
- get(Property p) const
- { return boost::get(p, m_graph); }
-
- template <typename Property, typename Key>
- inline typename property_traits<typename property_map<type, Property>::const_type>::value_type
- get(Property p, const Key& k)
- { return boost::get(p, m_graph, k); }
-
- template <typename Property, typename Key, typename Value>
- inline void
- put(Property p, const Key& k, const Value& v)
- { boost::put(p, m_graph, k, v); }
-
- // MutablePropertyGraph concepts
- template <typename Property>
- inline vertex_descriptor add_vertex(const Property& vp)
- { return boost::add_vertex(vp, m_graph); }
-
- template <typename Property>
- inline std::pair<edge_descriptor, bool>
- add_edge(vertex_descriptor u, vertex_descriptor v, const Property& ep)
- { return boost::add_edge(u, v, ep, m_graph); }
};
// IncidenceGraph concepts
@@ -210,7 +111,7 @@
source(typename directed_graph<VP,EP,GP>::edge_descriptor e,
const directed_graph<VP,EP,GP> &g)
{
- return g.source(e);
+ return source(e, g.impl());
}
template <class VP, class EP, class GP>
@@ -218,7 +119,7 @@
target(typename directed_graph<VP,EP,GP>::edge_descriptor e,
const directed_graph<VP,EP,GP> &g)
{
- return g.target(e);
+ return target(e, g.impl());
}
template <class VP, class EP, class GP>
@@ -226,7 +127,7 @@
out_degree(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
const directed_graph<VP,EP,GP> &g)
{
- return g.out_degree(v);
+ return out_degree(v, g.impl());
}
template <class VP, class EP, class GP>
@@ -237,7 +138,7 @@
out_edges(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
const directed_graph<VP,EP,GP> &g)
{
- return g.out_edges(v);
+ return out_edges(v, g.impl());
}
// BidirectionalGraph concepts
@@ -246,19 +147,10 @@
in_degree(const directed_graph<VP,EP,GP> &g,
typename directed_graph<VP,EP,GP>::vertex_descriptor v)
{
- return g.in_degree(v);
+ return in_degree(v, g.impl());
}
template <class VP, class EP, class GP>
- inline typename directed_graph<VP,EP,GP>::degree_size_type
- degree(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
- const directed_graph<VP,EP,GP> &g)
- {
- return g.degree(v);
- }
-
-
- template <class VP, class EP, class GP>
inline std::pair<
typename directed_graph<VP,EP,GP>::in_edge_iterator,
typename directed_graph<VP,EP,GP>::in_edge_iterator
@@ -266,7 +158,15 @@
in_edges(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
const directed_graph<VP,EP,GP> &g)
{
- return g.in_edges(v);
+ return in_edges(v, g.impl());
+ }
+
+ template <class VP, class EP, class GP>
+ inline typename directed_graph<VP,EP,GP>::degree_size_type
+ degree(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
+ const directed_graph<VP,EP,GP> &g)
+ {
+ return degree(v, g.impl());
}
// AdjacencyGraph concepts
@@ -278,7 +178,7 @@
adjacent_vertices(typename directed_graph<VP,EP,GP>::vertex_descriptor v,
const directed_graph<VP,EP,GP>& g)
{
- return g.adjacent_vertices(v);
+ return adjacent_vertices(v, g.impl());
}
// VertexListGraph concepts
@@ -286,7 +186,7 @@
inline typename directed_graph<VP,EP,GP>::vertices_size_type
num_vertices(const directed_graph<VP,EP,GP>& g)
{
- return g.num_vertices();
+ return num_vertices(g.impl());
}
template <class VP, class EP, class GP>
@@ -296,7 +196,7 @@
>
vertices(const directed_graph<VP,EP,GP>& g)
{
- return g.vertices();
+ return vertices(g.impl());
}
// EdgeListGraph concepts
@@ -304,7 +204,7 @@
inline typename directed_graph<VP,EP,GP>::edges_size_type
num_edges(const directed_graph<VP,EP,GP>& g)
{
- return g.num_edges();
+ return num_edges(g.impl());
}
template <class VP, class EP, class GP>
@@ -314,7 +214,7 @@
>
edges(const directed_graph<VP,EP,GP>& g)
{
- return g.edges();
+ return edges(g.impl());
}
@@ -323,7 +223,7 @@
inline typename directed_graph<VP,EP,GP>::vertex_descriptor
add_vertex(directed_graph<VP,EP,GP> &g)
{
- return g.add_vertex();
+ return add_vertex(g.impl());
}
@@ -332,7 +232,7 @@
clear_vertex(typename directed_graph<VP,EP,GP>::vertex_descriptor u,
directed_graph<VP,EP,GP> &g)
{
- return g.clear_vertex(u);
+ return clear_vertex(u, g.impl());
}
@@ -341,7 +241,7 @@
remove_vertex(typename directed_graph<VP,EP,GP>::vertex_descriptor u,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_vertex(u);
+ return emove_vertex(u, g.impl());
}
@@ -352,7 +252,7 @@
typename directed_graph<VP,EP,GP>::vertex_descriptor v,
directed_graph<VP,EP,GP> &g)
{
- return g.add_edge(u, v);
+ return add_edge(u, v, g.impl());
}
@@ -362,7 +262,7 @@
typename directed_graph<VP,EP,GP>::vertex_descriptor v,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_edge(u, v);
+ return remove_edge(u, v, g.impl());
}
@@ -371,7 +271,7 @@
remove_edge(typename directed_graph<VP,EP,GP>::edge_descriptor e,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_edge(e);
+ return remove_edge(e, g.impl());
}
@@ -380,7 +280,7 @@
remove_edge(typename directed_graph<VP,EP,GP>::edge_iterator i,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_edge(i);
+ return remove_edge(i, g.impl());
}
template <class VP, class EP, class GP, class Predicate>
@@ -389,7 +289,7 @@
directed_graph<VP,EP,GP> &g)
{
- return g.remove_edge_if(pred);
+ return remove_edge_if(pred, g.impl());
}
@@ -399,7 +299,7 @@
Predicate pred,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_out_edge_if(v, pred);
+ return remove_out_edge_if(v, pred, g.impl());
}
template <class VP, class EP, class GP, class Predicate>
@@ -408,7 +308,7 @@
Predicate pred,
directed_graph<VP,EP,GP> &g)
{
- return g.remove_in_edge_if(v, pred);
+ return remove_in_edge_if(v, pred, g.impl());
}
// PropertyGraph concepts
@@ -416,14 +316,14 @@
inline typename property_map<typename directed_graph<VP,EP,GP>::type, Property>::type
get(Property p, directed_graph<VP,EP,GP>& g)
{
- return g.get(p);
+ return get(p, g.impl());
}
template <class VP, class EP, class GP, typename Property>
inline typename property_map<typename directed_graph<VP,EP,GP>::type, Property>::const_type
get(Property p, const directed_graph<VP,EP,GP>& g)
{
- return g.get(p);
+ return get(p, g.impl());
}
template <class VP, class EP, class GP, typename Property, typename Key>
@@ -432,14 +332,14 @@
>::value_type
get(Property p, const directed_graph<VP,EP,GP> &g, const Key& k)
{
- return g.get(p, k);
+ return g.get(p, g.impl(), k);
}
template <class VP, class EP, class GP, typename Property, typename Key, typename Value>
inline void
put(Property p, directed_graph<VP,EP,GP> &g, const Key& k, const Value& v)
{
- g.put(p, k, v);
+ g.put(p, g.impl(), k, v);
}
// MutablePropertyGraph concepts
@@ -447,7 +347,7 @@
inline typename directed_graph<VP,EP,GP>::vertex_descriptor
add_vertex(const Property& vp, directed_graph<VP,EP,GP>& g)
{
- return g.add_vertex(vp);
+ return add_vertex(vp, g.impl());
}
template <class VP, class EP, class GP, typename Property>
@@ -457,7 +357,7 @@
const Property& ep,
directed_graph<VP,EP,GP> &g)
{
- return g.add_edge(u, v, ep);
+ return add_edge(u, v, ep, g.impl());
}
}
Modified: sandbox/SOC/2007/graphs/boost/graph/undirected_graph.hpp
==============================================================================
--- sandbox/SOC/2007/graphs/boost/graph/undirected_graph.hpp (original)
+++ sandbox/SOC/2007/graphs/boost/graph/undirected_graph.hpp 2007-06-06 18:51:57 EDT (Wed, 06 Jun 2007)
@@ -102,112 +102,6 @@
// Graph concepts
static inline vertex_descriptor null_vertex()
{ return type::null_vertex(); }
-
- // IncidenceGraph concepts
- vertex_descriptor source(edge_descriptor e) const
- { return boost::source(e, m_graph); }
-
- vertex_descriptor target(edge_descriptor e) const
- { return boost::target(e, m_graph); }
-
- inline degree_size_type out_degree(vertex_descriptor v) const
- { return boost::out_degree(v, m_graph); }
-
- inline std::pair<out_edge_iterator, out_edge_iterator> out_edges(vertex_descriptor v) const
- { return boost::out_edges(v, m_graph); }
-
- // BidirectionalGraph concepts
- inline degree_size_type in_degree(vertex_descriptor v) const
- { return boost::in_degree(v, m_graph); }
-
- inline std::pair<in_edge_iterator, in_edge_iterator> in_edges(vertex_descriptor v) const
- { return boost::in_edges(v, m_graph); }
-
- inline degree_size_type degree(vertex_descriptor v)
- { return boost::degree(v, m_graph); }
-
- // AdjacencyGraph concepts
- inline std::pair<adjacency_iterator, adjacency_iterator> adjacent_vertices(vertex_descriptor v) const
- { return boost::adjacent_vertices(v, m_graph); }
-
- // VertexListGraph concepts
- inline vertices_size_type num_vertices() const
- { return boost::num_vertices(m_graph); }
-
- inline std::pair<vertex_iterator, vertex_iterator> vertices() const
- { return boost::vertices(m_graph); }
-
- // EdgeListGraph concepts
- inline edges_size_type num_edges() const
- { return boost::num_edges(m_graph); }
-
- inline std::pair<edge_iterator, edge_iterator> edges() const
- { return boost::edges(m_graph); }
-
- // MutableGraph concepts
- inline vertex_descriptor add_vertex()
- { return boost::add_vertex(m_graph); }
-
- inline void clear_vertex(vertex_descriptor v)
- { boost::clear_vertex(v, m_graph); }
-
- inline void remove_vertex(vertex_descriptor v)
- { boost::remove_vertex(v, m_graph); }
-
- inline std::pair<edge_descriptor, bool> add_edge(vertex_descriptor u, vertex_descriptor v)
- { return boost::add_edge(u, v, m_graph); }
-
- inline void remove_edge(vertex_descriptor u, vertex_descriptor v)
- { boost::remove_edge(u, v, m_graph); }
-
- inline void remove_edge(edge_descriptor e)
- { boost::remove_edge(e, m_graph); }
-
- inline void remove_edge(edge_iterator i)
- { boost::remove_edge(i, m_graph); }
-
- template <typename Predicate>
- inline void remove_edge_if(Predicate p)
- { boost::remove_edge_if(p, m_graph); }
-
- template <typename Predicate>
- inline void remove_out_edge_if(vertex_descriptor v, Predicate p)
- { boost::remove_out_edge_if(v, p, m_graph); }
-
- template <typename Predicate>
- inline void remove_in_edge_if(vertex_descriptor v, Predicate p)
- { boost::remove_in_edge_if(v, p, m_graph); }
-
- // PropertyGraph concepts
- template <typename Property>
- inline typename property_map<type, Property>::type
- get(Property p)
- { return boost::get(p, m_graph); }
-
- template <typename Property>
- inline typename property_map<type, Property>::const_type
- get(Property p) const
- { return boost::get(p, m_graph); }
-
- template <typename Property, typename Key>
- inline typename property_traits<typename property_map<type, Property>::const_type>::value_type
- get(Property p, const Key& k)
- { return boost::get(p, m_graph, k); }
-
- template <typename Property, typename Key, typename Value>
- inline void
- put(Property p, const Key& k, const Value& v)
- { boost::put(p, m_graph, k, v); }
-
- // MutablePropertyGraph concepts
- template <typename Property>
- inline vertex_descriptor add_vertex(const Property& vp)
- { return boost::add_vertex(vp, m_graph); }
-
- template <typename Property>
- inline std::pair<edge_descriptor, bool>
- add_edge(vertex_descriptor u, vertex_descriptor v, const Property& ep)
- { return boost::add_edge(u, v, ep, m_graph); }
};
// IncidenceGraph concepts
@@ -216,7 +110,7 @@
source(typename undirected_graph<VP,EP,GP>::edge_descriptor e,
const undirected_graph<VP,EP,GP> &g)
{
- return g.source(e);
+ return source(e, g.impl());
}
template <class VP, class EP, class GP>
@@ -224,7 +118,7 @@
target(typename undirected_graph<VP,EP,GP>::edge_descriptor e,
const undirected_graph<VP,EP,GP> &g)
{
- return g.target(e);
+ return target(e, g.impl());
}
template <class VP, class EP, class GP>
@@ -232,7 +126,7 @@
out_degree(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
const undirected_graph<VP,EP,GP> &g)
{
- return g.out_degree(v);
+ return out_degree(v, g.impl());
}
template <class VP, class EP, class GP>
@@ -243,7 +137,7 @@
out_edges(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
const undirected_graph<VP,EP,GP> &g)
{
- return g.out_edges(v);
+ return out_edges(v, g.impl());
}
// BidirectionalGraph concepts
@@ -252,15 +146,7 @@
in_degree(const undirected_graph<VP,EP,GP> &g,
typename undirected_graph<VP,EP,GP>::vertex_descriptor v)
{
- return g.in_degree(v);
- }
-
- template <class VP, class EP, class GP>
- inline typename undirected_graph<VP,EP,GP>::degree_size_type
- degree(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
- const undirected_graph<VP,EP,GP> &g)
- {
- return g.degree(v);
+ return in_degree(v, g.impl());
}
template <class VP, class EP, class GP>
@@ -271,7 +157,15 @@
in_edges(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
const undirected_graph<VP,EP,GP> &g)
{
- return g.in_edges(v);
+ return in_edges(v, g.impl());
+ }
+
+ template <class VP, class EP, class GP>
+ inline typename undirected_graph<VP,EP,GP>::degree_size_type
+ degree(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
+ const undirected_graph<VP,EP,GP> &g)
+ {
+ return degree(v, g.impl());
}
// AdjacencyGraph concepts
@@ -281,9 +175,9 @@
typename undirected_graph<VP,EP,GP>::adjacency_iterator
>
adjacent_vertices(typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
- const undirected_graph<VP,EP,GP>& g)
+ const undirected_graph<VP,EP,GP>& g)
{
- return g.adjacent_vertices(v);
+ return adjacent_vertices(v, g.impl());
}
// VertexListGraph concepts
@@ -291,7 +185,7 @@
inline typename undirected_graph<VP,EP,GP>::vertices_size_type
num_vertices(const undirected_graph<VP,EP,GP>& g)
{
- return g.num_vertices();
+ return num_vertices(g.impl());
}
template <class VP, class EP, class GP>
@@ -301,7 +195,7 @@
>
vertices(const undirected_graph<VP,EP,GP>& g)
{
- return g.vertices();
+ return vertices(g.impl());
}
// EdgeListGraph concepts
@@ -319,7 +213,7 @@
>
edges(const undirected_graph<VP,EP,GP>& g)
{
- return g.edges();
+ return edges(g.impl());
}
@@ -328,7 +222,7 @@
inline typename undirected_graph<VP,EP,GP>::vertex_descriptor
add_vertex(undirected_graph<VP,EP,GP> &g)
{
- return g.add_vertex();
+ return add_vertex(g.impl());
}
@@ -337,7 +231,7 @@
clear_vertex(typename undirected_graph<VP,EP,GP>::vertex_descriptor u,
undirected_graph<VP,EP,GP> &g)
{
- return g.clear_vertex(u);
+ return clear_vertex(u, g.impl());
}
@@ -346,7 +240,7 @@
remove_vertex(typename undirected_graph<VP,EP,GP>::vertex_descriptor u,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_vertex(u);
+ return remove_vertex(u, g.impl());
}
@@ -357,7 +251,7 @@
typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
undirected_graph<VP,EP,GP> &g)
{
- return g.add_edge(u, v);
+ return add_edge(u, v, g.impl());
}
@@ -367,7 +261,7 @@
typename undirected_graph<VP,EP,GP>::vertex_descriptor v,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_edge(u, v);
+ return remove_edge(u, v, g.impl());
}
@@ -376,7 +270,7 @@
remove_edge(typename undirected_graph<VP,EP,GP>::edge_descriptor e,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_edge(e);
+ return remove_edge(e, g.impl());
}
@@ -385,7 +279,7 @@
remove_edge(typename undirected_graph<VP,EP,GP>::edge_iterator i,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_edge(i);
+ return remove_edge(i, g.impl());
}
template <class VP, class EP, class GP, class Predicate>
@@ -394,7 +288,7 @@
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_edge_if(pred);
+ return remove_edge_if(pred, g.impl());
}
@@ -404,7 +298,7 @@
Predicate pred,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_out_edge_if(v, pred);
+ return remove_out_edge_if(v, pred, g.impl());
}
template <class VP, class EP, class GP, class Predicate>
@@ -413,7 +307,7 @@
Predicate pred,
undirected_graph<VP,EP,GP> &g)
{
- return g.remove_in_edge_if(v, pred);
+ return remove_in_edge_if(v, pred, g.impl());
}
// PropertyGraph concepts
@@ -421,14 +315,14 @@
inline typename property_map<typename undirected_graph<VP,EP,GP>::type, Property>::type
get(Property p, undirected_graph<VP,EP,GP>& g)
{
- return g.get(p);
+ return get(p, g.impl());
}
template <class VP, class EP, class GP, typename Property>
inline typename property_map<typename undirected_graph<VP,EP,GP>::type, Property>::const_type
get(Property p, const undirected_graph<VP,EP,GP>& g)
{
- return g.get(p);
+ return get(p, g.impl());
}
template <class VP, class EP, class GP, typename Property, typename Key>
@@ -437,14 +331,14 @@
>::value_type
get(Property p, const undirected_graph<VP,EP,GP> &g, const Key& k)
{
- return g.get(p, k);
+ return get(p, g.impl(), k);
}
template <class VP, class EP, class GP, typename Property, typename Key, typename Value>
inline void
put(Property p, undirected_graph<VP,EP,GP> &g, const Key& k, const Value& v)
{
- g.put(p, k, v);
+ put(p, g.impl(), k, v);
}
// MutablePropertyGraph concepts
@@ -452,7 +346,7 @@
inline typename undirected_graph<VP,EP,GP>::vertex_descriptor
add_vertex(const Property& vp, undirected_graph<VP,EP,GP>& g)
{
- return g.add_vertex(vp);
+ return add_vertex(vp, g.impl());
}
template <class VP, class EP, class GP, typename Property>
@@ -462,7 +356,7 @@
const Property& ep,
undirected_graph<VP,EP,GP> &g)
{
- return g.add_edge(u, v, ep);
+ return g.add_edge(u, v, g.impl(), ep);
}
}
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk