|
|
1.1 ! root 1: /* ! 2: SDL - Simple DirectMedia Layer ! 3: Copyright (C) 1997-2004 Sam Lantinga ! 4: ! 5: This library is free software; you can redistribute it and/or ! 6: modify it under the terms of the GNU Library General Public ! 7: License as published by the Free Software Foundation; either ! 8: version 2 of the License, or (at your option) any later version. ! 9: ! 10: This library is distributed in the hope that it will be useful, ! 11: but WITHOUT ANY WARRANTY; without even the implied warranty of ! 12: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! 13: Library General Public License for more details. ! 14: ! 15: You should have received a copy of the GNU Library General Public ! 16: License along with this library; if not, write to the Free ! 17: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! 18: ! 19: Sam Lantinga ! 20: [email protected] ! 21: */ ! 22: ! 23: #ifdef SAVE_RCSID ! 24: static char rcsid = ! 25: "@(#) $Id: SDL_thread.h,v 1.1.1.1 2005/11/18 23:23:31 rswindell Exp $"; ! 26: #endif ! 27: ! 28: #ifndef _SDL_thread_h ! 29: #define _SDL_thread_h ! 30: ! 31: /* Header for the SDL thread management routines ! 32: ! 33: These are independent of the other SDL routines. ! 34: */ ! 35: ! 36: #include "SDL_main.h" ! 37: #include "SDL_types.h" ! 38: ! 39: /* Thread synchronization primitives */ ! 40: #include "SDL_mutex.h" ! 41: ! 42: #include "begin_code.h" ! 43: /* Set up for C function definitions, even when using C++ */ ! 44: #ifdef __cplusplus ! 45: extern "C" { ! 46: #endif ! 47: ! 48: /* The SDL thread structure, defined in SDL_thread.c */ ! 49: struct SDL_Thread; ! 50: typedef struct SDL_Thread SDL_Thread; ! 51: ! 52: /* Create a thread */ ! 53: extern DECLSPEC SDL_Thread * SDLCALL SDL_CreateThread(int (SDLCALL *fn)(void *), void *data); ! 54: ! 55: /* Get the 32-bit thread identifier for the current thread */ ! 56: extern DECLSPEC Uint32 SDLCALL SDL_ThreadID(void); ! 57: ! 58: /* Get the 32-bit thread identifier for the specified thread, ! 59: equivalent to SDL_ThreadID() if the specified thread is NULL. ! 60: */ ! 61: extern DECLSPEC Uint32 SDLCALL SDL_GetThreadID(SDL_Thread *thread); ! 62: ! 63: /* Wait for a thread to finish. ! 64: The return code for the thread function is placed in the area ! 65: pointed to by 'status', if 'status' is not NULL. ! 66: */ ! 67: extern DECLSPEC void SDLCALL SDL_WaitThread(SDL_Thread *thread, int *status); ! 68: ! 69: /* Forcefully kill a thread without worrying about its state */ ! 70: extern DECLSPEC void SDLCALL SDL_KillThread(SDL_Thread *thread); ! 71: ! 72: ! 73: /* Ends C function definitions when using C++ */ ! 74: #ifdef __cplusplus ! 75: } ! 76: #endif ! 77: #include "close_code.h" ! 78: ! 79: #endif /* _SDL_thread_h */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.