Merge branch 'master' into sim-target-tree
[kugel-rb.git] / uisimulator / sdl / thread-sdl.h
blobf221aa5a727615f13efddd44a146a6deda583a44
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2006 Dan Everton
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #ifndef __THREADSDL_H__
23 #define __THREADSDL_H__
25 #include "SDL_thread.h"
27 extern SDL_Thread *gui_thread; /* The "main" thread */
28 void thread_sdl_thread_lock(void *me);
29 void * thread_sdl_thread_unlock(void);
30 void thread_sdl_exception_wait(void);
31 bool thread_sdl_init(void *param); /* Init the sim threading API - thread created calls app_main */
32 void thread_sdl_shutdown(void); /* Shut down all kernel threads gracefully */
33 void thread_sdl_lock(void); /* Sync with SDL threads */
34 void thread_sdl_unlock(void); /* Sync with SDL threads */
36 #endif /* #ifndef __THREADSDL_H__ */