Home | History | Annotate | Download | only in beos

Lines Matching defs:sem

38 	SDL_sem *sem;
40 sem = (SDL_sem *)SDL_malloc(sizeof(*sem));
41 if ( sem ) {
42 sem->id = create_sem(initial_value, "SDL semaphore");
43 if ( sem->id < B_NO_ERROR ) {
45 SDL_free(sem);
46 sem = NULL;
51 return(sem);
55 void SDL_DestroySemaphore(SDL_sem *sem)
57 if ( sem ) {
58 if ( sem->id >= B_NO_ERROR ) {
59 delete_sem(sem->id);
61 SDL_free(sem);
65 int SDL_SemWaitTimeout(SDL_sem *sem, Uint32 timeout)
70 if ( ! sem ) {
77 val = acquire_sem(sem->id);
80 val = acquire_sem_etc(sem->id, 1, B_RELATIVE_TIMEOUT, timeout);
103 int SDL_SemTryWait(SDL_sem *sem)
105 return SDL_SemWaitTimeout(sem, 0);
108 int SDL_SemWait(SDL_sem *sem)
110 return SDL_SemWaitTimeout(sem, SDL_MUTEX_MAXWAIT);
114 Uint32 SDL_SemValue(SDL_sem *sem)
120 if ( sem ) {
121 get_sem_count(sem->id, &count);
130 int SDL_SemPost(SDL_sem *sem)
132 if ( ! sem ) {
137 if ( release_sem(sem->id) != B_NO_ERROR ) {