Overview | Modules | Class Hierarchy | Classes | Members

# tlp::PropertyObserver Class Reference
[Properties]

`#include <ObservableProperty.h>`

Inherited by tlp::DoubleProperty, tlp::GraphProperty, tlp::IntegerProperty, tlp::LayoutProperty, and tlp::SizeProperty.

Inheritance diagram for tlp::PropertyObserver:

[legend]
List of all members.

## Detailed Description

Observer for Property.

The Observer pattern is described in the lecture notes and pp293-304 of Design Patterns by Gamma, Helm, Johnson, and Vlissides. It is a framework for handling state dependency between observer and observed object.

## Public Member Functions

- PropertyObserver (bool manageObservables=true)
- virtual ~PropertyObserver ()
- virtual void beforeSetNodeValue (PropertyInterface *, const node)
- virtual void afterSetNodeValue (PropertyInterface *, const node)
- virtual void beforeSetEdgeValue (PropertyInterface *, const edge)
- virtual void afterSetEdgeValue (PropertyInterface *, const edge)
- virtual void beforeSetAllNodeValue (PropertyInterface *)
- virtual void afterSetAllNodeValue (PropertyInterface *)
- virtual void beforeSetAllEdgeValue (PropertyInterface *)
- virtual void afterSetAllEdgeValue (PropertyInterface *)
- virtual void destroy (PropertyInterface *)
- void addObservable (ObservableProperty *)
- void removeObservable (ObservableProperty *)

## Constructor & Destructor Documentation

tlp::PropertyObserver::PropertyObserver | ( | bool | manageObservables = `true` | ) | `[inline]`

virtual tlp::PropertyObserver::~PropertyObserver | ( |  | ) | `[virtual]`

## Member Function Documentation

void tlp::PropertyObserver::addObservable | ( | ObservableProperty * |  | ) |

virtual void tlp::PropertyObserver::afterSetAllEdgeValue | ( | PropertyInterface * |  | ) | `[inline, virtual]`

virtual void tlp::PropertyObserver::afterSetAllNodeValue | ( | PropertyInterface * |  | ) | `[inline, virtual]`

| Reimplemented in tlp::GraphProperty.

virtual void tlp::PropertyObserver::afterSetEdgeValue | ( | PropertyInterface * | ,
|  | const | edge
| ) | `[inline, virtual]`

virtual void tlp::PropertyObserver::afterSetNodeValue | ( | PropertyInterface * | ,
|  | const node |
| ) | `[inline, virtual]`

| Reimplemented in tlp::GraphProperty.

virtual void tlp::PropertyObserver::beforeSetAllEdgeValue | ( | PropertyInterface * |  | ) | `[inline, virtual]`

| Reimplemented in tlp::DoubleProperty, tlp::IntegerProperty, tlp::LayoutProperty, and tlp::SizeProperty.

virtual void tlp::PropertyObserver::beforeSetAllNodeValue | ( | PropertyInterface * |  | ) | `[inline, virtual]`

| Reimplemented in tlp::DoubleProperty, tlp::GraphProperty, tlp::IntegerProperty, tlp::LayoutProperty, and tlp::SizeProperty.

virtual void tlp::PropertyObserver::beforeSetEdgeValue | ( | PropertyInterface * | ,
|  | const edge |
| ) | `[inline, virtual]`

| Reimplemented in tlp::DoubleProperty, tlp::IntegerProperty, tlp::LayoutProperty, and tlp::SizeProperty.

virtual void tlp::PropertyObserver::beforeSetNodeValue | ( | PropertyInterface * | ,
|  | const node |
| ) | `[inline, virtual]`

| Reimplemented in tlp::DoubleProperty, tlp::GraphProperty, tlp::IntegerProperty, tlp::LayoutProperty, and tlp::SizeProperty.

virtual void tlp::PropertyObserver::destroy | ( | PropertyInterface * |  | ) | `[inline, virtual]`

void tlp::PropertyObserver::removeObservable | ( | ObservableProperty * |  | ) |

Tulip Software by LaBRI Visualization Team 2001 - 2010