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!
31 #import "OFPlainMutex.h"
33 #if defined(OF_HAVE_PTHREADS)
35 typedef pthread_cond_t OFPlainCondition;
36 #elif defined(OF_WINDOWS)
42 #elif defined(OF_AMIGAOS)
43 # include <exec/tasks.h>
45 struct OFPlainConditionWaitingTask {
48 struct OFPlainConditionWaitingTask *next;
56 extern int OFPlainConditionNew(OFPlainCondition *condition);
57 extern int OFPlainConditionSignal(OFPlainCondition *condition);
58 extern int OFPlainConditionBroadcast(OFPlainCondition *condition);
59 extern int OFPlainConditionWait(OFPlainCondition *condition,
61 extern int OFPlainConditionTimedWait(OFPlainCondition *condition,
63 #if defined(OF_AMIGAOS) || defined(DOXYGEN)
64 extern int OFPlainConditionWaitOrExecSignal(OFPlainCondition *condition,
65 OFPlainMutex *mutex, ULONG *signalMask);
66 extern int OFPlainConditionTimedWaitOrExecSignal(OFPlainCondition *condition,
69 extern int OFPlainConditionFree(OFPlainCondition *condition);
double OFTimeInterval
A time interval in seconds.
Definition: OFObject.h:154