The main class for graph types. More...
#include <GraphConcept.h>
Public Types | |
typedef VertexType | vertex_type |
The type of the graph vertex. | |
typedef EdgeType | edge_type |
The type of the graph edge. | |
Public Member Functions | |
GraphConcept () | |
Create empty graph. | |
const map< int, vertex_type > & | getVertices () const |
Get the vertex set. | |
int | newVertex () |
Create new vertex (default). Function returns the number of the new vertex. | |
int | newVertex (const vertex_type &V) |
Add new vertex into a graph. Function returns the number of the new vertex. | |
void | eraseVertex (int v) |
Erase a vertex from the graph. | |
void | replaceVertex (int v, const vertex_type &V) |
Function locally changes graph by replacing the vertex with number v by the vertex V. | |
void | newEdge (int v1, const EdgeType &E) |
Create new edge with the origin v1 and target [and, maybe other parameters] provided in E. | |
void | clear () |
Make the graph trivial. | |
void | pinch (int v1, int v2) |
Pinch two vertices v1 and v2. | |
Private Types | |
typedef GraphConceptRep < VertexType, EdgeType > | presentation_type |
The main class for graph types.
Definition at line 274 of file GraphConcept.h.
typedef EdgeType Graphs::GraphConcept< VertexType, EdgeType >::edge_type |
The type of the graph edge.
Definition at line 282 of file GraphConcept.h.
typedef GraphConceptRep< VertexType , EdgeType > Graphs::GraphConcept< VertexType, EdgeType >::presentation_type [private] |
Definition at line 286 of file GraphConcept.h.
typedef VertexType Graphs::GraphConcept< VertexType, EdgeType >::vertex_type |
The type of the graph vertex.
Definition at line 280 of file GraphConcept.h.
Graphs::GraphConcept< VertexType, EdgeType >::GraphConcept | ( | ) | [inline] |
Create empty graph.
Definition at line 296 of file GraphConcept.h.
void Graphs::GraphConcept< VertexType, EdgeType >::clear | ( | ) | [inline] |
Make the graph trivial.
Definition at line 331 of file GraphConcept.h.
Referenced by Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::clear().
void Graphs::GraphConcept< VertexType, EdgeType >::eraseVertex | ( | int | v | ) | [inline] |
Erase a vertex from the graph.
Definition at line 319 of file GraphConcept.h.
Referenced by Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::eraseVertex().
const map< int, vertex_type >& Graphs::GraphConcept< VertexType, EdgeType >::getVertices | ( | ) | const [inline] |
Get the vertex set.
Definition at line 307 of file GraphConcept.h.
void Graphs::GraphConcept< VertexType, EdgeType >::newEdge | ( | int | v1, | |
const EdgeType & | E | |||
) | [inline] |
Create new edge with the origin v1 and target [and, maybe other parameters] provided in E.
Definition at line 327 of file GraphConcept.h.
Referenced by addLoop(), addRay(), and Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::newEdge().
int Graphs::GraphConcept< VertexType, EdgeType >::newVertex | ( | const vertex_type & | V | ) | [inline] |
Add new vertex into a graph. Function returns the number of the new vertex.
Definition at line 315 of file GraphConcept.h.
Referenced by Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::newVertex().
int Graphs::GraphConcept< VertexType, EdgeType >::newVertex | ( | ) | [inline] |
Create new vertex (default). Function returns the number of the new vertex.
Definition at line 311 of file GraphConcept.h.
Referenced by addLoop(), addRay(), and Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::newVertex().
void Graphs::GraphConcept< VertexType, EdgeType >::pinch | ( | int | v1, | |
int | v2 | |||
) | [inline] |
Pinch two vertices v1 and v2.
Definition at line 335 of file GraphConcept.h.
Referenced by Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::pinch().
void Graphs::GraphConcept< VertexType, EdgeType >::replaceVertex | ( | int | v, | |
const vertex_type & | V | |||
) | [inline] |
Function locally changes graph by replacing the vertex with number v by the vertex V.
Definition at line 323 of file GraphConcept.h.
Referenced by Graphs::GraphConcept< GraphVertex< IntLabeledEdge >, IntLabeledEdge >::replaceVertex().