RTT::os::Condition Class Reference

An object oriented wrapper around a condition variable. More...

#include <Condition.hpp>

List of all members.

Public Member Functions

void broadcast ()
void broadcast ()
 Condition ()
 Condition ()
template<class Predicate >
bool wait (Mutex &m, Predicate &p)
bool wait (Mutex &m)
template<class Predicate >
bool wait (Mutex &m, Predicate &p)
bool wait (Mutex &m)
bool wait_until (Mutex &m, nsecs abs_time)
bool wait_until (Mutex &m, nsecs abs_time)
 ~Condition ()
 ~Condition ()

Protected Attributes

rt_cond_t c

Detailed Description

An object oriented wrapper around a condition variable.

See also:
Mutex, MutexRecursive

Definition at line 50 of file install/include/rtt/os/Condition.hpp.


Constructor & Destructor Documentation

RTT::os::Condition::Condition (  )  [inline]

Initialize a Condition.

Definition at line 51 of file install/include/rtt/os/Condition.hpp.

RTT::os::Condition::~Condition (  )  [inline]

Destroy a Condition. If the Condition is still locked, the RTOS will not be asked to clean up its resources.

Definition at line 61 of file install/include/rtt/os/Condition.hpp.

RTT::os::Condition::Condition (  )  [inline]

Initialize a Condition.

Definition at line 51 of file rtt/os/Condition.hpp.

RTT::os::Condition::~Condition (  )  [inline]

Destroy a Condition. If the Condition is still locked, the RTOS will not be asked to clean up its resources.

Definition at line 61 of file rtt/os/Condition.hpp.


Member Function Documentation

void RTT::os::Condition::broadcast (  )  [inline]

Wake all threads that are blocking in wait() or wait_until().

Definition at line 95 of file rtt/os/Condition.hpp.

void RTT::os::Condition::broadcast (  )  [inline]

Wake all threads that are blocking in wait() or wait_until().

Definition at line 95 of file install/include/rtt/os/Condition.hpp.

template<class Predicate >
bool RTT::os::Condition::wait ( Mutex m,
Predicate &  p 
) [inline]

Wait forever until a condition occurs

Parameters:
m The mutex you hold locked when calling this function.
p A function object returning a boolean
Returns:
false if the waiting failed. This can only be caused by the OS aborting the waiting. Returns true when p() has been true.

Definition at line 86 of file rtt/os/Condition.hpp.

bool RTT::os::Condition::wait ( Mutex m  )  [inline]

Wait forever until a condition occurs

Parameters:
m The mutex you hold locked when calling this function.
Returns:
false if the waiting failed. This can only be caused by the OS aborting the waiting.

Definition at line 72 of file rtt/os/Condition.hpp.

template<class Predicate >
bool RTT::os::Condition::wait ( Mutex m,
Predicate &  p 
) [inline]

Wait forever until a condition occurs

Parameters:
m The mutex you hold locked when calling this function.
p A function object returning a boolean
Returns:
false if the waiting failed. This can only be caused by the OS aborting the waiting. Returns true when p() has been true.

Definition at line 86 of file install/include/rtt/os/Condition.hpp.

bool RTT::os::Condition::wait ( Mutex m  )  [inline]

Wait forever until a condition occurs

Parameters:
m The mutex you hold locked when calling this function.
Returns:
false if the waiting failed. This can only be caused by the OS aborting the waiting.

Definition at line 72 of file install/include/rtt/os/Condition.hpp.

bool RTT::os::Condition::wait_until ( Mutex m,
nsecs  abs_time 
) [inline]

Wait for this condition, but don't wait longer for it than the specified absolute time.

Parameters:
m The mutex you hold locked when calling this function.
abs_time The absolute time to wait until before the condition happens. Use rtos_get_time_ns() to get the current time and Seconds_to_nsecs to add a certain amount to the result.
Returns:
true when the condition occured, false in case the timeout happened.

Definition at line 111 of file rtt/os/Condition.hpp.

bool RTT::os::Condition::wait_until ( Mutex m,
nsecs  abs_time 
) [inline]

Wait for this condition, but don't wait longer for it than the specified absolute time.

Parameters:
m The mutex you hold locked when calling this function.
abs_time The absolute time to wait until before the condition happens. Use rtos_get_time_ns() to get the current time and Seconds_to_nsecs to add a certain amount to the result.
Returns:
true when the condition occured, false in case the timeout happened.

Definition at line 111 of file install/include/rtt/os/Condition.hpp.


Member Data Documentation

Definition at line 46 of file install/include/rtt/os/Condition.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:50:10 2013