Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

  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. #ifdef SAVE_RCSID
  24. static char rcsid =
  25.  "@(#) $Id: SDL_error_c.h,v 1.2 2001/04/26 16:50:17 hercules Exp $";
  26. #endif
  27.  
  28. /* This file defines a structure that carries language-independent
  29.    error messages
  30. */
  31.  
  32. #ifndef _SDL_error_c_h
  33. #define _SDL_error_c_h
  34.  
  35. #define ERR_MAX_STRLEN  128
  36. #define ERR_MAX_ARGS    5
  37.  
  38. typedef struct {
  39.         /* This is a numeric value corresponding to the current error */
  40.         int error;
  41.  
  42.         /* This is a key used to index into a language hashtable containing
  43.            internationalized versions of the SDL error messages.  If the key
  44.            is not in the hashtable, or no hashtable is available, the key is
  45.            used directly as an error message format string.
  46.         */
  47.         unsigned char key[ERR_MAX_STRLEN];
  48.  
  49.         /* These are the arguments for the error functions */
  50.         int argc;
  51.         union {
  52.                 void *value_ptr;
  53. #if 0   /* What is a character anyway?  (UNICODE issues) */
  54.                 unsigned char value_c;
  55. #endif
  56.                 int value_i;
  57.                 double value_f;
  58.                 unsigned char buf[ERR_MAX_STRLEN];
  59.         } args[ERR_MAX_ARGS];
  60. } SDL_error;
  61.  
  62. #endif /* _SDL_error_c_h */
  63.