|
OpenWalnut
1.4.0
|
Class to encapsulate boost::condition_variable_any. More...
#include <WCondition.h>
Inheritance diagram for WCondition:Public Types | |
| typedef boost::shared_ptr < WCondition > | SPtr |
| Shared pointer type for WCondition. More... | |
| typedef boost::shared_ptr < const WCondition > | ConstSPtr |
| Const shared pointer type for WCondition. More... | |
| typedef boost::function0< void > | t_ConditionNotifierType |
| Type used for signalling condition changes. More... | |
Public Member Functions | |
| WCondition () | |
| Default constructor. More... | |
| virtual | ~WCondition () |
| Destructor. More... | |
| virtual void | wait () const |
| Wait for the condition. More... | |
| virtual void | notify () |
| Notifies all waiting threads. More... | |
| boost::signals2::connection | subscribeSignal (t_ConditionNotifierType notifier) const |
| Subscribes a specified function to be notified on condition change. More... | |
Protected Types | |
| typedef boost::signals2::signal< void(void)> | t_ConditionSignalType |
| Type used for condition notification. More... | |
Protected Attributes | |
| t_ConditionSignalType | signal_ConditionFired |
| Signal getting fired whenever the condition fires. More... | |
| boost::condition_variable_any | m_condition |
| The condition. More... | |
| boost::shared_mutex | m_mutex |
| The mutex used for the condition. More... | |
Friends | |
| class | WCondition_test |
Class to encapsulate boost::condition_variable_any.
You may use it to efficiently wait for events (a condition comes true). It is a very simple implementation. It might be extended easily. Timed wait functions and so on.
Definition at line 39 of file WCondition.h.
| typedef boost::shared_ptr< const WCondition > WCondition::ConstSPtr |
Const shared pointer type for WCondition.
Definition at line 51 of file WCondition.h.
| typedef boost::shared_ptr< WCondition > WCondition::SPtr |
Shared pointer type for WCondition.
Definition at line 46 of file WCondition.h.
| typedef boost::function0< void > WCondition::t_ConditionNotifierType |
Type used for signalling condition changes.
Definition at line 76 of file WCondition.h.
|
protected |
Type used for condition notification.
Definition at line 91 of file WCondition.h.
| WCondition::WCondition | ( | ) |
Default constructor.
Definition at line 27 of file WCondition.cpp.
|
virtual |
Destructor.
Definition at line 32 of file WCondition.cpp.
|
virtual |
Notifies all waiting threads.
Reimplemented in WConditionOneShot.
Definition at line 44 of file WCondition.cpp.
References m_condition, and signal_ConditionFired.
Referenced by WConditionSet::conditionFired(), WConditionOneShot::notify(), WPropertyObserver::propertyUpdated(), Callable::threadMain(), and WModuleInputConnector::WModuleInputConnector().
| boost::signals2::connection WCondition::subscribeSignal | ( | t_ConditionNotifierType | notifier | ) | const |
Subscribes a specified function to be notified on condition change.
| notifier | the notifier function |
Definition at line 50 of file WCondition.cpp.
References signal_ConditionFired.
Referenced by WKernel::subscribeSignal(), WGraphicsEngine::subscribeSignal(), and WFlagTest::testChangeCondition().
|
virtual |
Wait for the condition.
Sets the calling thread asleep.
Reimplemented in WConditionSet, and WConditionOneShot.
Definition at line 37 of file WCondition.cpp.
References m_condition, and m_mutex.
Referenced by WConditionTest::testWaitNotify(), and WConditionSet::wait().
|
mutableprotected |
|
mutableprotected |
The mutex used for the condition.
Definition at line 106 of file WCondition.h.
Referenced by WConditionOneShot::wait(), wait(), and WConditionOneShot::WConditionOneShot().
|
mutableprotected |
Signal getting fired whenever the condition fires.
Definition at line 96 of file WCondition.h.
Referenced by notify(), and subscribeSignal().
1.8.7