Polaris: Graph< Node, Edge > Class Template Reference

Graph< Node, Edge > Class Template Reference

A graph class. More...

#include <EvolutionGraph.h>

List of all members.

Public Types

typedef Node NodeType
typedef Edge EdgeType
typedef map< unsigned int,
EdgeType
EdgeList

Public Member Functions

 Graph ()
 ~Graph ()
unsigned int add_node (Node)
void add_edge (unsigned int, unsigned int, const Edge &)
void add_edge (Node, Node, const Edge &)
const EdgeListget_edges (unsigned int) const
const EdgeListget_edges (Node) const
const EdgeListget_reversed_edges (unsigned int) const
const EdgeListget_reversed_edges (Node) const
void remove_edges (unsigned int)
const Edge * get_edge (Node source, Node dest) const
const Edge * get_reversed_edge (Node source, Node dest) const
void clear ()
 INLINE Implementations for EvolutionGraph //.

Protected Member Functions

bool contains (Node n) const
unsigned int index (Node n) const
const vector< Node > & nodes () const


Detailed Description

template<class Node, class Edge>
class Graph< Node, Edge >

A graph class.

Definition at line 35 of file EvolutionGraph.h.


Member Typedef Documentation

template<class Node, class Edge>
typedef Node Graph< Node, Edge >::NodeType
 

Definition at line 37 of file EvolutionGraph.h.

template<class Node, class Edge>
typedef Edge Graph< Node, Edge >::EdgeType
 

Definition at line 38 of file EvolutionGraph.h.

template<class Node, class Edge>
typedef map<unsigned int, EdgeType> Graph< Node, Edge >::EdgeList
 

Definition at line 39 of file EvolutionGraph.h.


Constructor & Destructor Documentation

template<class Node, class Edge>
Graph< Node, Edge >::Graph  ) 
 

Definition at line 408 of file EvolutionGraph.h.

template<class Node, class Edge>
Graph< Node, Edge >::~Graph  ) 
 

Definition at line 412 of file EvolutionGraph.h.


Member Function Documentation

template<class Node, class Edge>
bool Graph< Node, Edge >::contains Node  n  )  const [protected]
 

Definition at line 453 of file EvolutionGraph.h.

template<class Node, class Edge>
unsigned int Graph< Node, Edge >::index Node  n  )  const [protected]
 

< Node not found.

Definition at line 464 of file EvolutionGraph.h.

Referenced by Graph< Node, Edge >::add_edge(), Graph< Node, Edge >::get_edge(), Graph< Node, Edge >::get_edges(), Graph< Node, Edge >::get_reversed_edge(), and Graph< Node, Edge >::get_reversed_edges().

template<class Node, class Edge>
const vector< Node > & Graph< Node, Edge >::nodes  )  const [protected]
 

Definition at line 416 of file EvolutionGraph.h.

Referenced by EvolutionGraph::_add_evolutions(), and Graph< Node, Edge >::add_edge().

template<class Node, class Edge>
unsigned int Graph< Node, Edge >::add_node Node   ) 
 

Definition at line 421 of file EvolutionGraph.h.

template<class Node, class Edge>
void Graph< Node, Edge >::add_edge unsigned  int,
unsigned  int,
const Edge & 
 

Definition at line 431 of file EvolutionGraph.h.

Referenced by Graph< Node, Edge >::add_edge().

template<class Node, class Edge>
void Graph< Node, Edge >::add_edge Node  ,
Node  ,
const Edge & 
 

Definition at line 476 of file EvolutionGraph.h.

References Graph< Node, Edge >::add_edge(), Graph< Node, Edge >::index(), and Graph< Node, Edge >::nodes().

template<class Node, class Edge>
const Graph< Node, Edge >::EdgeList & Graph< Node, Edge >::get_edges unsigned  int  )  const
 

Definition at line 489 of file EvolutionGraph.h.

template<class Node, class Edge>
const Graph< Node, Edge >::EdgeList & Graph< Node, Edge >::get_edges Node   )  const
 

Definition at line 498 of file EvolutionGraph.h.

References Graph< Node, Edge >::index().

template<class Node, class Edge>
const Graph< Node, Edge >::EdgeList & Graph< Node, Edge >::get_reversed_edges unsigned  int  )  const
 

Definition at line 531 of file EvolutionGraph.h.

template<class Node, class Edge>
const Graph< Node, Edge >::EdgeList & Graph< Node, Edge >::get_reversed_edges Node   )  const
 

Definition at line 540 of file EvolutionGraph.h.

References Graph< Node, Edge >::index().

template<class Node, class Edge>
void Graph< Node, Edge >::remove_edges unsigned  int  ) 
 

Definition at line 438 of file EvolutionGraph.h.

template<class Node, class Edge>
const Edge * Graph< Node, Edge >::get_edge Node  source,
Node  dest
const
 

Definition at line 504 of file EvolutionGraph.h.

References Graph< Node, Edge >::index().

template<class Node, class Edge>
const Edge * Graph< Node, Edge >::get_reversed_edge Node  source,
Node  dest
const
 

Definition at line 517 of file EvolutionGraph.h.

References Graph< Node, Edge >::index().

template<class Node, class Edge>
void Graph< Node, Edge >::clear  ) 
 

INLINE Implementations for EvolutionGraph //.

Definition at line 546 of file EvolutionGraph.h.

Referenced by _remove_egs().


The documentation for this class was generated from the following file:
 © 1995-2005 University of Illinois, Urbana-Champaign. All rights reserved.  Fri Mar 25 23:07:26 2005