diff options
Diffstat (limited to 'src/contrib/SDL-2.30.2/include/SDL.h')
-rw-r--r-- | src/contrib/SDL-2.30.2/include/SDL.h | 233 |
1 files changed, 233 insertions, 0 deletions
diff --git a/src/contrib/SDL-2.30.2/include/SDL.h b/src/contrib/SDL-2.30.2/include/SDL.h new file mode 100644 index 0000000..20c903b --- /dev/null +++ b/src/contrib/SDL-2.30.2/include/SDL.h | |||
@@ -0,0 +1,233 @@ | |||
1 | /* | ||
2 | Simple DirectMedia Layer | ||
3 | Copyright (C) 1997-2024 Sam Lantinga <slouken@libsdl.org> | ||
4 | |||
5 | This software is provided 'as-is', without any express or implied | ||
6 | warranty. In no event will the authors be held liable for any damages | ||
7 | arising from the use of this software. | ||
8 | |||
9 | Permission is granted to anyone to use this software for any purpose, | ||
10 | including commercial applications, and to alter it and redistribute it | ||
11 | freely, subject to the following restrictions: | ||
12 | |||
13 | 1. The origin of this software must not be misrepresented; you must not | ||
14 | claim that you wrote the original software. If you use this software | ||
15 | in a product, an acknowledgment in the product documentation would be | ||
16 | appreciated but is not required. | ||
17 | 2. Altered source versions must be plainly marked as such, and must not be | ||
18 | misrepresented as being the original software. | ||
19 | 3. This notice may not be removed or altered from any source distribution. | ||
20 | */ | ||
21 | |||
22 | /** | ||
23 | * \file SDL.h | ||
24 | * | ||
25 | * Main include header for the SDL library | ||
26 | */ | ||
27 | |||
28 | |||
29 | #ifndef SDL_h_ | ||
30 | #define SDL_h_ | ||
31 | |||
32 | #include "SDL_main.h" | ||
33 | #include "SDL_stdinc.h" | ||
34 | #include "SDL_assert.h" | ||
35 | #include "SDL_atomic.h" | ||
36 | #include "SDL_audio.h" | ||
37 | #include "SDL_clipboard.h" | ||
38 | #include "SDL_cpuinfo.h" | ||
39 | #include "SDL_endian.h" | ||
40 | #include "SDL_error.h" | ||
41 | #include "SDL_events.h" | ||
42 | #include "SDL_filesystem.h" | ||
43 | #include "SDL_gamecontroller.h" | ||
44 | #include "SDL_guid.h" | ||
45 | #include "SDL_haptic.h" | ||
46 | #include "SDL_hidapi.h" | ||
47 | #include "SDL_hints.h" | ||
48 | #include "SDL_joystick.h" | ||
49 | #include "SDL_loadso.h" | ||
50 | #include "SDL_log.h" | ||
51 | #include "SDL_messagebox.h" | ||
52 | #include "SDL_metal.h" | ||
53 | #include "SDL_mutex.h" | ||
54 | #include "SDL_power.h" | ||
55 | #include "SDL_render.h" | ||
56 | #include "SDL_rwops.h" | ||
57 | #include "SDL_sensor.h" | ||
58 | #include "SDL_shape.h" | ||
59 | #include "SDL_system.h" | ||
60 | #include "SDL_thread.h" | ||
61 | #include "SDL_timer.h" | ||
62 | #include "SDL_version.h" | ||
63 | #include "SDL_video.h" | ||
64 | #include "SDL_locale.h" | ||
65 | #include "SDL_misc.h" | ||
66 | |||
67 | #include "begin_code.h" | ||
68 | /* Set up for C function definitions, even when using C++ */ | ||
69 | #ifdef __cplusplus | ||
70 | extern "C" { | ||
71 | #endif | ||
72 | |||
73 | /* As of version 0.5, SDL is loaded dynamically into the application */ | ||
74 | |||
75 | /** | ||
76 | * \name SDL_INIT_* | ||
77 | * | ||
78 | * These are the flags which may be passed to SDL_Init(). You should | ||
79 | * specify the subsystems which you will be using in your application. | ||
80 | */ | ||
81 | /* @{ */ | ||
82 | #define SDL_INIT_TIMER 0x00000001u | ||
83 | #define SDL_INIT_AUDIO 0x00000010u | ||
84 | #define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */ | ||
85 | #define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */ | ||
86 | #define SDL_INIT_HAPTIC 0x00001000u | ||
87 | #define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */ | ||
88 | #define SDL_INIT_EVENTS 0x00004000u | ||
89 | #define SDL_INIT_SENSOR 0x00008000u | ||
90 | #define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */ | ||
91 | #define SDL_INIT_EVERYTHING ( \ | ||
92 | SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ | ||
93 | SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER | SDL_INIT_SENSOR \ | ||
94 | ) | ||
95 | /* @} */ | ||
96 | |||
97 | /** | ||
98 | * Initialize the SDL library. | ||
99 | * | ||
100 | * SDL_Init() simply forwards to calling SDL_InitSubSystem(). Therefore, the | ||
101 | * two may be used interchangeably. Though for readability of your code | ||
102 | * SDL_InitSubSystem() might be preferred. | ||
103 | * | ||
104 | * The file I/O (for example: SDL_RWFromFile) and threading (SDL_CreateThread) | ||
105 | * subsystems are initialized by default. Message boxes | ||
106 | * (SDL_ShowSimpleMessageBox) also attempt to work without initializing the | ||
107 | * video subsystem, in hopes of being useful in showing an error dialog when | ||
108 | * SDL_Init fails. You must specifically initialize other subsystems if you | ||
109 | * use them in your application. | ||
110 | * | ||
111 | * Logging (such as SDL_Log) works without initialization, too. | ||
112 | * | ||
113 | * `flags` may be any of the following OR'd together: | ||
114 | * | ||
115 | * - `SDL_INIT_TIMER`: timer subsystem | ||
116 | * - `SDL_INIT_AUDIO`: audio subsystem | ||
117 | * - `SDL_INIT_VIDEO`: video subsystem; automatically initializes the events | ||
118 | * subsystem | ||
119 | * - `SDL_INIT_JOYSTICK`: joystick subsystem; automatically initializes the | ||
120 | * events subsystem | ||
121 | * - `SDL_INIT_HAPTIC`: haptic (force feedback) subsystem | ||
122 | * - `SDL_INIT_GAMECONTROLLER`: controller subsystem; automatically | ||
123 | * initializes the joystick subsystem | ||
124 | * - `SDL_INIT_EVENTS`: events subsystem | ||
125 | * - `SDL_INIT_EVERYTHING`: all of the above subsystems | ||
126 | * - `SDL_INIT_NOPARACHUTE`: compatibility; this flag is ignored | ||
127 | * | ||
128 | * Subsystem initialization is ref-counted, you must call SDL_QuitSubSystem() | ||
129 | * for each SDL_InitSubSystem() to correctly shutdown a subsystem manually (or | ||
130 | * call SDL_Quit() to force shutdown). If a subsystem is already loaded then | ||
131 | * this call will increase the ref-count and return. | ||
132 | * | ||
133 | * \param flags subsystem initialization flags | ||
134 | * \returns 0 on success or a negative error code on failure; call | ||
135 | * SDL_GetError() for more information. | ||
136 | * | ||
137 | * \since This function is available since SDL 2.0.0. | ||
138 | * | ||
139 | * \sa SDL_InitSubSystem | ||
140 | * \sa SDL_Quit | ||
141 | * \sa SDL_SetMainReady | ||
142 | * \sa SDL_WasInit | ||
143 | */ | ||
144 | extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags); | ||
145 | |||
146 | /** | ||
147 | * Compatibility function to initialize the SDL library. | ||
148 | * | ||
149 | * In SDL2, this function and SDL_Init() are interchangeable. | ||
150 | * | ||
151 | * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. | ||
152 | * \returns 0 on success or a negative error code on failure; call | ||
153 | * SDL_GetError() for more information. | ||
154 | * | ||
155 | * \since This function is available since SDL 2.0.0. | ||
156 | * | ||
157 | * \sa SDL_Init | ||
158 | * \sa SDL_Quit | ||
159 | * \sa SDL_QuitSubSystem | ||
160 | */ | ||
161 | extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags); | ||
162 | |||
163 | /** | ||
164 | * Shut down specific SDL subsystems. | ||
165 | * | ||
166 | * If you start a subsystem using a call to that subsystem's init function | ||
167 | * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), | ||
168 | * SDL_QuitSubSystem() and SDL_WasInit() will not work. You will need to use | ||
169 | * that subsystem's quit function (SDL_VideoQuit()) directly instead. But | ||
170 | * generally, you should not be using those functions directly anyhow; use | ||
171 | * SDL_Init() instead. | ||
172 | * | ||
173 | * You still need to call SDL_Quit() even if you close all open subsystems | ||
174 | * with SDL_QuitSubSystem(). | ||
175 | * | ||
176 | * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. | ||
177 | * | ||
178 | * \since This function is available since SDL 2.0.0. | ||
179 | * | ||
180 | * \sa SDL_InitSubSystem | ||
181 | * \sa SDL_Quit | ||
182 | */ | ||
183 | extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags); | ||
184 | |||
185 | /** | ||
186 | * Get a mask of the specified subsystems which are currently initialized. | ||
187 | * | ||
188 | * \param flags any of the flags used by SDL_Init(); see SDL_Init for details. | ||
189 | * \returns a mask of all initialized subsystems if `flags` is 0, otherwise it | ||
190 | * returns the initialization status of the specified subsystems. | ||
191 | * | ||
192 | * The return value does not include SDL_INIT_NOPARACHUTE. | ||
193 | * | ||
194 | * \since This function is available since SDL 2.0.0. | ||
195 | * | ||
196 | * \sa SDL_Init | ||
197 | * \sa SDL_InitSubSystem | ||
198 | */ | ||
199 | extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags); | ||
200 | |||
201 | /** | ||
202 | * Clean up all initialized subsystems. | ||
203 | * | ||
204 | * You should call this function even if you have already shutdown each | ||
205 | * initialized subsystem with SDL_QuitSubSystem(). It is safe to call this | ||
206 | * function even in the case of errors in initialization. | ||
207 | * | ||
208 | * If you start a subsystem using a call to that subsystem's init function | ||
209 | * (for example SDL_VideoInit()) instead of SDL_Init() or SDL_InitSubSystem(), | ||
210 | * then you must use that subsystem's quit function (SDL_VideoQuit()) to shut | ||
211 | * it down before calling SDL_Quit(). But generally, you should not be using | ||
212 | * those functions directly anyhow; use SDL_Init() instead. | ||
213 | * | ||
214 | * You can use this function with atexit() to ensure that it is run when your | ||
215 | * application is shutdown, but it is not wise to do this from a library or | ||
216 | * other dynamically loaded code. | ||
217 | * | ||
218 | * \since This function is available since SDL 2.0.0. | ||
219 | * | ||
220 | * \sa SDL_Init | ||
221 | * \sa SDL_QuitSubSystem | ||
222 | */ | ||
223 | extern DECLSPEC void SDLCALL SDL_Quit(void); | ||
224 | |||
225 | /* Ends C function definitions when using C++ */ | ||
226 | #ifdef __cplusplus | ||
227 | } | ||
228 | #endif | ||
229 | #include "close_code.h" | ||
230 | |||
231 | #endif /* SDL_h_ */ | ||
232 | |||
233 | /* vi: set ts=4 sw=4 expandtab: */ | ||