| boost::graph_traits<G>::traversal_category This tag type must be convertible to vertex_list_graph_tag. |
| boost::graph_traits<G>::vertex_iterator A vertex iterator (obtained via vertices(g)) provides access to all of the vertices in a graph. A vertex iterator type must meet the requirements of MultiPassInputIterator. The value type of the vertex iterator must be the vertex descriptor of the graph. |
| boost::graph_traits<G>::vertices_size_type The unsigned integer type used to represent the number of vertices in the graph. |
| Name | Expression | Return Type | Description |
|---|---|---|---|
| Vertex Set of the Graph | vertices(g) | std::pair<vertex_iterator, vertex_iterator> | Returns an iterator-range providing access to all the vertices in the graphg. |
| Number of Vertices in the Graph | num_vertices(g) | vertices_size_type | Returns the number of vertices in the graph g. |
The vertices() function must return in constant time.
template <class G>
struct VertexListGraphConcept
{
typedef typename boost::graph_traits<G>::vertex_iterator
vertex_iterator;
void constraints() {
BOOST_CONCEPT_ASSERT(( IncidenceGraphConcept<G> ));
BOOST_CONCEPT_ASSERT(( AdjacencyGraphConcept<G> ));
BOOST_CONCEPT_ASSERT(( MultiPassInputIteratorConcept<vertex_iterator> ));
p = vertices(g);
V = num_vertices(g);
v = *p.first;
const_constraints(g);
}
void const_constraints(const G& g) {
p = vertices(g);
V = num_vertices(g);
v = *p.first;
}
std::pair<vertex_iterator, vertex_iterator> p;
typename boost::graph_traits<G>::vertex_descriptor v;
typename boost::graph_traits<G>::vertices_size_type V;
G g;
};
| Copyright © 2000-2001 | Jeremy Siek, Indiana University (jsiek@osl.iu.edu) |