Lines Matching refs:sem

41     sem_t sem;  member
48 SDL_sem *sem = (SDL_sem *) SDL_malloc(sizeof(SDL_sem)); in SDL_CreateSemaphore() local
49 if (sem) { in SDL_CreateSemaphore()
50 if (sem_init(&sem->sem, 0, initial_value) < 0) { in SDL_CreateSemaphore()
52 SDL_free(sem); in SDL_CreateSemaphore()
53 sem = NULL; in SDL_CreateSemaphore()
58 return sem; in SDL_CreateSemaphore()
62 SDL_DestroySemaphore(SDL_sem * sem) in SDL_DestroySemaphore() argument
64 if (sem) { in SDL_DestroySemaphore()
65 sem_destroy(&sem->sem); in SDL_DestroySemaphore()
66 SDL_free(sem); in SDL_DestroySemaphore()
71 SDL_SemTryWait(SDL_sem * sem) in SDL_SemTryWait() argument
75 if (!sem) { in SDL_SemTryWait()
79 if (sem_trywait(&sem->sem) == 0) { in SDL_SemTryWait()
86 SDL_SemWait(SDL_sem * sem) in SDL_SemWait() argument
90 if (!sem) { in SDL_SemWait()
95 retval = sem_wait(&sem->sem); in SDL_SemWait()
105 SDL_SemWaitTimeout(SDL_sem * sem, Uint32 timeout) in SDL_SemWaitTimeout() argument
117 if (!sem) { in SDL_SemWaitTimeout()
123 return SDL_SemTryWait(sem); in SDL_SemWaitTimeout()
126 return SDL_SemWait(sem); in SDL_SemWaitTimeout()
156 retval = sem_timedwait(&sem->sem, &ts_timeout); in SDL_SemWaitTimeout()
168 while ((retval = SDL_SemTryWait(sem)) == SDL_MUTEX_TIMEDOUT) { in SDL_SemWaitTimeout()
180 SDL_SemValue(SDL_sem * sem) in SDL_SemValue() argument
183 if (sem) { in SDL_SemValue()
184 sem_getvalue(&sem->sem, &ret); in SDL_SemValue()
193 SDL_SemPost(SDL_sem * sem) in SDL_SemPost() argument
197 if (!sem) { in SDL_SemPost()
201 retval = sem_post(&sem->sem); in SDL_SemPost()