@@ -15,28 +15,28 @@ #include "config.h" #include -#import "condition.h" +#import "OFPlainCondition.h" #include #include #ifndef OF_AMIGAOS4 # include #endif int -of_condition_new(of_condition_t *condition) +OFPlainConditionNew(OFPlainCondition *condition) { condition->waitingTasks = NULL; return 0; } int -of_condition_signal(of_condition_t *condition) +OFPlainConditionSignal(OFPlainCondition *condition) { Forbid(); @try { if (condition->waitingTasks == NULL) return 0; @@ -51,11 +51,11 @@ return 0; } int -of_condition_broadcast(of_condition_t *condition) +OFPlainConditionBroadcast(OFPlainCondition *condition) { Forbid(); @try { if (condition->waitingTasks == NULL) return 0; @@ -72,22 +72,22 @@ return 0; } int -of_condition_wait(of_condition_t *condition, of_mutex_t *mutex) +OFPlainConditionWait(OFPlainCondition *condition, OFPlainMutex *mutex) { ULONG signalMask = 0; - return of_condition_wait_or_signal(condition, mutex, &signalMask); + return OFPlainConditionWaitOrExecSignal(condition, mutex, &signalMask); } int -of_condition_wait_or_signal(of_condition_t *condition, of_mutex_t *mutex, - ULONG *signalMask) +OFPlainConditionWaitOrExecSignal(OFPlainCondition *condition, + OFPlainMutex *mutex, ULONG *signalMask) { - struct of_condition_waiting_task waitingTask = { + struct OFPlainConditionWaitingTask waitingTask = { .task = FindTask(NULL), .sigBit = AllocSignal(-1) }; int error = 0; ULONG mask; @@ -95,21 +95,21 @@ if (waitingTask.sigBit == -1) return EAGAIN; Forbid(); - if ((error = of_mutex_unlock(mutex)) != 0) { + if ((error = OFPlainMutexUnlock(mutex)) != 0) { FreeSignal(waitingTask.sigBit); return error; } waitingTask.next = condition->waitingTasks; condition->waitingTasks = &waitingTask; mask = Wait((1ul << waitingTask.sigBit) | *signalMask); if (mask & (1ul << waitingTask.sigBit) || (*signalMask &= mask)) - error = of_mutex_lock(mutex); + error = OFPlainMutexLock(mutex); else /* * This should not happen - it means something interrupted the * Wait(), so the best we can do is return EINTR. */ @@ -121,24 +121,24 @@ return error; } int -of_condition_timed_wait(of_condition_t *condition, of_mutex_t *mutex, - of_time_interval_t timeout) +OFPlainConditionTimedWait(OFPlainCondition *condition, OFPlainMutex *mutex, + OFTimeInterval timeout) { ULONG signalMask = 0; - return of_condition_timed_wait_or_signal(condition, mutex, timeout, + return OFPlainConditionTimedWaitOrExecSignal(condition, mutex, timeout, &signalMask); } int -of_condition_timed_wait_or_signal(of_condition_t *condition, of_mutex_t *mutex, - of_time_interval_t timeout, ULONG *signalMask) +OFPlainConditionTimedWaitOrExecSignal(OFPlainCondition *condition, + OFPlainMutex *mutex, OFTimeInterval timeout, ULONG *signalMask) { - struct of_condition_waiting_task waitingTask = { + struct OFPlainConditionWaitingTask waitingTask = { .task = FindTask(NULL), .sigBit = AllocSignal(-1) }; struct MsgPort port = { .mp_Node = { @@ -192,11 +192,11 @@ goto fail; } Forbid(); - if ((error = of_mutex_unlock(mutex)) != 0) { + if ((error = OFPlainMutexUnlock(mutex)) != 0) { Permit(); goto fail; } waitingTask.next = condition->waitingTasks; @@ -205,11 +205,11 @@ SendIO((struct IORequest *)&request); mask = Wait((1ul << waitingTask.sigBit) | (1ul << port.mp_SigBit) | *signalMask); if (mask & (1ul << waitingTask.sigBit) || (*signalMask &= mask)) - error = of_mutex_lock(mutex); + error = OFPlainMutexLock(mutex); else if (mask & (1ul << port.mp_SigBit)) error = ETIMEDOUT; else /* * This should not happen - it means something interrupted the @@ -235,11 +235,11 @@ return error; } int -of_condition_free(of_condition_t *condition) +OFPlainConditionFree(OFPlainCondition *condition) { Forbid(); @try { if (condition->waitingTasks != NULL) return EBUSY;