1/* 2 SDL - Simple DirectMedia Layer 3 Copyright (C) 1997-2012 Sam Lantinga 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 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 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with this library; if not, write to the Free Software 17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 18 19 Sam Lantinga 20 slouken@libsdl.org 21*/ 22 23/** 24 * @file SDL_error.h 25 * Simple error message routines for SDL 26 */ 27 28#ifndef _SDL_error_h 29#define _SDL_error_h 30 31#include "SDL_stdinc.h" 32 33#include "begin_code.h" 34/* Set up for C function definitions, even when using C++ */ 35#ifdef __cplusplus 36extern "C" { 37#endif 38 39/** 40 * @name Public functions 41 */ 42/*@{*/ 43extern DECLSPEC void SDLCALL SDL_SetError(const char *fmt, ...); 44extern DECLSPEC char * SDLCALL SDL_GetError(void); 45extern DECLSPEC void SDLCALL SDL_ClearError(void); 46/*@}*/ 47 48/** 49 * @name Private functions 50 * @internal Private error message function - used internally 51 */ 52/*@{*/ 53#define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM) 54#define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED) 55typedef enum { 56 SDL_ENOMEM, 57 SDL_EFREAD, 58 SDL_EFWRITE, 59 SDL_EFSEEK, 60 SDL_UNSUPPORTED, 61 SDL_LASTERROR 62} SDL_errorcode; 63extern DECLSPEC void SDLCALL SDL_Error(SDL_errorcode code); 64/*@}*/ 65 66/* Ends C function definitions when using C++ */ 67#ifdef __cplusplus 68} 69#endif 70#include "close_code.h" 71 72#endif /* _SDL_error_h */ 73