16 #include "objfw-defs.h"
20 #if !defined(OF_HAVE_THREADS) || \
21 (!defined(OF_HAVE_PTHREADS) && !defined(OF_WINDOWS) && !defined(OF_AMIGAOS))
22 # error No conditions available!
27 #import "OFPlainMutex.h"
29 #if defined(OF_HAVE_PTHREADS)
31 typedef pthread_cond_t OFPlainCondition;
32 #elif defined(OF_WINDOWS)
38 #elif defined(OF_AMIGAOS)
39 # include <exec/tasks.h>
41 struct OFPlainConditionWaitingTask {
44 struct OFPlainConditionWaitingTask *next;
52 extern int OFPlainConditionNew(OFPlainCondition *condition);
53 extern int OFPlainConditionSignal(OFPlainCondition *condition);
54 extern int OFPlainConditionBroadcast(OFPlainCondition *condition);
55 extern int OFPlainConditionWait(OFPlainCondition *condition,
57 extern int OFPlainConditionTimedWait(OFPlainCondition *condition,
59 #if defined(OF_AMIGAOS) || defined(DOXYGEN)
60 extern int OFPlainConditionWaitOrExecSignal(OFPlainCondition *condition,
61 OFPlainMutex *mutex, ULONG *signalMask);
62 extern int OFPlainConditionTimedWaitOrExecSignal(OFPlainCondition *condition,
65 extern int OFPlainConditionFree(OFPlainCondition *condition);
double OFTimeInterval
A time interval in seconds.
Definition: OFObject.h:150