20 #include "objfw-defs.h"
24 #if !defined(OF_HAVE_THREADS) || \
25 (!defined(OF_HAVE_PTHREADS) && !defined(OF_WINDOWS) && !defined(OF_AMIGAOS))
26 # error No conditions available!
35 #if defined(OF_HAVE_PTHREADS)
37 typedef pthread_cond_t OFPlainCondition;
38 #elif defined(OF_WINDOWS)
44 #elif defined(OF_AMIGAOS)
45 # include <exec/tasks.h>
47 struct _OFPlainConditionWaitingTask {
50 struct _OFPlainConditionWaitingTask *next;
108 #if defined(OF_AMIGAOS) || defined(DOXYGEN)
119 OFPlainMutex *mutex, ULONG *signalMask);
double OFTimeInterval
A time interval in seconds.
Definition: OFObject.h:154
int OFPlainConditionBroadcast(OFPlainCondition *condition)
Broadcasts the specified condition, meaning it will be signaled to everyone waiting.
int OFPlainConditionSignal(OFPlainCondition *condition)
Signals the specified condition.
int OFPlainConditionNew(OFPlainCondition *condition)
Creates a new plain condition.
int OFPlainConditionTimedWait(OFPlainCondition *condition, OFPlainMutex *mutex, OFTimeInterval timeout)
Waits on the specified condition with the specified mutex with a timeout.
int OFPlainConditionWait(OFPlainCondition *condition, OFPlainMutex *mutex)
Waits on the specified condition with the specified mutex.
int OFPlainConditionTimedWaitOrExecSignal(OFPlainCondition *condition, OFPlainMutex *mutex, OFTimeInterval timeout, ULONG *signalMask)
Waits on the specified condition with the specified mutex or the specified Exec signal,...
int OFPlainConditionFree(OFPlainCondition *condition)
Destroys the specified plain condition.
int OFPlainConditionWaitOrExecSignal(OFPlainCondition *condition, OFPlainMutex *mutex, ULONG *signalMask)
Waits on the specified condition with the specified mutex or the specified Exec signal.