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

Detailed Description

template<typename BAS = BaseDigraphComponent>
class lemon::concepts::AlterableDigraphComponent< BAS >

This class describes the interface of alterable directed graphs. It extends BaseDigraphComponent with the alteration notifier interface. It implements an observer-notifier pattern for each digraph item. More obsevers can be registered into the notifier and whenever an alteration occured in the digraph all the observers will be notified about it.

#include <lemon/concepts/graph_components.h>

+ Inheritance diagram for AlterableDigraphComponent< BAS >:

Public Types

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

NodeNotifiernotifier (Node) const
 Return the node alteration notifier.
 
ArcNotifiernotifier (Arc) const
 Return the arc alteration notifier.
 
- 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 = BaseDigraphComponent>
NodeNotifier & notifier ( Node ) const
inline

This function gives back the node alteration notifier.

◆ notifier() [2/2]

template<typename BAS = BaseDigraphComponent>
ArcNotifier & notifier ( Arc ) const
inline

This function gives back the arc alteration notifier.