adjacency_list_traits<EdgeList, VertexList, Directed>
This class provides an alternate method for accessing some of the
associated types of the adjacency_list class. The main reason
for this class is that sometimes one would like to create graph
properties whose values are vertex or edge descriptors. If you try to
use graph_traits for this you will run into a problem with
mutually recursive types. To get around this problem, the
adjacency_list_traits class is provided, which gives the user
access to the vertex and edge descriptor types without requiring the
user to provide the property types for the graph.
template <class EdgeList, class VertexList, class Directed>
struct adjacency_list_traits {
typedef ... vertex_descriptor;
typedef ... edge_descriptor;
typedef ... directed_category;
typedef ... edge_parallel_category;
};
Where Defined
boost/graph/adjacency_list.hpp
Template Parameters
Parameter | Description | Default |
EdgeList |
The selector type for the edge container implementation.
|
vecS |
VertexList |
The selector type for the vertex container implementation.
|
vecS |
Directed |
The selector type whether the graph is directed or undirected.
|
directedS |
Model of
DefaultConstructible and
Assignable
Type Requirements
Under construction.
Members
Member | Description |
vertex_descriptor
|
The type for the objects used to identify vertices in the graph.
|
edge_descriptor
|
The type for the objects used to identify edges in the graph.
|
directed_category
|
This says whether the graph is undirected (undirected_tag)
or directed (directed_tag).
|
edge_parallel_category
|
This says whether the graph allows parallel edges to be inserted
(allow_parallel_edge_tag) or if it automatically removes
parallel edges (disallow_parallel_edge_tag).
|
See Also
adjacency_list
|