Graph Classes

Graphs are used in various settings. In each of the setting, there is a semantically different graph type.

A graph class is instantiated with a vertex type and an attribute type. This creates a graph of the form:

1 G = (V, E)
2 
3 V = { v | v is an instance vertex_t},
4 E = {e | e is a triple (u, v, a)}
5 where u = from, v = to and a = attribute

The default triple type used by the graph library is edge_t<vertex_t, attr_t>. The user can use an edge type of his own as long as it follows the edge_t's concept requirements.Once the edge class is specified, the graph models of the graph internally use this edge type to store the edges.