Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

StaticSymGraph Class Reference
[Concepts]

#include <lemon/concept/sym_graph.h>

Inheritance diagram for StaticSymGraph:

Inheritance graph
[legend]
List of all members.

Detailed Description

This class provides all the common features of a symmetric graph structure, however completely without implementations and real data structures behind the interface. All graph algorithms should compile with this class, but it will not run properly, of course.

It can be used for checking the interface compatibility, or it can serve as a skeleton of a new symmetric graph structure.

Also, you will find here the full documentation of a certain graph feature, the documentation of a real symmetric graph imlementation like SymListGraph or lemon::SymSmartGraph will just refer to this structure.

Definition at line 49 of file sym_graph.h.

Public Member Functions

 StaticSymGraph ()
 Defalult constructor.
NodeItfirst (NodeIt &i) const
 First node of the graph.
InEdgeItfirst (InEdgeIt &i, Node) const
 The first incoming edge.
OutEdgeItfirst (OutEdgeIt &i, Node) const
 The first outgoing edge.
EdgeItfirst (EdgeIt &i) const
 The first edge of the Graph.
SymEdgeItfirst (SymEdgeIt &i) const
 The first symmetric edge of the Graph.
Node target (Edge) const
 Gives back the target node of an edge.
Node source (Edge) const
 Gives back the source node of an edge.
Node target (SymEdge) const
 Gives back the first node of an symmetric edge.
Node source (SymEdge) const
 Gives back the second node of an symmetric edge.
int id (const Node &) const
 Gives back the id of a node.
int id (const Edge &) const
 Gives back the id of an edge.
int id (const SymEdge &) const
int nodeNum () const
 
int edgeNum () const
 
int symEdgeNum () const
Edge forward (SymEdge) const
 Gives back the forward directed edge of the symmetric edge.
Edge backward (SymEdge) const
 Gives back the backward directed edge of the symmetric edge.
Edge opposite (Edge) const
 Gives back the opposite of the edge.

Classes

class  Edge
 The base type of the edge iterators. More...
class  EdgeIt
 This iterator goes through each edge. More...
class  EdgeMap
 Reference map of the edges to type T. More...
class  InEdgeIt
 This iterator goes trough the incoming edges of a node. More...
class  Node
 Copy consructor. More...
class  NodeIt
 This iterator goes through each node. More...
class  NodeMap
class  OutEdgeIt
 This iterator goes trough the outgoing edges of a node. More...
class  SymEdge
 The base type of the symmetric edge iterators. More...
class  SymEdgeIt
 This iterator goes through each symmetric edge. More...
class  SymEdgeMap
 Reference map of the edges to type T. More...


Constructor & Destructor Documentation

StaticSymGraph  )  [inline]
 

Defalult constructor.

Definition at line 56 of file sym_graph.h.


Member Function Documentation

NodeIt& first NodeIt i  )  const [inline]
 

Return values:
i the first node.
Returns:
the first node.

Definition at line 430 of file sym_graph.h.

InEdgeIt& first InEdgeIt i,
Node 
const [inline]
 

The first incoming edge.

Definition at line 436 of file sym_graph.h.

OutEdgeIt& first OutEdgeIt i,
Node 
const [inline]
 

The first outgoing edge.

Definition at line 441 of file sym_graph.h.

EdgeIt& first EdgeIt i  )  const [inline]
 

The first edge of the Graph.

Definition at line 446 of file sym_graph.h.

SymEdgeIt& first SymEdgeIt i  )  const [inline]
 

The first symmetric edge of the Graph.

Definition at line 451 of file sym_graph.h.

Node target Edge   )  const [inline]
 

Gives back the target node of an edge.

Definition at line 457 of file sym_graph.h.

Node source Edge   )  const [inline]
 

Gives back the source node of an edge.

Definition at line 462 of file sym_graph.h.

Node target SymEdge   )  const [inline]
 

Gives back the first node of an symmetric edge.

Definition at line 468 of file sym_graph.h.

Node source SymEdge   )  const [inline]
 

Gives back the second node of an symmetric edge.

Definition at line 473 of file sym_graph.h.

int id const Node  )  const [inline]
 

Warning:
Not all graph structures provide this feature.
Todo:
Should each graph provide id?

Definition at line 479 of file sym_graph.h.

int id const Edge  )  const [inline]
 

Warning:
Not all graph structures provide this feature.
Todo:
Should each graph provide id?

Definition at line 485 of file sym_graph.h.

int id const SymEdge  )  const [inline]
 

Warning:
Not all graph structures provide this feature.
Todo:
Should each graph provide id?

Definition at line 490 of file sym_graph.h.

int nodeNum  )  const [inline]
 

Todo:
Should it be in the concept?

Definition at line 496 of file sym_graph.h.

int edgeNum  )  const [inline]
 

Todo:
Should it be in the concept?

Definition at line 501 of file sym_graph.h.

int symEdgeNum  )  const [inline]
 

Todo:
Should it be in the concept?

Definition at line 505 of file sym_graph.h.


The documentation for this class was generated from the following file:
Generated on Sat Mar 19 10:59:01 2005 for LEMON by  doxygen 1.4.1