Mercurial > sdl-ios-xcode
diff src/thread/pth/SDL_syscond.c @ 1662:782fd950bd46 SDL-1.3
Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API.
WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid.
The code is now run through a consistent indent format:
indent -i4 -nut -nsc -br -ce
The headers are being converted to automatically generate doxygen documentation.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 28 May 2006 13:04:16 +0000 |
parents | d910939febfa |
children | 4da1ee79c9af |
line wrap: on
line diff
--- a/src/thread/pth/SDL_syscond.c Sun May 21 17:27:13 2006 +0000 +++ b/src/thread/pth/SDL_syscond.c Sun May 28 13:04:16 2006 +0000 @@ -34,69 +34,73 @@ struct SDL_cond { - pth_cond_t condpth_p; + pth_cond_t condpth_p; }; /* Create a condition variable */ -SDL_cond * SDL_CreateCond(void) +SDL_cond * +SDL_CreateCond (void) { - SDL_cond *cond; + SDL_cond *cond; - cond = (SDL_cond *) SDL_malloc(sizeof(SDL_cond)); - if ( cond ) { - if ( pth_cond_init(&(cond->condpth_p)) < 0 ) { - SDL_SetError("pthread_cond_init() failed"); - SDL_free(cond); - cond = NULL; - } - } else { - SDL_OutOfMemory(); - } - return(cond); + cond = (SDL_cond *) SDL_malloc (sizeof (SDL_cond)); + if (cond) { + if (pth_cond_init (&(cond->condpth_p)) < 0) { + SDL_SetError ("pthread_cond_init() failed"); + SDL_free (cond); + cond = NULL; + } + } else { + SDL_OutOfMemory (); + } + return (cond); } /* Destroy a condition variable */ -void SDL_DestroyCond(SDL_cond *cond) +void +SDL_DestroyCond (SDL_cond * cond) { - if ( cond ) { - SDL_free(cond); - } + if (cond) { + SDL_free (cond); + } } /* Restart one of the threads that are waiting on the condition variable */ -int SDL_CondSignal(SDL_cond *cond) +int +SDL_CondSignal (SDL_cond * cond) { - int retval; + int retval; - if ( ! cond ) { - SDL_SetError("Passed a NULL condition variable"); - return -1; - } + if (!cond) { + SDL_SetError ("Passed a NULL condition variable"); + return -1; + } - retval = 0; - if ( pth_cond_notify(&(cond->condpth_p), FALSE) != 0 ) { - SDL_SetError("pth_cond_notify() failed"); - retval = -1; - } - return retval; + retval = 0; + if (pth_cond_notify (&(cond->condpth_p), FALSE) != 0) { + SDL_SetError ("pth_cond_notify() failed"); + retval = -1; + } + return retval; } /* Restart all threads that are waiting on the condition variable */ -int SDL_CondBroadcast(SDL_cond *cond) +int +SDL_CondBroadcast (SDL_cond * cond) { - int retval; + int retval; - if ( ! cond ) { - SDL_SetError("Passed a NULL condition variable"); - return -1; - } + if (!cond) { + SDL_SetError ("Passed a NULL condition variable"); + return -1; + } - retval = 0; - if ( pth_cond_notify(&(cond->condpth_p), TRUE) != 0 ) { - SDL_SetError("pth_cond_notify() failed"); - retval = -1; - } - return retval; + retval = 0; + if (pth_cond_notify (&(cond->condpth_p), TRUE) != 0) { + SDL_SetError ("pth_cond_notify() failed"); + retval = -1; + } + return retval; } /* Wait on the condition variable for at most 'ms' milliseconds. @@ -119,46 +123,51 @@ ... SDL_UnlockMutex(lock); */ -int SDL_CondWaitTimeout(SDL_cond *cond, SDL_mutex *mutex, Uint32 ms) +int +SDL_CondWaitTimeout (SDL_cond * cond, SDL_mutex * mutex, Uint32 ms) { - int retval; - pth_event_t ev; - int sec; + int retval; + pth_event_t ev; + int sec; - if ( ! cond ) { - SDL_SetError("Passed a NULL condition variable"); - return -1; - } + if (!cond) { + SDL_SetError ("Passed a NULL condition variable"); + return -1; + } - retval = 0; + retval = 0; - sec = ms/1000; - ev = pth_event(PTH_EVENT_TIME, pth_timeout(sec,(ms-sec*1000)*1000)); + sec = ms / 1000; + ev = pth_event (PTH_EVENT_TIME, + pth_timeout (sec, (ms - sec * 1000) * 1000)); - if ( pth_cond_await(&(cond->condpth_p), &(mutex->mutexpth_p), ev) != 0 ) { - SDL_SetError("pth_cond_await() failed"); - retval = -1; - } + if (pth_cond_await (&(cond->condpth_p), &(mutex->mutexpth_p), ev) != 0) { + SDL_SetError ("pth_cond_await() failed"); + retval = -1; + } - pth_event_free(ev, PTH_FREE_ALL); + pth_event_free (ev, PTH_FREE_ALL); - return retval; + return retval; } /* Wait on the condition variable forever */ -int SDL_CondWait(SDL_cond *cond, SDL_mutex *mutex) +int +SDL_CondWait (SDL_cond * cond, SDL_mutex * mutex) { - int retval; + int retval; + + if (!cond) { + SDL_SetError ("Passed a NULL condition variable"); + return -1; + } - if ( ! cond ) { - SDL_SetError("Passed a NULL condition variable"); - return -1; - } + retval = 0; + if (pth_cond_await (&(cond->condpth_p), &(mutex->mutexpth_p), NULL) != 0) { + SDL_SetError ("pth_cond_await() failed"); + retval = -1; + } + return retval; +} - retval = 0; - if ( pth_cond_await(&(cond->condpth_p), &(mutex->mutexpth_p), NULL) != 0 ) { - SDL_SetError("pth_cond_await() failed"); - retval = -1; - } - return retval; -} +/* vi: set ts=4 sw=4 expandtab: */