My Project
Loading...
Searching...
No Matches
AlterableBpGraphComponent< BAS > Class Template Reference

Detailed Description

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

This class describes the interface of alterable undirected bipartite graphs. It extends AlterableGraphComponent with the alteration notifier interface of bipartite graphs. It implements an observer-notifier pattern for the red and blue nodes. More obsevers can be registered into the notifier and whenever an alteration occured in the graph all the observers will be notified about it.

#include <lemon/concepts/graph_components.h>

+ Inheritance diagram for AlterableBpGraphComponent< BAS >:

Public Types

typedef AlterationNotifier< AlterableBpGraphComponent, RedNode > RedNodeNotifier
 Red node alteration notifier class.
 
typedef AlterationNotifier< AlterableBpGraphComponent, BlueNode > BlueNodeNotifier
 Blue node alteration notifier class.
 
- Public Types inherited from AlterableGraphComponent< BaseBpGraphComponent >
typedef AlterationNotifier< AlterableGraphComponent, EdgeEdgeNotifier
 Edge alteration notifier class.
 
- Public Types inherited from AlterableDigraphComponent< BaseBpGraphComponent >
typedef AlterationNotifier< AlterableDigraphComponent, NodeNodeNotifier
 Node alteration notifier class.
 
typedef AlterationNotifier< AlterableDigraphComponent, ArcArcNotifier
 Arc alteration notifier class.
 
- Public Types inherited from BaseBpGraphComponent
- Public Types inherited from BaseGraphComponent
- 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

RedNodeNotifiernotifier (RedNode) const
 Return the red node alteration notifier.
 
BlueNodeNotifiernotifier (BlueNode) const
 Return the blue node alteration notifier.
 
- Public Member Functions inherited from AlterableGraphComponent< BaseBpGraphComponent >
EdgeNotifiernotifier (Edge) const
 Return the edge alteration notifier.
 
- Public Member Functions inherited from AlterableDigraphComponent< BaseBpGraphComponent >
NodeNotifiernotifier (Node) const
 Return the node alteration notifier.
 
ArcNotifiernotifier (Arc) const
 Return the arc alteration notifier.
 
- Public Member Functions inherited from BaseBpGraphComponent
bool red (const Node &) const
 Gives back true for red nodes.
 
bool blue (const Node &) const
 Gives back true for blue nodes.
 
RedNode redNode (const Edge &) const
 Gives back the red end node of the edge.
 
BlueNode blueNode (const Edge &) const
 Gives back the blue end node of the edge.
 
RedNode asRedNodeUnsafe (const Node &) const
 Converts the node to red node object.
 
BlueNode asBlueNodeUnsafe (const Node &) const
 Converts the node to blue node object.
 
RedNode asRedNode (const Node &) const
 Converts the node to red node object.
 
BlueNode asBlueNode (const Node &) const
 Converts the node to blue node object.
 
- Public Member Functions inherited from BaseGraphComponent
Node u (const Edge &) const
 Return one end node of an edge.
 
Node v (const Edge &) const
 Return the other end node of an edge.
 
Arc direct (const Edge &, bool) const
 Return a directed arc related to an edge.
 
Arc direct (const Edge &, const Node &) const
 Return a directed arc related to an edge.
 
bool direction (const Arc &) const
 Return the direction of the arc.
 
Arc oppositeArc (const Arc &) const
 Return the opposite arc.
 
- 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 Function Documentation

◆ notifier() [1/2]

template<typename BAS = BaseBpGraphComponent>
RedNodeNotifier & notifier ( RedNode ) const
inline

This function gives back the red node alteration notifier.

◆ notifier() [2/2]

template<typename BAS = BaseBpGraphComponent>
BlueNodeNotifier & notifier ( BlueNode ) const
inline

This function gives back the blue node alteration notifier.