#include <boost/config.hpp>
#include <boost/static_assert.hpp>
#include <boost/functional/hash.hpp>
#include <boost/graph/graph_traits.hpp>
#include <boost/graph/properties.hpp>
#include <boost/multi_index/hashed_index.hpp>
#include <boost/multi_index/member.hpp>
#include <boost/multi_index_container.hpp>
#include <boost/optional.hpp>
#include <boost/pending/property.hpp>
#include <boost/pending/container_traits.hpp>
#include <boost/throw_exception.hpp>
#include <boost/tuple/tuple.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/type_traits/is_base_of.hpp>
#include <boost/type_traits/remove_cv.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include <boost/utility/enable_if.hpp>
#include <functional>
#include <stdexcept>
#include <utility>
Classes | |
struct | boost::graph::internal_vertex_name< VertexProperty > |
Trait used to extract the internal vertex name from a vertex property. More... | |
struct | boost::graph::internal_vertex_name< property< Tag, T, Base > > |
Extract the internal vertex name from a property structure by looking at its base. More... | |
struct | boost::graph::vertex_from_name< VertexProperty > |
Construct an instance of VertexProperty directly from its name. More... | |
struct | boost::graph::cannot_add_vertex< VertexProperty > |
Throw an exception whenever one tries to construct a VertexProperty instance from its name. More... | |
struct | boost::graph::internal_vertex_constructor< VertexProperty > |
Trait used to construct an instance of a VertexProperty , which is a class type that stores the properties associated with a vertex in a graph, from just the name of that vertex property. More... | |
struct | boost::graph::internal_vertex_constructor< property< Tag, T, Base > > |
Extract the internal vertex constructor from a property structure by looking at its base. More... | |
class | boost::graph::named_graph< Graph, Vertex, VertexProperty > |
named_graph is a mixin that provides names for the vertices of a graph, including a mapping from names to vertices. More... | |
struct | boost::graph::maybe_named_graph< Graph, Vertex, VertexProperty, ExtractName > |
A graph mixin that can provide a mapping from names to vertices, and use that mapping to simplify creation and manipulation of graphs. More... | |
struct | boost::graph::maybe_named_graph< Graph, Vertex, VertexProperty, void > |
A graph mixin that can provide a mapping from names to vertices, and use that mapping to simplify creation and manipulation of graphs. More... | |
Namespaces | |
boost | |
Duration formatting facet for input. | |
boost::graph | |
Macros | |
#define | BGL_NAMED_GRAPH_PARAMS typename Graph, typename Vertex, typename VertexProperty |
Helper macro containing the template parameters of named_graph. More... | |
#define | BGL_NAMED_GRAPH named_graph<Graph, Vertex, VertexProperty> |
Helper macro containing the named_graph<...> instantiation. More... | |
Functions | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
optional< Vertex > | boost::graph::find_vertex (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &name, const named_graph< Graph, Vertex, VertexProperty > &g) |
Retrieve the vertex associated with the given name. More... | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
disable_if< is_same< typename named_graph< Graph, Vertex, VertexProperty > ::vertex_name_type, VertexProperty >, Vertex > ::type | boost::graph::add_vertex (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &name, named_graph< Graph, Vertex, VertexProperty > &g) |
Retrieve the vertex associated with the given name, or add a new vertex with that name if no such vertex is available. More... | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &u_name, typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &v_name, named_graph< Graph, Vertex, VertexProperty > &g) |
Add an edge using vertex names to refer to the vertices. More... | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_descriptor const &u, typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &v_name, named_graph< Graph, Vertex, VertexProperty > &g) |
Add an edge using vertex descriptors or names to refer to the vertices. More... | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &u_name, typename named_graph< Graph, Vertex, VertexProperty >::vertex_descriptor const &v, named_graph< Graph, Vertex, VertexProperty > &g) |
Add an edge using vertex descriptors or names to refer to the vertices. More... | |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_descriptor const &u, typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &v_name, typename edge_property_type< Graph >::type const &p, named_graph< Graph, Vertex, VertexProperty > &g) |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &u_name, typename named_graph< Graph, Vertex, VertexProperty >::vertex_descriptor const &v, typename edge_property_type< Graph >::type const &p, named_graph< Graph, Vertex, VertexProperty > &g) |
template<typename Graph , typename Vertex , typename VertexProperty > | |
std::pair< typename graph_traits< Graph > ::edge_descriptor, bool > | boost::graph::add_edge (typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &u_name, typename named_graph< Graph, Vertex, VertexProperty >::vertex_name_type const &v_name, typename edge_property_type< Graph >::type const &p, named_graph< Graph, Vertex, VertexProperty > &g) |
#define BGL_NAMED_GRAPH named_graph<Graph, Vertex, VertexProperty> |
Helper macro containing the named_graph<...> instantiation.
#define BGL_NAMED_GRAPH_PARAMS typename Graph, typename Vertex, typename VertexProperty |
Helper macro containing the template parameters of named_graph.