My Project
Loading...
Searching...
No Matches
List of all members
IterableBpGraphComponent< BAS > Class Template Reference

Detailed Description

template<typename BAS = BaseBpGraphComponent>
class lemon::concepts::IterableBpGraphComponent< BAS >

This class describes the interface of iterable undirected bipartite graphs. It extends IterableGraphComponent with the core iterable interface of undirected bipartite graphs. This concept is part of the BpGraph concept.

#include <lemon/concepts/graph_components.h>

+ Inheritance diagram for IterableBpGraphComponent< BAS >:

Public Types

Class Based Iteration

This interface provides iterator classes for red and blue nodes.

typedef GraphItemIt< BpGraph, RedNode > RedNodeIt
 This iterator goes through each red node.
 
typedef GraphItemIt< BpGraph, BlueNode > BlueNodeIt
 This iterator goes through each blue node.
 
- Public Types inherited from IterableGraphComponent< BAS >
typedef GraphItemIt< Graph, Edge > EdgeIt
 This iterator goes through each edge.
 
typedef GraphIncIt< Graph, Edge, Node, 'e'> IncEdgeIt
 This iterator goes trough the incident edges of a node.
 
- Public Types inherited from IterableDigraphComponent< BAS >
typedef GraphItemIt< Digraph, Node > NodeIt
 This iterator goes through each node.
 
typedef GraphItemIt< Digraph, Arc > ArcIt
 This iterator goes through each arc.
 
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.
 
- Public Types inherited from BaseDigraphComponent
typedef GraphItem< 'n'> Node
 Node class of the digraph.
 
typedef GraphItem< 'a'> Arc
 Arc class of the digraph.
 

Public Member Functions

Base Iteration

This interface provides functions for iteration on red and blue nodes.

void first (RedNode &) const
 Return the first red node.
 
void next (RedNode &) const
 Return the next red node.
 
void first (BlueNode &) const
 Return the first blue node.
 
void next (BlueNode &) const
 Return the next blue node.
 
- Public Member Functions inherited from IterableGraphComponent< BAS >
void first (Edge &) const
 Return the first edge.
 
void next (Edge &) const
 Return the next edge.
 
void firstInc (Edge &, bool &, const Node &) const
 Return the first edge incident to the given node.
 
void nextInc (Edge &, bool &) const
 Gives back the next of the edges from the given node.
 
Node baseNode (const IncEdgeIt &) const
 The base node of the iterator.
 
Node runningNode (const IncEdgeIt &) const
 The running node of the iterator.
 
- Public Member Functions inherited from IterableDigraphComponent< BAS >
void first (Node &) const
 Return the first node.
 
void next (Node &) const
 Return the next node.
 
void first (Arc &) const
 Return the first arc.
 
void next (Arc &) const
 Return the next arc.
 
void firstIn (Arc &, const Node &) const
 Return the first arc incoming to the given node.
 
void nextIn (Arc &) const
 Return the next arc incoming to the given node.
 
void firstOut (Arc &, const Node &) const
 Return the first arc outgoing form the given node.
 
void nextOut (Arc &) const
 Return the next arc outgoing form the given 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 inherited from BaseDigraphComponent
Node source (const Arc &) const
 Return the source node of an arc.
 
Node target (const Arc &) const
 Return the target node of an arc.
 
Node oppositeNode (const Node &, const Arc &) const
 Return the opposite node on the given arc.
 

Member Typedef Documentation

◆ RedNodeIt

template<typename BAS = BaseBpGraphComponent>
typedef GraphItemIt<BpGraph, RedNode> RedNodeIt

This iterator goes through each red node.

◆ BlueNodeIt

template<typename BAS = BaseBpGraphComponent>
typedef GraphItemIt<BpGraph, BlueNode> BlueNodeIt

This iterator goes through each blue node.

Member Function Documentation

◆ first() [1/2]

template<typename BAS = BaseBpGraphComponent>
void first ( RedNode &  ) const
inline

This function gives back the first red node in the iteration order.

◆ next() [1/2]

template<typename BAS = BaseBpGraphComponent>
void next ( RedNode &  ) const
inline

This function gives back the next red node in the iteration order.

◆ first() [2/2]

template<typename BAS = BaseBpGraphComponent>
void first ( BlueNode &  ) const
inline

This function gives back the first blue node in the iteration order.

◆ next() [2/2]

template<typename BAS = BaseBpGraphComponent>
void next ( BlueNode &  ) const
inline

This function gives back the next blue node in the iteration order.