Public Member Functions |
| Graph (const Visitor &=Visitor()) |
| Construct an undirected graph.
|
| Graph (const std::size_t, const Visitor &=Visitor()) |
| Construct an undirected graph with an initial number of vertices.
|
void | assign (const Visitor &=Visitor()) |
| Clear an undirected graph.
|
void | assign (const std::size_t, const Visitor &=Visitor()) |
| Clear an undirected graph with an initial number of vertices.
|
void | reserveVertices (const std::size_t) |
| Reserve memory for at least the given total number of vertices.
|
void | reserveEdges (const std::size_t) |
| Reserve memory for at least the given total number of edges.
|
VertexIterator | verticesFromVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of vertices reachable from a given vertex via a single edge.
|
VertexIterator | verticesFromVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of vertices reachable from a given vertex via a single edge.
|
VertexIterator | verticesToVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of vertices from which a given vertex is reachable via a single edge.
|
VertexIterator | verticesToVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of vertices from which a given vertex is reachable via a single edge.
|
EdgeIterator | edgesFromVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of edges that originate from a given vertex.
|
EdgeIterator | edgesFromVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of edges that originate from a given vertex.
|
EdgeIterator | edgesToVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of edges that are incident to a given vertex.
|
EdgeIterator | edgesToVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of edges that are incident to a given vertex.
|
AdjacencyIterator | adjacenciesFromVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of adjacencies that originate from a given vertex.
|
AdjacencyIterator | adjacenciesFromVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of adjacencies that originate from a given vertex.
|
AdjacencyIterator | adjacenciesToVertexBegin (const std::size_t) const |
| Get an iterator to the beginning of the sequence of adjacencies incident to a given vertex.
|
AdjacencyIterator | adjacenciesToVertexEnd (const std::size_t) const |
| Get an iterator to the end of the sequence of adjacencies incident to a given vertex.
|
std::size_t | numberOfVertices () const |
| Get the number of vertices.
|
std::size_t | numberOfEdges () const |
| Get the number of edges.
|
std::size_t | numberOfEdgesFromVertex (const std::size_t) const |
| Get the number of edges that originate from a given vertex.
|
std::size_t | numberOfEdgesToVertex (const std::size_t) const |
| Get the number of edges that are incident to a given vertex.
|
std::size_t | vertexOfEdge (const std::size_t, const std::size_t) const |
| Get the integer index of a vertex of an edge.
|
std::size_t | edgeFromVertex (const std::size_t, const std::size_t) const |
| Get the integer index of an edge that originates from a given vertex.
|
std::size_t | edgeToVertex (const std::size_t, const std::size_t) const |
| Get the integer index of an edge that is incident to a given vertex.
|
std::size_t | vertexFromVertex (const std::size_t, const std::size_t) const |
| Get the integer index of a vertex reachable from a given vertex via a single edge.
|
std::size_t | vertexToVertex (const std::size_t, const std::size_t) const |
| Get the integer index of a vertex from which a given vertex is reachable via a single edge.
|
const AdjacencyType & | adjacencyFromVertex (const std::size_t, const std::size_t) const |
| Get the j-th adjacency from a vertex.
|
const AdjacencyType & | adjacencyToVertex (const std::size_t, const std::size_t) const |
| Get the j-th adjacency to a vertex.
|
std::pair< bool, std::size_t > | findEdge (const std::size_t, const std::size_t) const |
| Search for an edge (in logarithmic time).
|
bool | multipleEdgesEnabled () const |
| Indicate if multiple edges are enabled.
|
std::size_t | insertVertex () |
| Insert an additional vertex.
|
std::size_t | insertVertices (const std::size_t) |
| Insert additional vertices.
|
std::size_t | insertEdge (const std::size_t, const std::size_t) |
| Insert an additional edge.
|
void | eraseVertex (const std::size_t) |
| Erase a vertex and all edges connecting this vertex.
|
void | eraseEdge (const std::size_t) |
| Erase an edge.
|
bool & | multipleEdgesEnabled () |
| Indicate if multiple edges are enabled.
|
template<typename VISITOR = IdleGraphVisitor<std::size_t>>
class andres::graph::Graph< VISITOR >
Undirected graph, implemented as an adjacency list.
Definition at line 27 of file graph.hxx.