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 >:
[legend]

## 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, Edge > | EdgeNotifier
| Edge alteration notifier class.
Public Types inherited from AlterableDigraphComponent< BaseBpGraphComponent >
typedef AlterationNotifier< AlterableDigraphComponent, Node > | NodeNotifier
| Node alteration notifier class.
typedef AlterationNotifier< AlterableDigraphComponent, Arc > | ArcNotifier
| Arc alteration notifier class.
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

RedNodeNotifier & | notifier (RedNode) const
| Return the red node alteration notifier.
BlueNodeNotifier & | notifier (BlueNode) const
| Return the blue node alteration notifier.
EdgeNotifier & | notifier (Edge) const
| Return the edge alteration notifier.
NodeNotifier & | notifier (Node) const
| Return the node alteration notifier.
ArcNotifier & | notifier (Arc) const
| Return the arc alteration notifier.
Public Member Functions inherited from AlterableDigraphComponent< BaseBpGraphComponent >
NodeNotifier & | notifier (Node) const
| Return the node 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/5]

template<typename BAS = BaseBpGraphComponent>

RedNodeNotifier & notifier | ( | RedNode |  | ) | const

inline

This function gives back the red node alteration notifier.

## notifier() [2/5]

template<typename BAS = BaseBpGraphComponent>

BlueNodeNotifier & notifier | ( | BlueNode |  | ) | const

inline

This function gives back the blue node alteration notifier.

## notifier() [3/5]

template<typename BAS = BaseBpGraphComponent>

EdgeNotifier & notifier | ( | Edge |  | ) | const

inline

This function gives back the edge alteration notifier.

## notifier() [4/5]

template<typename BAS = BaseBpGraphComponent>

| ( | Node |  | ) | const

This function gives back the node alteration notifier.

## notifier() [5/5]

template<typename BAS = BaseBpGraphComponent>

| ( | Arc |  | ) | const

This function gives back the arc alteration notifier.