ruby2d 0.11.2 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/assets/include/GLES2/gl2.h +656 -0
- data/assets/include/GLES2/gl2ext.h +3949 -0
- data/assets/include/GLES2/gl2ext_angle.h +701 -0
- data/assets/include/GLES2/gl2platform.h +27 -0
- data/assets/include/GLES3/gl3.h +1192 -0
- data/assets/include/GLES3/gl31.h +1507 -0
- data/assets/include/GLES3/gl32.h +1808 -0
- data/assets/include/GLES3/gl3platform.h +27 -0
- data/assets/include/KHR/khrplatform.h +290 -0
- data/assets/include/SDL2/SDL.h +1 -0
- data/assets/include/SDL2/SDL_assert.h +4 -2
- data/assets/include/SDL2/SDL_atomic.h +20 -0
- data/assets/include/SDL2/SDL_audio.h +40 -4
- data/assets/include/SDL2/SDL_blendmode.h +4 -6
- data/assets/include/SDL2/SDL_clipboard.h +47 -0
- data/assets/include/SDL2/SDL_config.h +6 -2
- data/assets/include/SDL2/SDL_config_android.h +2 -0
- data/assets/include/SDL2/SDL_config_emscripten.h +2 -0
- data/assets/include/SDL2/SDL_config_iphoneos.h +3 -1
- data/assets/include/SDL2/SDL_config_macosx.h +3 -6
- data/assets/include/SDL2/SDL_config_minimal.h +18 -11
- data/assets/include/SDL2/SDL_config_ngage.h +89 -0
- data/assets/include/SDL2/SDL_config_os2.h +5 -3
- data/assets/include/SDL2/SDL_config_pandora.h +1 -0
- data/assets/include/SDL2/SDL_config_windows.h +71 -45
- data/assets/include/SDL2/SDL_config_wingdk.h +253 -0
- data/assets/include/SDL2/SDL_config_winrt.h +11 -49
- data/assets/include/SDL2/SDL_config_xbox.h +235 -0
- data/assets/include/SDL2/SDL_cpuinfo.h +39 -4
- data/assets/include/SDL2/SDL_egl.h +59 -9
- data/assets/include/SDL2/SDL_endian.h +34 -3
- data/assets/include/SDL2/SDL_events.h +32 -1
- data/assets/include/SDL2/SDL_filesystem.h +5 -1
- data/assets/include/SDL2/SDL_gamecontroller.h +78 -5
- data/assets/include/SDL2/SDL_guid.h +100 -0
- data/assets/include/SDL2/SDL_hints.h +645 -43
- data/assets/include/SDL2/SDL_image.h +2045 -33
- data/assets/include/SDL2/SDL_joystick.h +127 -7
- data/assets/include/SDL2/SDL_keyboard.h +38 -1
- data/assets/include/SDL2/SDL_keycode.h +6 -1
- data/assets/include/SDL2/SDL_log.h +2 -2
- data/assets/include/SDL2/SDL_main.h +42 -2
- data/assets/include/SDL2/SDL_metal.h +2 -1
- data/assets/include/SDL2/SDL_mixer.h +2529 -396
- data/assets/include/SDL2/SDL_mouse.h +12 -1
- data/assets/include/SDL2/SDL_opengl.h +0 -51
- data/assets/include/SDL2/SDL_opengl_glext.h +2260 -231
- data/assets/include/SDL2/SDL_opengles2_gl2.h +374 -339
- data/assets/include/SDL2/SDL_opengles2_gl2ext.h +3479 -1496
- data/assets/include/SDL2/SDL_opengles2_gl2platform.h +6 -9
- data/assets/include/SDL2/SDL_opengles2_khrplatform.h +43 -14
- data/assets/include/SDL2/SDL_platform.h +32 -6
- data/assets/include/SDL2/SDL_rect.h +154 -2
- data/assets/include/SDL2/SDL_render.h +46 -17
- data/assets/include/SDL2/SDL_revision.h +4 -0
- data/assets/include/SDL2/SDL_rwops.h +1 -15
- data/assets/include/SDL2/SDL_scancode.h +46 -21
- data/assets/include/SDL2/SDL_sensor.h +24 -3
- data/assets/include/SDL2/SDL_stdinc.h +119 -8
- data/assets/include/SDL2/SDL_surface.h +3 -1
- data/assets/include/SDL2/SDL_system.h +66 -6
- data/assets/include/SDL2/SDL_syswm.h +2 -0
- data/assets/include/SDL2/SDL_test_common.h +1 -0
- data/assets/include/SDL2/SDL_test_font.h +90 -3
- data/assets/include/SDL2/SDL_thread.h +3 -3
- data/assets/include/SDL2/SDL_touch.h +8 -0
- data/assets/include/SDL2/SDL_ttf.h +2084 -155
- data/assets/include/SDL2/SDL_version.h +19 -3
- data/assets/include/SDL2/SDL_video.h +71 -9
- data/assets/include/SDL2/begin_code.h +4 -4
- data/assets/include/mrbconf.h +15 -17
- data/assets/include/mruby/array.h +8 -21
- data/assets/include/mruby/boxing_nan.h +115 -86
- data/assets/include/mruby/boxing_word.h +104 -78
- data/assets/include/mruby/common.h +6 -0
- data/assets/include/mruby/compile.h +3 -4
- data/assets/include/mruby/debug.h +4 -2
- data/assets/include/mruby/dump.h +5 -2
- data/assets/include/mruby/error.h +12 -2
- data/assets/include/mruby/gc.h +2 -0
- data/assets/include/mruby/hash.h +1 -3
- data/assets/include/mruby/irep.h +4 -4
- data/assets/include/mruby/numeric.h +21 -13
- data/assets/include/mruby/opcode.h +30 -0
- data/assets/include/mruby/ops.h +99 -101
- data/assets/include/mruby/presym/scanning.h +15 -9
- data/assets/include/mruby/proc.h +4 -2
- data/assets/include/mruby/string.h +3 -24
- data/assets/include/mruby/value.h +80 -40
- data/assets/include/mruby/variable.h +0 -15
- data/assets/include/mruby/version.h +5 -5
- data/assets/include/mruby.h +86 -16
- data/assets/macos/universal/bin/mrbc +0 -0
- data/assets/macos/universal/lib/libFLAC.a +0 -0
- data/assets/macos/universal/lib/libSDL2.a +0 -0
- data/assets/macos/universal/lib/libSDL2_image.a +0 -0
- data/assets/macos/universal/lib/libSDL2_mixer.a +0 -0
- data/assets/macos/universal/lib/libSDL2_ttf.a +0 -0
- data/assets/macos/universal/lib/libavif.a +0 -0
- data/assets/macos/universal/lib/libbrotlicommon-static.a +0 -0
- data/assets/macos/universal/lib/libbrotlidec-static.a +0 -0
- data/assets/macos/universal/lib/libfreetype.a +0 -0
- data/assets/macos/universal/lib/libgraphite2.a +0 -0
- data/assets/macos/universal/lib/libharfbuzz.a +0 -0
- data/assets/macos/universal/lib/libhwy.a +0 -0
- data/assets/macos/universal/lib/libjpeg.a +0 -0
- data/assets/macos/universal/lib/libjxl.a +0 -0
- data/assets/macos/universal/lib/libmodplug.a +0 -0
- data/assets/macos/universal/lib/libmpg123.a +0 -0
- data/assets/macos/universal/lib/libmruby.a +0 -0
- data/assets/macos/universal/lib/libogg.a +0 -0
- data/assets/macos/universal/lib/libpng.a +0 -0
- data/assets/macos/universal/lib/libtiff.a +0 -0
- data/assets/macos/universal/lib/libvorbis.a +0 -0
- data/assets/macos/universal/lib/libvorbisfile.a +0 -0
- data/assets/macos/universal/lib/libwebp.a +0 -0
- data/assets/macos/universal/lib/libzstd.a +0 -0
- data/assets/wasm/libmruby.a +0 -0
- data/assets/wasm/template.html +52 -4
- data/assets/windows/mingw-w64-ucrt-x86_64/bin/mrbc.exe +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libFLAC.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libLerc.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_image.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_mixer.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libSDL2_ttf.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlicommon.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbrotlidec.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libbz2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libdeflate.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libfreetype.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libglew32.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libgraphite2.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libharfbuzz.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libhwy.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjbig.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjpeg.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libjxl.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/liblzma.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmodplug.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmpg123.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libmruby.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libogg.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopus.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libopusfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libpng.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libsndfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libssp.a +1 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libstdc++.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libtiff.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbis.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libvorbisfile.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libwebp.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libz.a +0 -0
- data/assets/windows/mingw-w64-ucrt-x86_64/lib/libzstd.a +0 -0
- data/assets/windows/mingw-w64-x86_64/bin/mrbc.exe +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libFLAC.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libLerc.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_image.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_mixer.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libSDL2_ttf.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libbrotlicommon.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libbrotlidec.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libdeflate.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libfreetype.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libglew32.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libharfbuzz.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libhwy.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libjpeg.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libjxl.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/liblzma.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libmpg123.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libmruby.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libopus.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libpng.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libsndfile.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libssp.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libstdc++.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libtiff.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libwebp.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libz.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libzstd.a +0 -0
- data/ext/ruby2d/canvas.c +540 -0
- data/ext/ruby2d/extconf.rb +39 -21
- data/ext/ruby2d/gl.c +3 -3
- data/ext/ruby2d/image.c +7 -7
- data/ext/ruby2d/ruby2d.c +741 -24
- data/ext/ruby2d/ruby2d.h +66 -3
- data/ext/ruby2d/sound.c +16 -2
- data/lib/ruby2d/canvas.rb +315 -0
- data/lib/ruby2d/circle.rb +30 -15
- data/lib/ruby2d/cli/build.rb +11 -4
- data/lib/ruby2d/cli/enable_console.rb +3 -1
- data/lib/ruby2d/color.rb +133 -77
- data/lib/ruby2d/core.rb +32 -0
- data/lib/ruby2d/dsl.rb +38 -32
- data/lib/ruby2d/exceptions.rb +2 -1
- data/lib/ruby2d/font.rb +97 -62
- data/lib/ruby2d/image.rb +48 -27
- data/lib/ruby2d/line.rb +84 -45
- data/lib/ruby2d/music.rb +33 -23
- data/lib/ruby2d/pixel.rb +10 -9
- data/lib/ruby2d/pixmap.rb +39 -0
- data/lib/ruby2d/pixmap_atlas.rb +56 -0
- data/lib/ruby2d/quad.rb +98 -49
- data/lib/ruby2d/rectangle.rb +35 -36
- data/lib/ruby2d/renderable.rb +7 -6
- data/lib/ruby2d/sound.rb +23 -17
- data/lib/ruby2d/sprite.rb +181 -140
- data/lib/ruby2d/square.rb +21 -20
- data/lib/ruby2d/text.rb +47 -19
- data/lib/ruby2d/texture.rb +13 -3
- data/lib/ruby2d/tileset.rb +97 -44
- data/lib/ruby2d/triangle.rb +91 -42
- data/lib/ruby2d/version.rb +3 -1
- data/lib/ruby2d/vertices.rb +81 -45
- data/lib/ruby2d/window.rb +508 -371
- data/lib/ruby2d.rb +11 -29
- metadata +84 -16
- data/assets/include/SDL2/SDL_config_psp.h +0 -165
- data/assets/include/SDL2/SDL_config_wiz.h +0 -154
- data/assets/include/glew.h +0 -23686
- data/assets/macos/universal/lib/libpng16.a +0 -0
- data/assets/wasm/build_config.rb +0 -13
- data/assets/windows/glew/README.md +0 -10
- data/assets/windows/glew/glew.h +0 -23686
- data/assets/windows/glew/libglew32.a +0 -0
- data/assets/windows/mingw-w64-x86_64/lib/libpng16.a +0 -0
- data/lib/ruby2d/entity.rb +0 -17
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
#ifndef __gl2platform_h_
|
|
2
2
|
#define __gl2platform_h_
|
|
3
3
|
|
|
4
|
-
/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
|
|
5
|
-
|
|
6
4
|
/*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
** Copyright 2017-2020 The Khronos Group Inc.
|
|
6
|
+
** SPDX-License-Identifier: Apache-2.0
|
|
7
|
+
*/
|
|
10
8
|
|
|
11
9
|
/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h
|
|
12
10
|
*
|
|
13
11
|
* Adopters may modify khrplatform.h and this file to suit their platform.
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* by filing a bug against product "OpenGL-ES" component "Registry".
|
|
12
|
+
* Please contribute modifications back to Khronos as pull requests on the
|
|
13
|
+
* public github repository:
|
|
14
|
+
* https://github.com/KhronosGroup/OpenGL-Registry
|
|
18
15
|
*/
|
|
19
16
|
|
|
20
17
|
/*#include <KHR/khrplatform.h>*/
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
#define __khrplatform_h_
|
|
3
3
|
|
|
4
4
|
/*
|
|
5
|
-
** Copyright (c) 2008-
|
|
5
|
+
** Copyright (c) 2008-2018 The Khronos Group Inc.
|
|
6
6
|
**
|
|
7
7
|
** Permission is hereby granted, free of charge, to any person obtaining a
|
|
8
8
|
** copy of this software and/or associated documentation files (the
|
|
@@ -26,18 +26,16 @@
|
|
|
26
26
|
|
|
27
27
|
/* Khronos platform-specific types and definitions.
|
|
28
28
|
*
|
|
29
|
-
*
|
|
29
|
+
* The master copy of khrplatform.h is maintained in the Khronos EGL
|
|
30
|
+
* Registry repository at https://github.com/KhronosGroup/EGL-Registry
|
|
31
|
+
* The last semantic modification to khrplatform.h was at commit ID:
|
|
32
|
+
* 67a3e0864c2d75ea5287b9f3d2eb74a745936692
|
|
30
33
|
*
|
|
31
34
|
* Adopters may modify this file to suit their platform. Adopters are
|
|
32
35
|
* encouraged to submit platform specific modifications to the Khronos
|
|
33
36
|
* group so that they can be included in future versions of this file.
|
|
34
|
-
* Please submit changes by
|
|
35
|
-
*
|
|
36
|
-
* "Khronos (general)" component "Registry".
|
|
37
|
-
*
|
|
38
|
-
* A predefined template which fills in some of the bug fields can be
|
|
39
|
-
* reached using http://tinyurl.com/khrplatform-h-bugreport, but you
|
|
40
|
-
* must create a Bugzilla login first.
|
|
37
|
+
* Please submit changes by filing pull requests or issues on
|
|
38
|
+
* the EGL Registry repository linked above.
|
|
41
39
|
*
|
|
42
40
|
*
|
|
43
41
|
* See the Implementer's Guidelines for information about where this file
|
|
@@ -92,15 +90,25 @@
|
|
|
92
90
|
* int arg2) KHRONOS_APIATTRIBUTES;
|
|
93
91
|
*/
|
|
94
92
|
|
|
93
|
+
#if defined(__SCITECH_SNAP__) && !defined(KHRONOS_STATIC)
|
|
94
|
+
# define KHRONOS_STATIC 1
|
|
95
|
+
#endif
|
|
96
|
+
|
|
95
97
|
/*-------------------------------------------------------------------------
|
|
96
98
|
* Definition of KHRONOS_APICALL
|
|
97
99
|
*-------------------------------------------------------------------------
|
|
98
100
|
* This precedes the return type of the function in the function prototype.
|
|
99
101
|
*/
|
|
100
|
-
#if defined(
|
|
102
|
+
#if defined(KHRONOS_STATIC)
|
|
103
|
+
/* If the preprocessor constant KHRONOS_STATIC is defined, make the
|
|
104
|
+
* header compatible with static linking. */
|
|
105
|
+
# define KHRONOS_APICALL
|
|
106
|
+
#elif defined(_WIN32)
|
|
101
107
|
# define KHRONOS_APICALL __declspec(dllimport)
|
|
102
108
|
#elif defined (__SYMBIAN32__)
|
|
103
109
|
# define KHRONOS_APICALL IMPORT_C
|
|
110
|
+
#elif defined(__ANDROID__)
|
|
111
|
+
# define KHRONOS_APICALL __attribute__((visibility("default")))
|
|
104
112
|
#else
|
|
105
113
|
# define KHRONOS_APICALL
|
|
106
114
|
#endif
|
|
@@ -145,6 +153,20 @@ typedef int64_t khronos_int64_t;
|
|
|
145
153
|
typedef uint64_t khronos_uint64_t;
|
|
146
154
|
#define KHRONOS_SUPPORT_INT64 1
|
|
147
155
|
#define KHRONOS_SUPPORT_FLOAT 1
|
|
156
|
+
/*
|
|
157
|
+
* To support platform where unsigned long cannot be used interchangeably with
|
|
158
|
+
* inptr_t (e.g. CHERI-extended ISAs), we can use the stdint.h intptr_t.
|
|
159
|
+
* Ideally, we could just use (u)intptr_t everywhere, but this could result in
|
|
160
|
+
* ABI breakage if khronos_uintptr_t is changed from unsigned long to
|
|
161
|
+
* unsigned long long or similar (this results in different C++ name mangling).
|
|
162
|
+
* To avoid changes for existing platforms, we restrict usage of intptr_t to
|
|
163
|
+
* platforms where the size of a pointer is larger than the size of long.
|
|
164
|
+
*/
|
|
165
|
+
#if defined(__SIZEOF_LONG__) && defined(__SIZEOF_POINTER__)
|
|
166
|
+
#if __SIZEOF_POINTER__ > __SIZEOF_LONG__
|
|
167
|
+
#define KHRONOS_USE_INTPTR_T
|
|
168
|
+
#endif
|
|
169
|
+
#endif
|
|
148
170
|
|
|
149
171
|
#elif defined(__VMS ) || defined(__sgi)
|
|
150
172
|
|
|
@@ -223,18 +245,25 @@ typedef signed short int khronos_int16_t;
|
|
|
223
245
|
typedef unsigned short int khronos_uint16_t;
|
|
224
246
|
|
|
225
247
|
/*
|
|
226
|
-
* Types that differ between LLP64 and LP64 architectures - in LLP64,
|
|
248
|
+
* Types that differ between LLP64 and LP64 architectures - in LLP64,
|
|
227
249
|
* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
|
|
228
250
|
* to be the only LLP64 architecture in current use.
|
|
229
251
|
*/
|
|
230
|
-
#ifdef
|
|
252
|
+
#ifdef KHRONOS_USE_INTPTR_T
|
|
253
|
+
typedef intptr_t khronos_intptr_t;
|
|
254
|
+
typedef uintptr_t khronos_uintptr_t;
|
|
255
|
+
#elif defined(_WIN64)
|
|
231
256
|
typedef signed long long int khronos_intptr_t;
|
|
232
257
|
typedef unsigned long long int khronos_uintptr_t;
|
|
233
|
-
typedef signed long long int khronos_ssize_t;
|
|
234
|
-
typedef unsigned long long int khronos_usize_t;
|
|
235
258
|
#else
|
|
236
259
|
typedef signed long int khronos_intptr_t;
|
|
237
260
|
typedef unsigned long int khronos_uintptr_t;
|
|
261
|
+
#endif
|
|
262
|
+
|
|
263
|
+
#if defined(_WIN64)
|
|
264
|
+
typedef signed long long int khronos_ssize_t;
|
|
265
|
+
typedef unsigned long long int khronos_usize_t;
|
|
266
|
+
#else
|
|
238
267
|
typedef signed long int khronos_ssize_t;
|
|
239
268
|
typedef unsigned long int khronos_usize_t;
|
|
240
269
|
#endif
|
|
@@ -65,11 +65,15 @@
|
|
|
65
65
|
#undef __LINUX__ /* do we need to do this? */
|
|
66
66
|
#define __ANDROID__ 1
|
|
67
67
|
#endif
|
|
68
|
+
#if defined(__NGAGE__)
|
|
69
|
+
#undef __NGAGE__
|
|
70
|
+
#define __NGAGE__ 1
|
|
71
|
+
#endif
|
|
68
72
|
|
|
69
73
|
#if defined(__APPLE__)
|
|
70
74
|
/* lets us know what version of Mac OS X we're compiling on */
|
|
71
|
-
#include
|
|
72
|
-
#include
|
|
75
|
+
#include <AvailabilityMacros.h>
|
|
76
|
+
#include <TargetConditionals.h>
|
|
73
77
|
|
|
74
78
|
/* Fix building with older SDKs that don't define these
|
|
75
79
|
See this for more information:
|
|
@@ -104,9 +108,9 @@
|
|
|
104
108
|
/* if not compiling for iOS */
|
|
105
109
|
#undef __MACOSX__
|
|
106
110
|
#define __MACOSX__ 1
|
|
107
|
-
#if MAC_OS_X_VERSION_MIN_REQUIRED <
|
|
108
|
-
# error SDL for Mac OS X only supports deploying on 10.
|
|
109
|
-
#endif /* MAC_OS_X_VERSION_MIN_REQUIRED <
|
|
111
|
+
#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
|
|
112
|
+
# error SDL for Mac OS X only supports deploying on 10.7 and above.
|
|
113
|
+
#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1070 */
|
|
110
114
|
#endif /* TARGET_OS_IPHONE */
|
|
111
115
|
#endif /* defined(__APPLE__) */
|
|
112
116
|
|
|
@@ -140,7 +144,7 @@
|
|
|
140
144
|
#endif
|
|
141
145
|
|
|
142
146
|
#if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__)
|
|
143
|
-
/* Try to find out if we're compiling for WinRT or non-WinRT */
|
|
147
|
+
/* Try to find out if we're compiling for WinRT, GDK or non-WinRT/GDK */
|
|
144
148
|
#if defined(_MSC_VER) && defined(__has_include)
|
|
145
149
|
#if __has_include(<winapifamily.h>)
|
|
146
150
|
#define HAVE_WINAPIFAMILY_H 1
|
|
@@ -165,6 +169,15 @@
|
|
|
165
169
|
#if WINAPI_FAMILY_WINRT
|
|
166
170
|
#undef __WINRT__
|
|
167
171
|
#define __WINRT__ 1
|
|
172
|
+
#elif defined(_GAMING_DESKTOP) /* GDK project configuration always defines _GAMING_XXX */
|
|
173
|
+
#undef __WINGDK__
|
|
174
|
+
#define __WINGDK__ 1
|
|
175
|
+
#elif defined(_GAMING_XBOX_XBOXONE)
|
|
176
|
+
#undef __XBOXONE__
|
|
177
|
+
#define __XBOXONE__ 1
|
|
178
|
+
#elif defined(_GAMING_XBOX_SCARLETT)
|
|
179
|
+
#undef __XBOXSERIES__
|
|
180
|
+
#define __XBOXSERIES__ 1
|
|
168
181
|
#else
|
|
169
182
|
#undef __WINDOWS__
|
|
170
183
|
#define __WINDOWS__ 1
|
|
@@ -175,10 +188,18 @@
|
|
|
175
188
|
#undef __WIN32__
|
|
176
189
|
#define __WIN32__ 1
|
|
177
190
|
#endif
|
|
191
|
+
/* This is to support generic "any GDK" separate from a platform-specific GDK */
|
|
192
|
+
#if defined(__WINGDK__) || defined(__XBOXONE__) || defined(__XBOXSERIES__)
|
|
193
|
+
#undef __GDK__
|
|
194
|
+
#define __GDK__ 1
|
|
195
|
+
#endif
|
|
178
196
|
#if defined(__PSP__)
|
|
179
197
|
#undef __PSP__
|
|
180
198
|
#define __PSP__ 1
|
|
181
199
|
#endif
|
|
200
|
+
#if defined(PS2)
|
|
201
|
+
#define __PS2__ 1
|
|
202
|
+
#endif
|
|
182
203
|
|
|
183
204
|
/* The NACL compiler defines __native_client__ and __pnacl__
|
|
184
205
|
* Ref: http://www.chromium.org/nativeclient/pnacl/stability-of-the-pnacl-bitcode-abi
|
|
@@ -200,6 +221,11 @@
|
|
|
200
221
|
#define __VITA__ 1
|
|
201
222
|
#endif
|
|
202
223
|
|
|
224
|
+
#if defined(__3DS__)
|
|
225
|
+
#undef __3DS__
|
|
226
|
+
#define __3DS__ 1
|
|
227
|
+
#endif
|
|
228
|
+
|
|
203
229
|
#include "begin_code.h"
|
|
204
230
|
/* Set up for C function definitions, even when using C++ */
|
|
205
231
|
#ifdef __cplusplus
|
|
@@ -54,8 +54,8 @@ typedef struct SDL_Point
|
|
|
54
54
|
/**
|
|
55
55
|
* The structure that defines a point (floating point)
|
|
56
56
|
*
|
|
57
|
-
* \sa
|
|
58
|
-
* \sa
|
|
57
|
+
* \sa SDL_EncloseFPoints
|
|
58
|
+
* \sa SDL_PointInFRect
|
|
59
59
|
*/
|
|
60
60
|
typedef struct SDL_FPoint
|
|
61
61
|
{
|
|
@@ -71,6 +71,7 @@ typedef struct SDL_FPoint
|
|
|
71
71
|
* \sa SDL_RectEquals
|
|
72
72
|
* \sa SDL_HasIntersection
|
|
73
73
|
* \sa SDL_IntersectRect
|
|
74
|
+
* \sa SDL_IntersectRectAndLine
|
|
74
75
|
* \sa SDL_UnionRect
|
|
75
76
|
* \sa SDL_EnclosePoints
|
|
76
77
|
*/
|
|
@@ -83,6 +84,16 @@ typedef struct SDL_Rect
|
|
|
83
84
|
|
|
84
85
|
/**
|
|
85
86
|
* A rectangle, with the origin at the upper left (floating point).
|
|
87
|
+
*
|
|
88
|
+
* \sa SDL_FRectEmpty
|
|
89
|
+
* \sa SDL_FRectEquals
|
|
90
|
+
* \sa SDL_FRectEqualsEpsilon
|
|
91
|
+
* \sa SDL_HasIntersectionF
|
|
92
|
+
* \sa SDL_IntersectFRect
|
|
93
|
+
* \sa SDL_IntersectFRectAndLine
|
|
94
|
+
* \sa SDL_UnionFRect
|
|
95
|
+
* \sa SDL_EncloseFPoints
|
|
96
|
+
* \sa SDL_PointInFRect
|
|
86
97
|
*/
|
|
87
98
|
typedef struct SDL_FRect
|
|
88
99
|
{
|
|
@@ -213,6 +224,147 @@ extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine(const SDL_Rect *
|
|
|
213
224
|
int *Y1, int *X2,
|
|
214
225
|
int *Y2);
|
|
215
226
|
|
|
227
|
+
|
|
228
|
+
/* SDL_FRect versions... */
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Returns true if point resides inside a rectangle.
|
|
232
|
+
*/
|
|
233
|
+
SDL_FORCE_INLINE SDL_bool SDL_PointInFRect(const SDL_FPoint *p, const SDL_FRect *r)
|
|
234
|
+
{
|
|
235
|
+
return ( (p->x >= r->x) && (p->x < (r->x + r->w)) &&
|
|
236
|
+
(p->y >= r->y) && (p->y < (r->y + r->h)) ) ? SDL_TRUE : SDL_FALSE;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Returns true if the rectangle has no area.
|
|
241
|
+
*/
|
|
242
|
+
SDL_FORCE_INLINE SDL_bool SDL_FRectEmpty(const SDL_FRect *r)
|
|
243
|
+
{
|
|
244
|
+
return ((!r) || (r->w <= 0.0f) || (r->h <= 0.0f)) ? SDL_TRUE : SDL_FALSE;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Returns true if the two rectangles are equal, within some given epsilon.
|
|
249
|
+
*
|
|
250
|
+
* \since This function is available since SDL 2.0.22.
|
|
251
|
+
*/
|
|
252
|
+
SDL_FORCE_INLINE SDL_bool SDL_FRectEqualsEpsilon(const SDL_FRect *a, const SDL_FRect *b, const float epsilon)
|
|
253
|
+
{
|
|
254
|
+
return (a && b && ((a == b) ||
|
|
255
|
+
((SDL_fabsf(a->x - b->x) <= epsilon) &&
|
|
256
|
+
(SDL_fabsf(a->y - b->y) <= epsilon) &&
|
|
257
|
+
(SDL_fabsf(a->w - b->w) <= epsilon) &&
|
|
258
|
+
(SDL_fabsf(a->h - b->h) <= epsilon))))
|
|
259
|
+
? SDL_TRUE : SDL_FALSE;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
* Returns true if the two rectangles are equal, using a default epsilon.
|
|
264
|
+
*
|
|
265
|
+
* \since This function is available since SDL 2.0.22.
|
|
266
|
+
*/
|
|
267
|
+
SDL_FORCE_INLINE SDL_bool SDL_FRectEquals(const SDL_FRect *a, const SDL_FRect *b)
|
|
268
|
+
{
|
|
269
|
+
return SDL_FRectEqualsEpsilon(a, b, SDL_FLT_EPSILON);
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
/**
|
|
273
|
+
* Determine whether two rectangles intersect with float precision.
|
|
274
|
+
*
|
|
275
|
+
* If either pointer is NULL the function will return SDL_FALSE.
|
|
276
|
+
*
|
|
277
|
+
* \param A an SDL_FRect structure representing the first rectangle
|
|
278
|
+
* \param B an SDL_FRect structure representing the second rectangle
|
|
279
|
+
* \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise.
|
|
280
|
+
*
|
|
281
|
+
* \since This function is available since SDL 2.0.22.
|
|
282
|
+
*
|
|
283
|
+
* \sa SDL_IntersectRect
|
|
284
|
+
*/
|
|
285
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_HasIntersectionF(const SDL_FRect * A,
|
|
286
|
+
const SDL_FRect * B);
|
|
287
|
+
|
|
288
|
+
/**
|
|
289
|
+
* Calculate the intersection of two rectangles with float precision.
|
|
290
|
+
*
|
|
291
|
+
* If `result` is NULL then this function will return SDL_FALSE.
|
|
292
|
+
*
|
|
293
|
+
* \param A an SDL_FRect structure representing the first rectangle
|
|
294
|
+
* \param B an SDL_FRect structure representing the second rectangle
|
|
295
|
+
* \param result an SDL_FRect structure filled in with the intersection of
|
|
296
|
+
* rectangles `A` and `B`
|
|
297
|
+
* \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise.
|
|
298
|
+
*
|
|
299
|
+
* \since This function is available since SDL 2.0.22.
|
|
300
|
+
*
|
|
301
|
+
* \sa SDL_HasIntersectionF
|
|
302
|
+
*/
|
|
303
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRect(const SDL_FRect * A,
|
|
304
|
+
const SDL_FRect * B,
|
|
305
|
+
SDL_FRect * result);
|
|
306
|
+
|
|
307
|
+
/**
|
|
308
|
+
* Calculate the union of two rectangles with float precision.
|
|
309
|
+
*
|
|
310
|
+
* \param A an SDL_FRect structure representing the first rectangle
|
|
311
|
+
* \param B an SDL_FRect structure representing the second rectangle
|
|
312
|
+
* \param result an SDL_FRect structure filled in with the union of rectangles
|
|
313
|
+
* `A` and `B`
|
|
314
|
+
*
|
|
315
|
+
* \since This function is available since SDL 2.0.22.
|
|
316
|
+
*/
|
|
317
|
+
extern DECLSPEC void SDLCALL SDL_UnionFRect(const SDL_FRect * A,
|
|
318
|
+
const SDL_FRect * B,
|
|
319
|
+
SDL_FRect * result);
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* Calculate a minimal rectangle enclosing a set of points with float
|
|
323
|
+
* precision.
|
|
324
|
+
*
|
|
325
|
+
* If `clip` is not NULL then only points inside of the clipping rectangle are
|
|
326
|
+
* considered.
|
|
327
|
+
*
|
|
328
|
+
* \param points an array of SDL_FPoint structures representing points to be
|
|
329
|
+
* enclosed
|
|
330
|
+
* \param count the number of structures in the `points` array
|
|
331
|
+
* \param clip an SDL_FRect used for clipping or NULL to enclose all points
|
|
332
|
+
* \param result an SDL_FRect structure filled in with the minimal enclosing
|
|
333
|
+
* rectangle
|
|
334
|
+
* \returns SDL_TRUE if any points were enclosed or SDL_FALSE if all the
|
|
335
|
+
* points were outside of the clipping rectangle.
|
|
336
|
+
*
|
|
337
|
+
* \since This function is available since SDL 2.0.22.
|
|
338
|
+
*/
|
|
339
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_EncloseFPoints(const SDL_FPoint * points,
|
|
340
|
+
int count,
|
|
341
|
+
const SDL_FRect * clip,
|
|
342
|
+
SDL_FRect * result);
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* Calculate the intersection of a rectangle and line segment with float
|
|
346
|
+
* precision.
|
|
347
|
+
*
|
|
348
|
+
* This function is used to clip a line segment to a rectangle. A line segment
|
|
349
|
+
* contained entirely within the rectangle or that does not intersect will
|
|
350
|
+
* remain unchanged. A line segment that crosses the rectangle at either or
|
|
351
|
+
* both ends will be clipped to the boundary of the rectangle and the new
|
|
352
|
+
* coordinates saved in `X1`, `Y1`, `X2`, and/or `Y2` as necessary.
|
|
353
|
+
*
|
|
354
|
+
* \param rect an SDL_FRect structure representing the rectangle to intersect
|
|
355
|
+
* \param X1 a pointer to the starting X-coordinate of the line
|
|
356
|
+
* \param Y1 a pointer to the starting Y-coordinate of the line
|
|
357
|
+
* \param X2 a pointer to the ending X-coordinate of the line
|
|
358
|
+
* \param Y2 a pointer to the ending Y-coordinate of the line
|
|
359
|
+
* \returns SDL_TRUE if there is an intersection, SDL_FALSE otherwise.
|
|
360
|
+
*
|
|
361
|
+
* \since This function is available since SDL 2.0.22.
|
|
362
|
+
*/
|
|
363
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_IntersectFRectAndLine(const SDL_FRect *
|
|
364
|
+
rect, float *X1,
|
|
365
|
+
float *Y1, float *X2,
|
|
366
|
+
float *Y2);
|
|
367
|
+
|
|
216
368
|
/* Ends C function definitions when using C++ */
|
|
217
369
|
#ifdef __cplusplus
|
|
218
370
|
}
|
|
@@ -261,6 +261,17 @@ extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateSoftwareRenderer(SDL_Surface *
|
|
|
261
261
|
*/
|
|
262
262
|
extern DECLSPEC SDL_Renderer * SDLCALL SDL_GetRenderer(SDL_Window * window);
|
|
263
263
|
|
|
264
|
+
/**
|
|
265
|
+
* Get the window associated with a renderer.
|
|
266
|
+
*
|
|
267
|
+
* \param renderer the renderer to query
|
|
268
|
+
* \returns the window on success or NULL on failure; call SDL_GetError() for
|
|
269
|
+
* more information.
|
|
270
|
+
*
|
|
271
|
+
* \since This function is available since SDL 2.0.22.
|
|
272
|
+
*/
|
|
273
|
+
extern DECLSPEC SDL_Window * SDLCALL SDL_RenderGetWindow(SDL_Renderer *renderer);
|
|
274
|
+
|
|
264
275
|
/**
|
|
265
276
|
* Get information about a rendering context.
|
|
266
277
|
*
|
|
@@ -356,11 +367,15 @@ extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Renderer
|
|
|
356
367
|
* \param texture the texture to query
|
|
357
368
|
* \param format a pointer filled in with the raw format of the texture; the
|
|
358
369
|
* actual format may differ, but pixel transfers will use this
|
|
359
|
-
* format (one of the SDL_PixelFormatEnum values)
|
|
370
|
+
* format (one of the SDL_PixelFormatEnum values). This argument
|
|
371
|
+
* can be NULL if you don't need this information.
|
|
360
372
|
* \param access a pointer filled in with the actual access to the texture
|
|
361
|
-
* (one of the SDL_TextureAccess values)
|
|
362
|
-
*
|
|
363
|
-
* \param
|
|
373
|
+
* (one of the SDL_TextureAccess values). This argument can be
|
|
374
|
+
* NULL if you don't need this information.
|
|
375
|
+
* \param w a pointer filled in with the width of the texture in pixels. This
|
|
376
|
+
* argument can be NULL if you don't need this information.
|
|
377
|
+
* \param h a pointer filled in with the height of the texture in pixels. This
|
|
378
|
+
* argument can be NULL if you don't need this information.
|
|
364
379
|
* \returns 0 on success or a negative error code on failure; call
|
|
365
380
|
* SDL_GetError() for more information.
|
|
366
381
|
*
|
|
@@ -810,9 +825,13 @@ extern DECLSPEC int SDLCALL SDL_RenderSetLogicalSize(SDL_Renderer * renderer, in
|
|
|
810
825
|
/**
|
|
811
826
|
* Get device independent resolution for rendering.
|
|
812
827
|
*
|
|
813
|
-
*
|
|
814
|
-
*
|
|
815
|
-
*
|
|
828
|
+
* When using the main rendering target (eg no target texture is set): this
|
|
829
|
+
* may return 0 for `w` and `h` if the SDL_Renderer has never had its logical
|
|
830
|
+
* size set by SDL_RenderSetLogicalSize(). Otherwise it returns the logical
|
|
831
|
+
* width and height.
|
|
832
|
+
*
|
|
833
|
+
* When using a target texture: Never return 0 for `w` and `h` at first. Then
|
|
834
|
+
* it returns the logical width and height that are set.
|
|
816
835
|
*
|
|
817
836
|
* \param renderer a rendering context
|
|
818
837
|
* \param w an int to be filled with the width
|
|
@@ -985,7 +1004,7 @@ extern DECLSPEC void SDLCALL SDL_RenderGetScale(SDL_Renderer * renderer,
|
|
|
985
1004
|
* and logical renderer size set
|
|
986
1005
|
*
|
|
987
1006
|
* \param renderer the renderer from which the logical coordinates should be
|
|
988
|
-
*
|
|
1007
|
+
* calculated
|
|
989
1008
|
* \param windowX the real X coordinate in the window
|
|
990
1009
|
* \param windowY the real Y coordinate in the window
|
|
991
1010
|
* \param logicalX the pointer filled with the logical x coordinate
|
|
@@ -1002,19 +1021,23 @@ extern DECLSPEC void SDLCALL SDL_RenderWindowToLogical(SDL_Renderer * renderer,
|
|
|
1002
1021
|
int windowX, int windowY,
|
|
1003
1022
|
float *logicalX, float *logicalY);
|
|
1004
1023
|
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
*
|
|
1008
|
-
*
|
|
1009
|
-
*
|
|
1024
|
+
|
|
1025
|
+
/**
|
|
1026
|
+
* Get real coordinates of point in window when given logical coordinates of
|
|
1027
|
+
* point in renderer.
|
|
1028
|
+
*
|
|
1029
|
+
* Logical coordinates will differ from real coordinates when render is scaled
|
|
1030
|
+
* and logical renderer size set
|
|
1031
|
+
*
|
|
1032
|
+
* \param renderer the renderer from which the window coordinates should be
|
|
1033
|
+
* calculated
|
|
1010
1034
|
* \param logicalX the logical x coordinate
|
|
1011
1035
|
* \param logicalY the logical y coordinate
|
|
1012
1036
|
* \param windowX the pointer filled with the real X coordinate in the window
|
|
1013
1037
|
* \param windowY the pointer filled with the real Y coordinate in the window
|
|
1014
|
-
|
|
1015
|
-
*
|
|
1038
|
+
*
|
|
1016
1039
|
* \since This function is available since SDL 2.0.18.
|
|
1017
|
-
*
|
|
1040
|
+
*
|
|
1018
1041
|
* \sa SDL_RenderGetScale
|
|
1019
1042
|
* \sa SDL_RenderSetScale
|
|
1020
1043
|
* \sa SDL_RenderGetLogicalSize
|
|
@@ -1603,6 +1626,7 @@ extern DECLSPEC int SDLCALL SDL_RenderCopyExF(SDL_Renderer * renderer,
|
|
|
1603
1626
|
* vertex array Color and alpha modulation is done per vertex
|
|
1604
1627
|
* (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored).
|
|
1605
1628
|
*
|
|
1629
|
+
* \param renderer The rendering context.
|
|
1606
1630
|
* \param texture (optional) The SDL texture to use.
|
|
1607
1631
|
* \param vertices Vertices.
|
|
1608
1632
|
* \param num_vertices Number of vertices.
|
|
@@ -1627,6 +1651,7 @@ extern DECLSPEC int SDLCALL SDL_RenderGeometry(SDL_Renderer *renderer,
|
|
|
1627
1651
|
* vertex arrays Color and alpha modulation is done per vertex
|
|
1628
1652
|
* (SDL_SetTextureColorMod and SDL_SetTextureAlphaMod are ignored).
|
|
1629
1653
|
*
|
|
1654
|
+
* \param renderer The rendering context.
|
|
1630
1655
|
* \param texture (optional) The SDL texture to use.
|
|
1631
1656
|
* \param xy Vertex positions
|
|
1632
1657
|
* \param xy_stride Byte size to move from one element to the next element
|
|
@@ -1658,7 +1683,8 @@ extern DECLSPEC int SDLCALL SDL_RenderGeometryRaw(SDL_Renderer *renderer,
|
|
|
1658
1683
|
* Read pixels from the current rendering target to an array of pixels.
|
|
1659
1684
|
*
|
|
1660
1685
|
* **WARNING**: This is a very slow operation, and should not be used
|
|
1661
|
-
* frequently.
|
|
1686
|
+
* frequently. If you're using this on the main rendering target, it should be
|
|
1687
|
+
* called after rendering and before SDL_RenderPresent().
|
|
1662
1688
|
*
|
|
1663
1689
|
* `pitch` specifies the number of bytes between rows in the destination
|
|
1664
1690
|
* `pixels` data. This allows you to write to a subrectangle or have padded
|
|
@@ -1739,6 +1765,9 @@ extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture);
|
|
|
1739
1765
|
/**
|
|
1740
1766
|
* Destroy the rendering context for a window and free associated textures.
|
|
1741
1767
|
*
|
|
1768
|
+
* If `renderer` is NULL, this function will return immediately after setting
|
|
1769
|
+
* the SDL error message to "Invalid renderer". See SDL_GetError().
|
|
1770
|
+
*
|
|
1742
1771
|
* \param renderer the rendering context
|
|
1743
1772
|
*
|
|
1744
1773
|
* \since This function is available since SDL 2.0.0.
|
|
@@ -45,9 +45,6 @@ extern "C" {
|
|
|
45
45
|
#define SDL_RWOPS_JNIFILE 3U /**< Android asset */
|
|
46
46
|
#define SDL_RWOPS_MEMORY 4U /**< Memory stream */
|
|
47
47
|
#define SDL_RWOPS_MEMORY_RO 5U /**< Read-Only memory stream */
|
|
48
|
-
#if defined(__VITA__)
|
|
49
|
-
#define SDL_RWOPS_VITAFILE 6U /**< Vita file */
|
|
50
|
-
#endif
|
|
51
48
|
|
|
52
49
|
/**
|
|
53
50
|
* This is the read/write operation structure -- very basic.
|
|
@@ -101,7 +98,7 @@ typedef struct SDL_RWops
|
|
|
101
98
|
{
|
|
102
99
|
void *asset;
|
|
103
100
|
} androidio;
|
|
104
|
-
#elif defined(__WIN32__)
|
|
101
|
+
#elif defined(__WIN32__) || defined(__GDK__)
|
|
105
102
|
struct
|
|
106
103
|
{
|
|
107
104
|
SDL_bool append;
|
|
@@ -113,17 +110,6 @@ typedef struct SDL_RWops
|
|
|
113
110
|
size_t left;
|
|
114
111
|
} buffer;
|
|
115
112
|
} windowsio;
|
|
116
|
-
#elif defined(__VITA__)
|
|
117
|
-
struct
|
|
118
|
-
{
|
|
119
|
-
int h;
|
|
120
|
-
struct
|
|
121
|
-
{
|
|
122
|
-
void *data;
|
|
123
|
-
size_t size;
|
|
124
|
-
size_t left;
|
|
125
|
-
} buffer;
|
|
126
|
-
} vitaio;
|
|
127
113
|
#endif
|
|
128
114
|
|
|
129
115
|
#ifdef HAVE_STDIO_H
|