|
|
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.