Graph< NodeDataType, EdgeDataType, directed, multi_edges > Class Template Reference

#include <graph.h>

List of all members.

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 NodeTypeget_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< NodeTypenodes
set< EdgeTypeedges

Friends

ostream & operator<< (ostream &out, const Graph< NodeDataType, EdgeDataType, directed, multi_edges > &g)

Detailed Description

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
class Graph< NodeDataType, EdgeDataType, directed, multi_edges >

Definition at line 127 of file graph.h.


Member Typedef Documentation

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
typedef Node<NodeDataType, EdgeDataType, multi_edges> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::NodeType

Definition at line 136 of file graph.h.

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
typedef Edge<NodeDataType, EdgeDataType, multi_edges> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::EdgeType

Definition at line 137 of file graph.h.


Member Function Documentation

template<typename NodeDataType, typename EdgeDataType , bool directed, bool multi_edges>
set< Node< NodeDataType, EdgeDataType, multi_edges > >::iterator Graph< NodeDataType, EdgeDataType, directed, multi_edges >::add_node ( unsigned int  index,
const NodeDataType &  data = NodeDataType() 
) [inline]

Definition at line 163 of file graph.h.

template<typename NodeDataType , typename EdgeDataType , bool directed, bool multi_edges>
const Node< NodeDataType, EdgeDataType, multi_edges > & Graph< NodeDataType, EdgeDataType, directed, multi_edges >::get_node ( unsigned int  index  )  const [inline]

Definition at line 170 of file graph.h.

template<typename NodeDataType , typename EdgeDataType, bool directed, bool multi_edges>
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() 
) [inline]

Definition at line 178 of file graph.h.

template<typename NodeDataType , typename EdgeDataType, bool directed, bool multi_edges>
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() 
) [inline]

Definition at line 194 of file graph.h.

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
int Graph< NodeDataType, EdgeDataType, directed, multi_edges >::n (  )  const [inline]

The number of nodes.

Returns:
Then number of nodes: nodes.size().

Definition at line 151 of file graph.h.

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
int Graph< NodeDataType, EdgeDataType, directed, multi_edges >::m (  )  const [inline]

The number of edges.

Returns:
The number of edges: edges.size().

Definition at line 156 of file graph.h.

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
void Graph< NodeDataType, EdgeDataType, directed, multi_edges >::clear (  )  [inline]

Definition at line 158 of file graph.h.


Friends And Related Function Documentation

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
ostream& operator<< ( ostream &  out,
const Graph< NodeDataType, EdgeDataType, directed, multi_edges > &  g 
) [friend]

Definition at line 128 of file graph.h.


Member Data Documentation

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
set<NodeType> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::nodes

Definition at line 139 of file graph.h.

template<typename NodeDataType = int, typename EdgeDataType = int, bool directed = false, bool multi_edges = false>
set<EdgeType> Graph< NodeDataType, EdgeDataType, directed, multi_edges >::edges

Definition at line 140 of file graph.h.


The documentation for this class was generated from the following file:

Generated on 10 Mar 2013 for LaGO by  doxygen 1.6.1