A graph mixin that can provide a mapping from names to vertices, and use that mapping to simplify creation and manipulation of graphs. More...
#include <named_graph.hpp>


Public Types | |
| typedef internal_vertex_name < VertexProperty >::type | extract_name_type |
| The type of the function object that extracts names from vertex properties. More... | |
| typedef lookup_one_property < VertexProperty, vertex_bundle_t >::type | bundled_vertex_property_type |
| The type of the "bundled" property, from which the name can be extracted. More... | |
| typedef internal_vertex_constructor < VertexProperty >::type | vertex_constructor_type |
| The type of the function object that generates vertex properties from names, for the implicit addition of vertices. More... | |
| typedef remove_cv< typename remove_reference< typename extract_name_type::result_type > ::type >::type | vertex_name_type |
| The type used to name vertices in the graph. More... | |
| typedef Vertex | vertex_descriptor |
| The type of vertex descriptors in the graph. More... | |
| typedef multi_index::multi_index_container < Vertex, multi_index::indexed_by < multi_index::hashed_unique < multi_index::tag < vertex_name_t > , extract_name_from_vertex > > > | named_vertices_type |
| The type that maps names to vertices. More... | |
| typedef named_vertices_type::template index< vertex_name_t >::type | vertices_by_name_type |
| The set of vertices, indexed by name. More... | |
Public Member Functions | |
| void | added_vertex (Vertex vertex) |
| Notify the named_graph that we have added the given vertex. More... | |
| template<typename VertexIterStability > | |
| void | removing_vertex (Vertex vertex, VertexIterStability) |
| Notify the named_graph that we are removing the given vertex. More... | |
| void | clearing_graph () |
| Notify the named_graph that we are clearing the graph. More... | |
| Graph & | derived () |
| Retrieve the derived instance. More... | |
| const Graph & | derived () const |
| extract_name_type::result_type | extract_name (const bundled_vertex_property_type &property) |
| Extract the name from a vertex property instance. More... | |
| optional< vertex_descriptor > | vertex_by_property (const bundled_vertex_property_type &property) |
| Search for a vertex that has the given property (based on its name) More... | |
Public Attributes | |
| named_vertices_type | named_vertices |
| Mapping from names to vertices. More... | |
| vertex_constructor_type | vertex_constructor |
| Constructs a vertex from the name of that vertex. More... | |
A graph mixin that can provide a mapping from names to vertices, and use that mapping to simplify creation and manipulation of graphs.
|
inherited |
The type of the "bundled" property, from which the name can be extracted.
|
inherited |
The type of the function object that extracts names from vertex properties.
|
inherited |
The type that maps names to vertices.
|
inherited |
The type of the function object that generates vertex properties from names, for the implicit addition of vertices.
|
inherited |
The type of vertex descriptors in the graph.
|
inherited |
The type used to name vertices in the graph.
|
inherited |
The set of vertices, indexed by name.
|
inlineinherited |
Notify the named_graph that we have added the given vertex.
The name of the vertex will be added to the mapping.
|
inlineinherited |
Notify the named_graph that we are clearing the graph.
This will clear out all of the name->vertex mappings
|
inlineinherited |
Retrieve the derived instance.
|
inlineinherited |
|
inherited |
Extract the name from a vertex property instance.
|
inlineinherited |
Notify the named_graph that we are removing the given vertex.
The name of the vertex will be removed from the mapping.
References BOOST_STATIC_ASSERT_MSG, boost::program_options::value(), and boost::vertex_name.
|
inherited |
Search for a vertex that has the given property (based on its name)
References boost::graph::find_vertex().
|
inherited |
Mapping from names to vertices.
|
inherited |
Constructs a vertex from the name of that vertex.