home *** CD-ROM | disk | FTP | other *** search
/ GameStar Special 2004 August / GSSH0804.iso / Action / Parsec47 / Parsec47.exe / p47 / import / SDL_thread.d < prev    next >
Text File  |  2003-11-29  |  2KB  |  55 lines

  1. /*
  2.     SDL - Simple DirectMedia Layer
  3.     Copyright (C) 1997, 1998, 1999, 2000, 2001  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@devolution.com
  21. */
  22.  
  23. /* Header for the SDL thread management routines 
  24.  
  25.     These are independent of the other SDL routines.
  26. */
  27.  
  28. import SDL_types;
  29. import SDL_mutex;
  30.  
  31. extern(C):
  32.  
  33. /* The SDL thread structure, defined in SDL_thread.c */
  34. struct SDL_Thread { }
  35.  
  36. /* Create a thread */
  37. SDL_Thread * SDL_CreateThread(int (*fn)(void *), void *data);
  38.  
  39. /* Get the 32-bit thread identifier for the current thread */
  40. Uint32 SDL_ThreadID();
  41.  
  42. /* Get the 32-bit thread identifier for the specified thread,
  43.    equivalent to SDL_ThreadID() if the specified thread is NULL.
  44.  */
  45. Uint32 SDL_GetThreadID(SDL_Thread *thread);
  46.  
  47. /* Wait for a thread to finish.
  48.    The return code for the thread function is placed in the area
  49.    pointed to by 'status', if 'status' is not NULL.
  50.  */
  51. void SDL_WaitThread(SDL_Thread *thread, int *status);
  52.  
  53. /* Forcefully kill a thread without worrying about its state */
  54. void SDL_KillThread(SDL_Thread *thread);
  55.