Base class of an observable. More...
#include <arccore/base/Observable.h>
Public Member Functions | |
| ~Observable () override | |
| Releases resources. | |
| Observable (const Observable &rhs)=delete | |
| void | operator= (const Observable &rhs)=delete |
| void | attachObserver (IObserver *obs) override |
| Attaches the observer obs to this observable. | |
| void | detachObserver (IObserver *obs) override |
| Detaches the observer obs from this observable. | |
| void | notifyAllObservers () override |
| Notifies all observers. | |
| bool | hasObservers () const override |
| True if observers are attached to this observable. | |
| void | detachAllObservers () override |
| Detaches all observers associated with this instance. | |
| Public Member Functions inherited from Arcane::IObservable | |
| virtual | ~IObservable () |
| Frees resources. | |
Protected Member Functions | |
| void | _detachAllObservers () |
Additional Inherited Members | |
| Static Public Member Functions inherited from Arcane::IObservable | |
| static IObservable * | createDefault () |
Base class of an observable.
An observable cannot be copied.
Definition at line 36 of file arccore/src/base/arccore/base/Observable.h.
|
override |
Releases resources.
Definition at line 26 of file Observable.cc.
References Arcane::arccoreIsCheck().
|
inline |
Definition at line 45 of file arccore/src/base/arccore/base/Observable.h.
|
protected |
Definition at line 87 of file Observable.cc.
|
overridevirtual |
Attaches the observer obs to this observable.
It is possible to attach an observer more than once.
Implements Arcane::IObservable.
Definition at line 40 of file Observable.cc.
References Arcane::IObserver::attachToObservable().
|
overridevirtual |
Detaches all observers associated with this instance.
Implements Arcane::IObservable.
Definition at line 100 of file Observable.cc.
|
overridevirtual |
Detaches the observer obs from this observable.
If the observer obs is not present, nothing happens. If it is present multiple times, the last occurrence is deleted.
Implements Arcane::IObservable.
Definition at line 53 of file Observable.cc.
|
overridevirtual |
True if observers are attached to this observable.
Implements Arcane::IObservable.
Definition at line 78 of file Observable.cc.
|
overridevirtual |
Notifies all observers.
For each attached observer, calls IObserver::observerUpdate().
Implements Arcane::IObservable.
Definition at line 66 of file Observable.cc.