include/SDL_config_win32.h
author Sam Lantinga <slouken@libsdl.org>
Sun, 28 May 2006 13:04:16 +0000
branchSDL-1.3
changeset 1662 782fd950bd46
parent 1661 281d3f4870e5
child 1709 2047ec9bb665
permissions -rw-r--r--
Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API.

WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid.

The code is now run through a consistent indent format:
indent -i4 -nut -nsc -br -ce

The headers are being converted to automatically generate doxygen documentation.
     1 /*
     2     SDL - Simple DirectMedia Layer
     3     Copyright (C) 1997-2006 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 #ifndef _SDL_config_win32_h
    24 #define _SDL_config_win32_h
    25 
    26 #include "SDL_platform.h"
    27 
    28 /* This is a set of defines to configure the SDL features */
    29 
    30 #ifdef _MSC_VER
    31 typedef signed __int8 int8_t;
    32 typedef unsigned __int8 uint8_t;
    33 typedef signed __int16 int16_t;
    34 typedef unsigned __int16 uint16_t;
    35 typedef signed __int32 int32_t;
    36 typedef unsigned __int32 uint32_t;
    37 typedef signed __int64 int64_t;
    38 typedef unsigned __int64 uint64_t;
    39 #ifndef _UINTPTR_T_DEFINED
    40 #ifdef  _WIN64
    41 typedef unsigned __int64 uintptr_t;
    42 #else
    43 typedef unsigned int uintptr_t;
    44 #endif
    45 #define _UINTPTR_T_DEFINED
    46 #endif
    47 #else
    48 typedef signed char int8_t;
    49 typedef unsigned char uint8_t;
    50 typedef signed short int16_t;
    51 typedef unsigned short uint16_t;
    52 typedef signed int int32_t;
    53 typedef unsigned int uint32_t;
    54 typedef signed long long int64_t;
    55 typedef unsigned long long uint64_t;
    56 #ifndef _SIZE_T_DEFINED_
    57 #define _SIZE_T_DEFINED_
    58 typedef unsigned int size_t;
    59 #endif
    60 typedef unsigned int uintptr_t;
    61 #endif /* _MSC_VER */
    62 #define SDL_HAS_64BIT_TYPE	1
    63 
    64 /* Enabled for SDL 1.2 (binary compatibility) */
    65 #define HAVE_LIBC	1
    66 #ifdef HAVE_LIBC
    67 /* Useful headers */
    68 #define HAVE_STDIO_H 1
    69 #define STDC_HEADERS 1
    70 #define HAVE_STRING_H 1
    71 #define HAVE_CTYPE_H 1
    72 #define HAVE_MATH_H 1
    73 #ifndef _WIN32_WCE
    74 #define HAVE_SIGNAL_H 1
    75 #endif
    76 
    77 /* C library functions */
    78 #define HAVE_MALLOC 1
    79 #define HAVE_CALLOC 1
    80 #define HAVE_REALLOC 1
    81 #define HAVE_FREE 1
    82 #define HAVE_ALLOCA 1
    83 #define HAVE_QSORT 1
    84 #define HAVE_ABS 1
    85 #define HAVE_MEMSET 1
    86 #define HAVE_MEMCPY 1
    87 #define HAVE_MEMMOVE 1
    88 #define HAVE_MEMCMP 1
    89 #define HAVE_STRLEN 1
    90 #define HAVE__STRREV 1
    91 #define HAVE__STRUPR 1
    92 #define HAVE__STRLWR 1
    93 #define HAVE_STRCHR 1
    94 #define HAVE_STRRCHR 1
    95 #define HAVE_STRSTR 1
    96 #define HAVE_ITOA 1
    97 #define HAVE__LTOA 1
    98 #define HAVE__ULTOA 1
    99 #define HAVE_STRTOL 1
   100 #define HAVE_STRTOUL 1
   101 #define HAVE_STRTOLL 1
   102 #define HAVE_STRTOD 1
   103 #define HAVE_ATOI 1
   104 #define HAVE_ATOF 1
   105 #define HAVE_STRCMP 1
   106 #define HAVE_STRNCMP 1
   107 #define HAVE__STRICMP 1
   108 #define HAVE__STRNICMP 1
   109 #define HAVE_SSCANF 1
   110 #else
   111 #define HAVE_STDARG_H	1
   112 #define HAVE_STDDEF_H	1
   113 #endif
   114 
   115 /* Enable various audio drivers */
   116 #ifndef _WIN32_WCE
   117 #define SDL_AUDIO_DRIVER_DSOUND	1
   118 #endif
   119 #define SDL_AUDIO_DRIVER_WAVEOUT	1
   120 #define SDL_AUDIO_DRIVER_DISK	1
   121 #define SDL_AUDIO_DRIVER_DUMMY	1
   122 
   123 /* Enable various cdrom drivers */
   124 #ifdef _WIN32_WCE
   125 #define SDL_CDROM_DISABLED      1
   126 #else
   127 #define SDL_CDROM_WIN32		1
   128 #endif
   129 
   130 /* Enable various input drivers */
   131 #ifdef _WIN32_WCE
   132 #define SDL_JOYSTICK_DISABLED   1
   133 #else
   134 #define SDL_JOYSTICK_DINPUT	1
   135 #endif
   136 
   137 /* Enable various shared object loading systems */
   138 #define SDL_LOADSO_WIN32	1
   139 
   140 /* Enable various threading systems */
   141 #define SDL_THREAD_WIN32	1
   142 
   143 /* Enable various timer systems */
   144 #ifdef _WIN32_WCE
   145 #define SDL_TIMER_WINCE	1
   146 #else
   147 #define SDL_TIMER_WIN32	1
   148 #endif
   149 
   150 /* Enable various video drivers */
   151 #ifdef _WIN32_WCE
   152 #define SDL_VIDEO_DRIVER_GAPI	1
   153 #endif
   154 #ifndef _WIN32_WCE
   155 #define SDL_VIDEO_DRIVER_DDRAW	1
   156 #endif
   157 #define SDL_VIDEO_DRIVER_DUMMY	1
   158 #ifndef _WIN32_WCE
   159 #define SDL_VIDEO_DRIVER_GLSDL	1
   160 #endif
   161 #define SDL_VIDEO_DRIVER_WINDIB	1
   162 
   163 /* Enable OpenGL support */
   164 #ifndef _WIN32_WCE
   165 #define SDL_VIDEO_OPENGL	1
   166 #define SDL_VIDEO_OPENGL_WGL	1
   167 #endif
   168 
   169 /* Enable assembly routines (Win64 doesn't have inline asm) */
   170 #ifndef _WIN64
   171 #define SDL_ASSEMBLY_ROUTINES	1
   172 #endif
   173 
   174 #endif /* _SDL_config_win32_h */