|
Utopia 2
Framework for studying models of complex & adaptive systems.
|
Classes | |
| class | CopyMeGraph |
| The CopyMeGraph Model; a good start for a graph-based model. More... | |
| struct | EdgeState |
| The edge state. More... | |
| struct | VertexState |
| The vertex state. More... | |
Typedefs | |
| using | VertexTraits = Utopia::GraphEntityTraits< VertexState > |
| The traits of a vertex are just the traits of a graph entity. | |
| using | Vertex = GraphEntity< VertexTraits > |
| A vertex is a graph entity with vertex traits. | |
| using | VertexContainer = boost::vecS |
| The vertex container type. | |
| using | EdgeTraits = Utopia::GraphEntityTraits< EdgeState > |
| The traits of an edge are just the traits of a graph entity. | |
| using | Edge = GraphEntity< EdgeTraits > |
| An edge is a graph entity with edge traits. | |
| using | EdgeContainer = boost::listS |
| The edge container type. | |
| using | GraphType = boost::adjacency_list< EdgeContainer, VertexContainer, boost::bidirectionalS, Vertex, Edge > |
| The type of the graph. | |
| using | ModelTypes = Utopia::ModelTypes<> |
| Type helper to define types used by the model. | |
An edge is a graph entity with edge traits.
| using Utopia::Models::CopyMeGraph::EdgeContainer = typedef boost::listS |
The edge container type.
Here, you can select into which container your edges should be stored in. Common choices are boost::vecS or boost::listS.
The traits of an edge are just the traits of a graph entity.
| using Utopia::Models::CopyMeGraph::GraphType = typedef boost::adjacency_list<EdgeContainer, VertexContainer, boost::bidirectionalS, Vertex, Edge> |
The type of the graph.
By providing the structs that contain all properties of a vertex or edge respectively, you take advantage of boost::graph's bundled properties (google it, if not known). This fascilitates setting and accessing vertex and edge properties. :)
Type helper to define types used by the model.
A vertex is a graph entity with vertex traits.
| using Utopia::Models::CopyMeGraph::VertexContainer = typedef boost::vecS |
The vertex container type.
Here, you select in which container your vertices should be stored in. Common choices are boost::vecS or boost::listS.
The traits of a vertex are just the traits of a graph entity.