IterableDigraphComponent< _Base > Class Template Reference


Detailed Description

template<typename _Base = BaseDigraphComponent>
class lemon::concepts::IterableDigraphComponent< _Base >

This class provides beside the core digraph features iterator based iterable interface for the digraph structure. This concept is part of the Digraph concept. #include <lemon/concepts/graph_components.h>

Inherits _Base.

List of all members.

Class based iteration

This interface provides functions for iteration on digraph items

typedef GraphItemIt< Digraph,
Node > 
NodeIt
typedef GraphItemIt< Digraph, Arc > ArcIt
typedef GraphIncIt< Digraph,
Arc, Node, 'i'> 
InArcIt
 This iterator goes trough the incoming arcs of a node.
typedef GraphIncIt< Digraph,
Arc, Node, 'o'> 
OutArcIt
 This iterator goes trough the outgoing arcs of a node.
Node baseNode (const InArcIt &) const
 The base node of the iterator.
Node runningNode (const InArcIt &) const
 The running node of the iterator.
Node baseNode (const OutArcIt &) const
 The base node of the iterator.
Node runningNode (const OutArcIt &) const
 The running node of the iterator.

Public Member Functions

Base iteration
This interface provides functions for iteration on digraph items

void first (Node &) const
void next (Node &) const
void first (Arc &) const
void next (Arc &) const
void firstIn (Arc &, const Node &) const
void nextIn (Arc &) const
void firstOut (Arc &, const Node &) const
void nextOut (Arc &) const


Member Typedef Documentation

typedef GraphItemIt<Digraph, Node> NodeIt

This iterator goes through each node.

typedef GraphItemIt<Digraph, Arc> ArcIt

This iterator goes through each node.

typedef GraphIncIt<Digraph, Arc, Node, 'i'> InArcIt

This iterator goes trough the inccoming arcs of a certain node of a digraph.

typedef GraphIncIt<Digraph, Arc, Node, 'o'> OutArcIt

This iterator goes trough the outgoing arcs of a certain node of a digraph.


Member Function Documentation

void first ( Node &   )  const [inline]

Gives back the first node in the iterating order.

void next ( Node &   )  const [inline]

Gives back the next node in the iterating order.

void first ( Arc &   )  const [inline]

Gives back the first arc in the iterating order.

void next ( Arc &   )  const [inline]

Gives back the next arc in the iterating order.

void firstIn ( Arc &  ,
const Node &   
) const [inline]

Gives back the first of the arcs point to the given node.

void nextIn ( Arc &   )  const [inline]

Gives back the next of the arcs points to the given node.

void firstOut ( Arc &  ,
const Node &   
) const [inline]

Gives back the first of the arcs start from the given node.

void nextOut ( Arc &   )  const [inline]

Gives back the next of the arcs start from the given node.

Node baseNode ( const InArcIt  )  const [inline]

Gives back the base node of the iterator. It is always the target of the pointed arc.

Reimplemented in IterableGraphComponent< _Base >.

Node runningNode ( const InArcIt  )  const [inline]

Gives back the running node of the iterator. It is always the source of the pointed arc.

Reimplemented in IterableGraphComponent< _Base >.

Node baseNode ( const OutArcIt  )  const [inline]

Gives back the base node of the iterator. It is always the source of the pointed arc.

Reimplemented in IterableGraphComponent< _Base >.

Node runningNode ( const OutArcIt  )  const [inline]

Gives back the running node of the iterator. It is always the target of the pointed arc.

Reimplemented in IterableGraphComponent< _Base >.


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

doxygen