Home | History | Annotate | Download | only in symbian

Lines Matching defs:sem

73     SDL_semaphore* sem = new /*(ELeave)*/ SDL_semaphore;  
74 sem->handle = s.Handle();
75 sem->count = initial_value;
76 return(sem);
80 void SDL_DestroySemaphore(SDL_sem *sem)
82 if ( sem )
85 sema.SetHandle(sem->handle);
86 while(--sem->count)
89 delete sem;
90 sem = NULL;
121 void _WaitAll(SDL_sem *sem)
126 sema.SetHandle(sem->handle);
128 while(sem->count < 0)
134 int SDL_SemWaitTimeout(SDL_sem *sem, Uint32 timeout)
136 if ( ! sem ) {
137 SDL_SetError("Passed a NULL sem");
143 _WaitAll(sem);
150 sema.SetHandle(sem->handle);
157 TInfo* info = new (ELeave)TInfo(timeout, sem->handle);
166 _WaitAll(sem);
179 int SDL_SemTryWait(SDL_sem *sem)
181 if(sem->count > 0)
183 sem->count--;
188 int SDL_SemWait(SDL_sem *sem)
190 return SDL_SemWaitTimeout(sem, SDL_MUTEX_MAXWAIT);
194 Uint32 SDL_SemValue(SDL_sem *sem)
196 if ( ! sem ) {
197 SDL_SetError("Passed a NULL sem");
200 return sem->count;
203 int SDL_SemPost(SDL_sem *sem)
205 if ( ! sem ) {
206 SDL_SetError("Passed a NULL sem");
209 sem->count++;
211 sema.SetHandle(sem->handle);