Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::labeled_graph< Graph *, Label, Selector > Class Template Reference

The partial specialization over graph pointers allows the construction of temporary labeled graph objects. More...

#include <labeled_graph.hpp>

Inheritance diagram for boost::labeled_graph< Graph *, Label, Selector >:
Collaboration diagram for boost::labeled_graph< Graph *, Label, Selector >:

Public Types

typedef labeled_graph_class_tag graph_tag
 
typedef Base::graph_type graph_type
 
typedef graph_traits
< graph_type >
::vertex_descriptor 
vertex_descriptor
 
typedef graph_traits
< graph_type >
::edge_descriptor 
edge_descriptor
 
typedef graph_traits
< graph_type >
::directed_category 
directed_category
 
typedef graph_traits
< graph_type >
::edge_parallel_category 
edge_parallel_category
 
typedef graph_traits
< graph_type >
::traversal_category 
traversal_category
 
typedef graph_traits
< graph_type >
::out_edge_iterator 
out_edge_iterator
 
typedef graph_traits
< graph_type >
::in_edge_iterator 
in_edge_iterator
 
typedef graph_traits
< graph_type >
::adjacency_iterator 
adjacency_iterator
 
typedef graph_traits
< graph_type >
::degree_size_type 
degree_size_type
 
typedef graph_traits
< graph_type >
::vertex_iterator 
vertex_iterator
 
typedef graph_traits
< graph_type >
::vertices_size_type 
vertices_size_type
 
typedef graph_traits
< graph_type >::edge_iterator 
edge_iterator
 
typedef graph_traits
< graph_type >
::edges_size_type 
edges_size_type
 
typedef
graph_type::vertex_property_type 
vertex_property_type
 
typedef
graph_type::edge_property_type 
edge_property_type
 
typedef
graph_type::graph_property_type 
graph_property_type
 
typedef graph_type::vertex_bundled vertex_bundled
 
typedef graph_type::edge_bundled edge_bundled
 
typedef Base::label_type label_type
 
typedef Base::map_type map_type
 

Public Member Functions

 labeled_graph (graph_type *g)
 
bool label_vertex (vertex_descriptor v, Label const &l)
 Create a new label for the given vertex, returning false, if the label cannot be created. More...
 
std::pair< vertex_descriptor,
bool > 
insert_vertex (Label const &l, vertex_property_type const &p)
 Try to insert a vertex with the given label. More...
 
void remove_vertex (Label const &l)
 Remove the vertex with the given label. More...
 
vertex_descriptor vertex (Label const &l) const
 Return a descriptor for the given label. More...
 
Graph Access
graph_typegraph ()
 
graph_type const & graph () const
 
Add Vertex
vertex_descriptor add_vertex (Label const &l)
 
vertex_descriptor add_vertex (Label const &l, vertex_property_type const &p)
 
std::pair< vertex_descriptor,
bool > 
insert_vertex (Label const &l)
 
Bundled Properties
vertex_bundledoperator[] (Label const &l)
 
vertex_bundled const & operator[] (Label const &l) const
 
edge_bundledoperator[] (edge_descriptor e)
 
edge_bundled const & operator[] (edge_descriptor e) const
 

Static Public Member Functions

static vertex_descriptor null_vertex ()
 

Detailed Description

template<typename Graph, typename Label, typename Selector>
class boost::labeled_graph< Graph *, Label, Selector >

The partial specialization over graph pointers allows the construction of temporary labeled graph objects.

In this case, the labels are destructed when the wrapper goes out of scope.

Member Typedef Documentation

