VISH  0.2
Classes | Public Types | Public Member Functions

A node which serves to identify multiple instances of input alternatives for a certain value. More...

#include </home/werner/origo/vish/ocean/plankton/ValueNotifier.hpp>

List of all members.

Classes

Public Types

Public Member Functions


Detailed Description

A node which serves to identify multiple instances of input alternatives for a certain value.

It contains a set of weak pointers to VValueNotifier's which are called when a specific value is changed. It also contains a list of weak pointers to ValuePools, which each of them may host a shadow of the respective value. The data layout is basically like this:

  class ValueNotifierList 
  {
        list<WeakPtr<VValueNotifier> >  ValueNotifiers;
        list<WeakPtr<ValuePool> >       ValueShadows;
  };
Examples:

exocoetida.cpp, LocalCompoundInput.cpp, and stockvish.cpp.


Member Function Documentation

bool Wizt::ValueNotifierList::addNotifier ( const WeakPtr< ValueNotifier > &  who) const
Returns:
false if an invalid pointer was given.
bool Wizt::ValueNotifierList::addShadow ( const WeakPtr< ValuePool, ValuePool > &  ShadowPool) const

Add an optional shadow of a certain variable, which means to remember the ValuePool's which contains an instance of the related value.

Only weak pointers are stored, so if the ValuePool goes away on its own, there is already taken care of automatically.

int Wizt::ValueNotifierList::copyShadows ( const ValueNotifierListPtr Source)

For each shadow found in the source's ValuePool, create a shadow for the current ValueNotifierList as well.

The values are copied.

bool Wizt::ValueNotifierList::removeAllShadows ( )

Remove all shadows of a certain variable, i.e.

forget all ValuePools which had a relation to this ValueNotifierList.


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