#include <graph.h>
Public Types | |
typedef Node< NodeDataType, EdgeDataType, multi_edges > | NodeType |
typedef Edge< NodeDataType, EdgeDataType, multi_edges > | EdgeType |
Public Member Functions | |
set< NodeType >::iterator | add_node (unsigned int index, const NodeDataType &data=NodeDataType()) |
const NodeType & | get_node (unsigned int index) const |
set< EdgeType >::iterator | add_edge (typename set< NodeType >::iterator node1, typename set< NodeType >::iterator node2, const EdgeDataType &data=EdgeDataType()) |
set< EdgeType >::iterator | add_edge (unsigned int index1, unsigned int index2, const EdgeDataType &data=EdgeDataType()) |
int | n () const |
The number of nodes. | |
int | m () const |
The number of edges. | |
void | clear () |
Public Attributes | |
set< NodeType > | nodes |
set< EdgeType > | edges |
Friends | |
ostream & | operator<< (ostream &out, const Graph< NodeDataType, EdgeDataType, directed, multi_edges > &g) |
Definition at line 127 of file graph.h.
set< Node< NodeDataType, EdgeDataType, multi_edges > >::iterator Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_node | ( | unsigned int | index, | |
const NodeDataType & | data = NodeDataType() | |||
) |
Definition at line 163 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes.
Referenced by Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge().
const Node< NodeDataType, EdgeDataType, multi_edges > & Graph< NodeDataType, EdgeDataType, directed, multi_edges >::get_node | ( | unsigned int | index | ) | const |
Definition at line 170 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes.
set< Edge< NodeDataType, EdgeDataType, multi_edges > >::iterator Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge | ( | typename set< NodeType >::iterator | node1, | |
typename set< NodeType >::iterator | node2, | |||
const EdgeDataType & | data = EdgeDataType() | |||
) |
Definition at line 178 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::edges.
Referenced by Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge().
set< Edge< NodeDataType, EdgeDataType, multi_edges > >::iterator Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge | ( | unsigned int | index1, | |
unsigned int | index2, | |||
const EdgeDataType & | data = EdgeDataType() | |||
) |
Definition at line 194 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge(), and Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_node().
int Graph< NodeDataType, EdgeDataType, directed, multi_edges >::n | ( | ) | const [inline] |
The number of nodes.
Definition at line 151 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes.
int Graph< NodeDataType, EdgeDataType, directed, multi_edges >::m | ( | ) | const [inline] |
The number of edges.
Definition at line 156 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::edges.
void Graph< NodeDataType, EdgeDataType, directed, multi_edges >::clear | ( | ) | [inline] |
Definition at line 158 of file graph.h.
References Graph< NodeDataType, EdgeDataType, directed, multi_edges >::edges, and Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes.
ostream& operator<< | ( | ostream & | out, | |
const Graph< NodeDataType, EdgeDataType, directed, multi_edges > & | g | |||
) | [friend] |
set<NodeType> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes |
Definition at line 139 of file graph.h.
Referenced by Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_node(), Graph< NodeDataType, EdgeDataType, directed, multi_edges >::clear(), Graph< NodeDataType, EdgeDataType, directed, multi_edges >::get_node(), and Graph< NodeDataType, EdgeDataType, directed, multi_edges >::n().
set<EdgeType> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::edges |
Definition at line 140 of file graph.h.
Referenced by Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_edge(), Graph< NodeDataType, EdgeDataType, directed, multi_edges >::clear(), and Graph< NodeDataType, EdgeDataType, directed, multi_edges >::m().