Lumiera  0.pre.03
»edit your freedom«
Propagator< TI > Class Template Reference

#include "lib/time/control-impl.hpp"

Description

template<class TI>
class lib::time::mutation::Propagator< TI >

Implementation building block: propagate changes to listeners.

The Propagator manages a set of callback signals, allowing to propagate notifications for changed Time values.

There are no specific requirements on the acceptable listeners, besides exposing a function-call operator to feed the changed time value to. Both Mutator and Propagator employ one primary template parameter, which is the type of the time values to be fed in and propagated.

Definition at line 126 of file control-impl.hpp.

Public Member Functions

template<class SIG >
void attach (SIG const &toNotify)
 install notification receiver
 
void disconnect ()
 disconnect any observers
 
TI operator() (TI const &changedVal) const
 publish a change
 

Private Types

typedef function< void(TI const &)> ChangeSignal
 
typedef std::vector< ChangeSignal > ListenerList
 

Private Attributes

ListenerList listeners_
 
+ Collaboration diagram for Propagator< TI >:

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