template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::adjacency_iterator boost::labeled_graph< Graph *, Label, Selector >::adjacency_iterator
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::degree_size_type boost::labeled_graph< Graph *, Label, Selector >::degree_size_type
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::directed_category boost::labeled_graph< Graph *, Label, Selector >::directed_category
template<typename Graph , typename Label , typename Selector >
typedef graph_type::edge_bundled boost::labeled_graph< Graph *, Label, Selector >::edge_bundled
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::edge_descriptor boost::labeled_graph< Graph *, Label, Selector >::edge_descriptor
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::edge_iterator boost::labeled_graph< Graph *, Label, Selector >::edge_iterator
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::edge_parallel_category boost::labeled_graph< Graph *, Label, Selector >::edge_parallel_category
template<typename Graph , typename Label , typename Selector >
typedef graph_type::edge_property_type boost::labeled_graph< Graph *, Label, Selector >::edge_property_type
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::edges_size_type boost::labeled_graph< Graph *, Label, Selector >::edges_size_type
template<typename Graph , typename Label , typename Selector >
typedef graph_type::graph_property_type boost::labeled_graph< Graph *, Label, Selector >::graph_property_type
template<typename Graph , typename Label , typename Selector >
typedef labeled_graph_class_tag boost::labeled_graph< Graph *, Label, Selector >::graph_tag
template<typename Graph , typename Label , typename Selector >
typedef Base::graph_type boost::labeled_graph< Graph *, Label, Selector >::graph_type
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::in_edge_iterator boost::labeled_graph< Graph *, Label, Selector >::in_edge_iterator
template<typename Graph , typename Label , typename Selector >
typedef Base::label_type boost::labeled_graph< Graph *, Label, Selector >::label_type
template<typename Graph , typename Label , typename Selector >
typedef Base::map_type boost::labeled_graph< Graph *, Label, Selector >::map_type
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::out_edge_iterator boost::labeled_graph< Graph *, Label, Selector >::out_edge_iterator
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::traversal_category boost::labeled_graph< Graph *, Label, Selector >::traversal_category
template<typename Graph , typename Label , typename Selector >
typedef graph_type::vertex_bundled boost::labeled_graph< Graph *, Label, Selector >::vertex_bundled
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::vertex_descriptor boost::labeled_graph< Graph *, Label, Selector >::vertex_descriptor
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::vertex_iterator boost::labeled_graph< Graph *, Label, Selector >::vertex_iterator
template<typename Graph , typename Label , typename Selector >
typedef graph_type::vertex_property_type boost::labeled_graph< Graph *, Label, Selector >::vertex_property_type
template<typename Graph , typename Label , typename Selector >
typedef graph_traits<graph_type>::vertices_size_type boost::labeled_graph< Graph *, Label, Selector >::vertices_size_type

Constructor & Destructor Documentation

template<typename Graph , typename Label , typename Selector >
boost::labeled_graph< Graph *, Label, Selector >::labeled_graph ( graph_type g)
inline

Member Function Documentation

template<typename Graph , typename Label , typename Selector >
vertex_descriptor boost::labeled_graph< Graph *, Label, Selector >::add_vertex ( Label const &  l)
inline
template<typename Graph , typename Label , typename Selector >
vertex_descriptor boost::labeled_graph< Graph *, Label, Selector >::add_vertex ( Label const &  l,
vertex_property_type const &  p 
)
inline
template<typename Graph , typename Label , typename Selector >
graph_type& boost::labeled_graph< Graph *, Label, Selector >::graph ( )
inline
template<typename Graph , typename Label , typename Selector >
graph_type const& boost::labeled_graph< Graph *, Label, Selector >::graph ( ) const
inline
template<typename Graph , typename Label , typename Selector >
std::pair<vertex_descriptor, bool> boost::labeled_graph< Graph *, Label, Selector >::insert_vertex ( Label const &  l)
inline
template<typename Graph , typename Label , typename Selector >
std::pair<vertex_descriptor, bool> boost::labeled_graph< Graph *, Label, Selector >::insert_vertex ( Label const &  l,
vertex_property_type const &  p 
)
inline

Try to insert a vertex with the given label.

References boost::graph_detail::insert_labeled_vertex().

template<typename Graph , typename Label , typename Selector >
bool boost::labeled_graph< Graph *, Label, Selector >::label_vertex ( vertex_descriptor  v,
Label const &  l 
)
inline

Create a new label for the given vertex, returning false, if the label cannot be created.

References boost::graph_detail::put_vertex_label().

template<typename Graph , typename Label , typename Selector >
static vertex_descriptor boost::labeled_graph< Graph *, Label, Selector >::null_vertex ( )
inlinestatic
template<typename Graph , typename Label , typename Selector >
vertex_bundled& boost::labeled_graph< Graph *, Label, Selector >::operator[] ( Label const &  l)
inline

References boost::vertex().

template<typename Graph , typename Label , typename Selector >
vertex_bundled const& boost::labeled_graph< Graph *, Label, Selector >::operator[] ( Label const &  l) const
inline

References boost::vertex().

template<typename Graph , typename Label , typename Selector >
edge_bundled& boost::labeled_graph< Graph *, Label, Selector >::operator[] ( edge_descriptor  e)
inline
template<typename Graph , typename Label , typename Selector >
edge_bundled const& boost::labeled_graph< Graph *, Label, Selector >::operator[] ( edge_descriptor  e) const
inline
template<typename Graph , typename Label , typename Selector >
void boost::labeled_graph< Graph *, Label, Selector >::remove_vertex ( Label const &  l)
inline

Remove the vertex with the given label.

References boost::remove_vertex(), and boost::vertex().

template<typename Graph , typename Label , typename Selector >
vertex_descriptor boost::labeled_graph< Graph *, Label, Selector >::vertex ( Label const &  l) const
inline

Return a descriptor for the given label.

References boost::graph_detail::find_labeled_vertex().


The documentation for this class was generated from the following file: