Object notified on change of base objects and notifying dependent objects in its turn. More...
#include <SMESH_Filter_i.hxx>

Public Member Functions | |
| virtual void | OnBaseObjModified (NotifyerAndWaiter *obj, bool removed) |
| void | Modified (bool removed=false, NotifyerAndWaiter *who=0) |
| calls OnBaseObjModified(), if who != this, and myWaiters[i]->Modified(who) More... | |
| void | AddModifWaiter (NotifyerAndWaiter *waiter) |
| Stores an object to be notified on change of predicate. More... | |
| void | RemoveModifWaiter (NotifyerAndWaiter *waiter) |
| Removes an object to be notified on change of predicate. More... | |
| bool | ContainModifWaiter (NotifyerAndWaiter *waiter) |
| Checks if a waiter is among myWaiters, maybe nested. More... | |
Data Fields | |
| std::list< NotifyerAndWaiter * > | myWaiters |
Object notified on change of base objects and notifying dependent objects in its turn.
This interface is used to track the following dependencies:
| void NotifyerAndWaiter::AddModifWaiter | ( | NotifyerAndWaiter * | waiter | ) |
Stores an object to be notified on change of predicate.
References myWaiters.
Referenced by SMESH::Filter_i::FindBaseObjects().
| bool NotifyerAndWaiter::ContainModifWaiter | ( | NotifyerAndWaiter * | waiter | ) |
Checks if a waiter is among myWaiters, maybe nested.
References myWaiters.
Referenced by SMESH_GroupBase_i::IsInDependency().
| void NotifyerAndWaiter::Modified | ( | bool | removed = false, |
| NotifyerAndWaiter * | who = 0 |
||
| ) |
calls OnBaseObjModified(), if who != this, and myWaiters[i]->Modified(who)
References myWaiters, and OnBaseObjModified().
Referenced by SMESH_Group_i::Add(), SMESH_Group_i::AddFrom(), ChangeByPredicate(), SMESH_Group_i::Clear(), SMESH_Group_i::Remove(), SMESH_Mesh_i::RemoveGroup(), and SMESH::Filter_i::SetPredicate().
|
virtual |
Reimplemented in SMESH::Filter_i.
Referenced by Modified().
| void NotifyerAndWaiter::RemoveModifWaiter | ( | NotifyerAndWaiter * | waiter | ) |
Removes an object to be notified on change of predicate.
References myWaiters.
Referenced by SMESH_GroupOnFilter_i::~SMESH_GroupOnFilter_i().
| std::list<NotifyerAndWaiter*> SMESH::NotifyerAndWaiter::myWaiters |
Referenced by AddModifWaiter(), ContainModifWaiter(), Modified(), and RemoveModifWaiter().