Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4973 right-hear 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
    slouken@libsdl.org
21
*/
22
 
23
#ifdef SAVE_RCSID
24
static char rcsid =
25
 "@(#) $Id: SDL_thread.h,v 1.6 2004/01/04 16:49:08 slouken 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 (*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 */