sdl2-bindings 0.0.3 → 0.0.7

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.
data/lib/sdl2_hints.rb CHANGED
@@ -10,6 +10,127 @@ module SDL2
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ SDL_HINT_ACCELEROMETER_AS_JOYSTICK = "SDL_ACCELEROMETER_AS_JOYSTICK"
14
+ SDL_HINT_ALLOW_ALT_TAB_WHILE_GRABBED = "SDL_ALLOW_ALT_TAB_WHILE_GRABBED"
15
+ SDL_HINT_ALLOW_TOPMOST = "SDL_ALLOW_TOPMOST"
16
+ SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION = "SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION"
17
+ SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION = "SDL_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION"
18
+ SDL_HINT_ANDROID_BLOCK_ON_PAUSE = "SDL_ANDROID_BLOCK_ON_PAUSE"
19
+ SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO = "SDL_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO"
20
+ SDL_HINT_ANDROID_TRAP_BACK_BUTTON = "SDL_ANDROID_TRAP_BACK_BUTTON"
21
+ SDL_HINT_APPLE_TV_CONTROLLER_UI_EVENTS = "SDL_APPLE_TV_CONTROLLER_UI_EVENTS"
22
+ SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION = "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION"
23
+ SDL_HINT_AUDIO_CATEGORY = "SDL_AUDIO_CATEGORY"
24
+ SDL_HINT_AUDIO_DEVICE_APP_NAME = "SDL_AUDIO_DEVICE_APP_NAME"
25
+ SDL_HINT_AUDIO_DEVICE_STREAM_NAME = "SDL_AUDIO_DEVICE_STREAM_NAME"
26
+ SDL_HINT_AUDIO_DEVICE_STREAM_ROLE = "SDL_AUDIO_DEVICE_STREAM_ROLE"
27
+ SDL_HINT_AUDIO_RESAMPLING_MODE = "SDL_AUDIO_RESAMPLING_MODE"
28
+ SDL_HINT_AUTO_UPDATE_JOYSTICKS = "SDL_AUTO_UPDATE_JOYSTICKS"
29
+ SDL_HINT_AUTO_UPDATE_SENSORS = "SDL_AUTO_UPDATE_SENSORS"
30
+ SDL_HINT_BMP_SAVE_LEGACY_FORMAT = "SDL_BMP_SAVE_LEGACY_FORMAT"
31
+ SDL_HINT_DISPLAY_USABLE_BOUNDS = "SDL_DISPLAY_USABLE_BOUNDS"
32
+ SDL_HINT_EMSCRIPTEN_ASYNCIFY = "SDL_EMSCRIPTEN_ASYNCIFY"
33
+ SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT = "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT"
34
+ SDL_HINT_ENABLE_STEAM_CONTROLLERS = "SDL_ENABLE_STEAM_CONTROLLERS"
35
+ SDL_HINT_EVENT_LOGGING = "SDL_EVENT_LOGGING"
36
+ SDL_HINT_FRAMEBUFFER_ACCELERATION = "SDL_FRAMEBUFFER_ACCELERATION"
37
+ SDL_HINT_GAMECONTROLLERCONFIG = "SDL_GAMECONTROLLERCONFIG"
38
+ SDL_HINT_GAMECONTROLLERCONFIG_FILE = "SDL_GAMECONTROLLERCONFIG_FILE"
39
+ SDL_HINT_GAMECONTROLLERTYPE = "SDL_GAMECONTROLLERTYPE"
40
+ SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES = "SDL_GAMECONTROLLER_IGNORE_DEVICES"
41
+ SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT = "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
42
+ SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS = "SDL_GAMECONTROLLER_USE_BUTTON_LABELS"
43
+ SDL_HINT_GRAB_KEYBOARD = "SDL_GRAB_KEYBOARD"
44
+ SDL_HINT_IDLE_TIMER_DISABLED = "SDL_IOS_IDLE_TIMER_DISABLED"
45
+ SDL_HINT_IME_INTERNAL_EDITING = "SDL_IME_INTERNAL_EDITING"
46
+ SDL_HINT_IOS_HIDE_HOME_INDICATOR = "SDL_IOS_HIDE_HOME_INDICATOR"
47
+ SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS = "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS"
48
+ SDL_HINT_JOYSTICK_HIDAPI = "SDL_JOYSTICK_HIDAPI"
49
+ SDL_HINT_JOYSTICK_HIDAPI_GAMECUBE = "SDL_JOYSTICK_HIDAPI_GAMECUBE"
50
+ SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS = "SDL_JOYSTICK_HIDAPI_JOY_CONS"
51
+ SDL_HINT_JOYSTICK_HIDAPI_LUNA = "SDL_JOYSTICK_HIDAPI_LUNA"
52
+ SDL_HINT_JOYSTICK_HIDAPI_PS4 = "SDL_JOYSTICK_HIDAPI_PS4"
53
+ SDL_HINT_JOYSTICK_HIDAPI_PS4_RUMBLE = "SDL_JOYSTICK_HIDAPI_PS4_RUMBLE"
54
+ SDL_HINT_JOYSTICK_HIDAPI_PS5 = "SDL_JOYSTICK_HIDAPI_PS5"
55
+ SDL_HINT_JOYSTICK_HIDAPI_PS5_PLAYER_LED = "SDL_JOYSTICK_HIDAPI_PS5_PLAYER_LED"
56
+ SDL_HINT_JOYSTICK_HIDAPI_PS5_RUMBLE = "SDL_JOYSTICK_HIDAPI_PS5_RUMBLE"
57
+ SDL_HINT_JOYSTICK_HIDAPI_STADIA = "SDL_JOYSTICK_HIDAPI_STADIA"
58
+ SDL_HINT_JOYSTICK_HIDAPI_STEAM = "SDL_JOYSTICK_HIDAPI_STEAM"
59
+ SDL_HINT_JOYSTICK_HIDAPI_SWITCH = "SDL_JOYSTICK_HIDAPI_SWITCH"
60
+ SDL_HINT_JOYSTICK_HIDAPI_SWITCH_HOME_LED = "SDL_JOYSTICK_HIDAPI_SWITCH_HOME_LED"
61
+ SDL_HINT_JOYSTICK_HIDAPI_XBOX = "SDL_JOYSTICK_HIDAPI_XBOX"
62
+ SDL_HINT_JOYSTICK_RAWINPUT = "SDL_JOYSTICK_RAWINPUT"
63
+ SDL_HINT_JOYSTICK_RAWINPUT_CORRELATE_XINPUT = "SDL_JOYSTICK_RAWINPUT_CORRELATE_XINPUT"
64
+ SDL_HINT_JOYSTICK_THREAD = "SDL_JOYSTICK_THREAD"
65
+ SDL_HINT_KMSDRM_REQUIRE_DRM_MASTER = "SDL_KMSDRM_REQUIRE_DRM_MASTER"
66
+ SDL_HINT_LINUX_JOYSTICK_DEADZONES = "SDL_LINUX_JOYSTICK_DEADZONES"
67
+ SDL_HINT_MAC_BACKGROUND_APP = "SDL_MAC_BACKGROUND_APP"
68
+ SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK = "SDL_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK"
69
+ SDL_HINT_MOUSE_DOUBLE_CLICK_RADIUS = "SDL_MOUSE_DOUBLE_CLICK_RADIUS"
70
+ SDL_HINT_MOUSE_DOUBLE_CLICK_TIME = "SDL_MOUSE_DOUBLE_CLICK_TIME"
71
+ SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH = "SDL_MOUSE_FOCUS_CLICKTHROUGH"
72
+ SDL_HINT_MOUSE_NORMAL_SPEED_SCALE = "SDL_MOUSE_NORMAL_SPEED_SCALE"
73
+ SDL_HINT_MOUSE_RELATIVE_MODE_WARP = "SDL_MOUSE_RELATIVE_MODE_WARP"
74
+ SDL_HINT_MOUSE_RELATIVE_SCALING = "SDL_MOUSE_RELATIVE_SCALING"
75
+ SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE = "SDL_MOUSE_RELATIVE_SPEED_SCALE"
76
+ SDL_HINT_MOUSE_TOUCH_EVENTS = "SDL_MOUSE_TOUCH_EVENTS"
77
+ SDL_HINT_NO_SIGNAL_HANDLERS = "SDL_NO_SIGNAL_HANDLERS"
78
+ SDL_HINT_OPENGL_ES_DRIVER = "SDL_OPENGL_ES_DRIVER"
79
+ SDL_HINT_ORIENTATIONS = "SDL_IOS_ORIENTATIONS"
80
+ SDL_HINT_PREFERRED_LOCALES = "SDL_PREFERRED_LOCALES"
81
+ SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION = "SDL_QTWAYLAND_CONTENT_ORIENTATION"
82
+ SDL_HINT_QTWAYLAND_WINDOW_FLAGS = "SDL_QTWAYLAND_WINDOW_FLAGS"
83
+ SDL_HINT_RENDER_BATCHING = "SDL_RENDER_BATCHING"
84
+ SDL_HINT_RENDER_DIRECT3D11_DEBUG = "SDL_RENDER_DIRECT3D11_DEBUG"
85
+ SDL_HINT_RENDER_DIRECT3D_THREADSAFE = "SDL_RENDER_DIRECT3D_THREADSAFE"
86
+ SDL_HINT_RENDER_DRIVER = "SDL_RENDER_DRIVER"
87
+ SDL_HINT_RENDER_LOGICAL_SIZE_MODE = "SDL_RENDER_LOGICAL_SIZE_MODE"
88
+ SDL_HINT_RENDER_OPENGL_SHADERS = "SDL_RENDER_OPENGL_SHADERS"
89
+ SDL_HINT_RENDER_SCALE_QUALITY = "SDL_RENDER_SCALE_QUALITY"
90
+ SDL_HINT_RENDER_VSYNC = "SDL_RENDER_VSYNC"
91
+ SDL_HINT_RETURN_KEY_HIDES_IME = "SDL_RETURN_KEY_HIDES_IME"
92
+ SDL_HINT_RPI_VIDEO_LAYER = "SDL_RPI_VIDEO_LAYER"
93
+ SDL_HINT_THREAD_FORCE_REALTIME_TIME_CRITICAL = "SDL_THREAD_FORCE_REALTIME_TIME_CRITICAL"
94
+ SDL_HINT_THREAD_PRIORITY_POLICY = "SDL_THREAD_PRIORITY_POLICY"
95
+ SDL_HINT_THREAD_STACK_SIZE = "SDL_THREAD_STACK_SIZE"
96
+ SDL_HINT_TIMER_RESOLUTION = "SDL_TIMER_RESOLUTION"
97
+ SDL_HINT_TOUCH_MOUSE_EVENTS = "SDL_TOUCH_MOUSE_EVENTS"
98
+ SDL_HINT_TV_REMOTE_AS_JOYSTICK = "SDL_TV_REMOTE_AS_JOYSTICK"
99
+ SDL_HINT_VIDEO_ALLOW_SCREENSAVER = "SDL_VIDEO_ALLOW_SCREENSAVER"
100
+ SDL_HINT_VIDEO_DOUBLE_BUFFER = "SDL_VIDEO_DOUBLE_BUFFER"
101
+ SDL_HINT_VIDEO_EXTERNAL_CONTEXT = "SDL_VIDEO_EXTERNAL_CONTEXT"
102
+ SDL_HINT_VIDEO_HIGHDPI_DISABLED = "SDL_VIDEO_HIGHDPI_DISABLED"
103
+ SDL_HINT_VIDEO_MAC_FULLSCREEN_SPACES = "SDL_VIDEO_MAC_FULLSCREEN_SPACES"
104
+ SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS = "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS"
105
+ SDL_HINT_VIDEO_WAYLAND_ALLOW_LIBDECOR = "SDL_VIDEO_WAYLAND_ALLOW_LIBDECOR"
106
+ SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT = "SDL_VIDEO_WINDOW_SHARE_PIXEL_FORMAT"
107
+ SDL_HINT_VIDEO_WIN_D3DCOMPILER = "SDL_VIDEO_WIN_D3DCOMPILER"
108
+ SDL_HINT_VIDEO_X11_FORCE_EGL = "SDL_VIDEO_X11_FORCE_EGL"
109
+ SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR = "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR"
110
+ SDL_HINT_VIDEO_X11_NET_WM_PING = "SDL_VIDEO_X11_NET_WM_PING"
111
+ SDL_HINT_VIDEO_X11_WINDOW_VISUALID = "SDL_VIDEO_X11_WINDOW_VISUALID"
112
+ SDL_HINT_VIDEO_X11_XINERAMA = "SDL_VIDEO_X11_XINERAMA"
113
+ SDL_HINT_VIDEO_X11_XRANDR = "SDL_VIDEO_X11_XRANDR"
114
+ SDL_HINT_VIDEO_X11_XVIDMODE = "SDL_VIDEO_X11_XVIDMODE"
115
+ SDL_HINT_WAVE_FACT_CHUNK = "SDL_WAVE_FACT_CHUNK"
116
+ SDL_HINT_WAVE_RIFF_CHUNK_SIZE = "SDL_WAVE_RIFF_CHUNK_SIZE"
117
+ SDL_HINT_WAVE_TRUNCATION = "SDL_WAVE_TRUNCATION"
118
+ SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING = "SDL_WINDOWS_DISABLE_THREAD_NAMING"
119
+ SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP = "SDL_WINDOWS_ENABLE_MESSAGELOOP"
120
+ SDL_HINT_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS = "SDL_WINDOWS_FORCE_MUTEX_CRITICAL_SECTIONS"
121
+ SDL_HINT_WINDOWS_FORCE_SEMAPHORE_KERNEL = "SDL_WINDOWS_FORCE_SEMAPHORE_KERNEL"
122
+ SDL_HINT_WINDOWS_INTRESOURCE_ICON = "SDL_WINDOWS_INTRESOURCE_ICON"
123
+ SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL = "SDL_WINDOWS_INTRESOURCE_ICON_SMALL"
124
+ SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 = "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4"
125
+ SDL_HINT_WINDOWS_USE_D3D9EX = "SDL_WINDOWS_USE_D3D9EX"
126
+ SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN = "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN"
127
+ SDL_HINT_WINRT_HANDLE_BACK_BUTTON = "SDL_WINRT_HANDLE_BACK_BUTTON"
128
+ SDL_HINT_WINRT_PRIVACY_POLICY_LABEL = "SDL_WINRT_PRIVACY_POLICY_LABEL"
129
+ SDL_HINT_WINRT_PRIVACY_POLICY_URL = "SDL_WINRT_PRIVACY_POLICY_URL"
130
+ SDL_HINT_X11_FORCE_OVERRIDE_REDIRECT = "SDL_X11_FORCE_OVERRIDE_REDIRECT"
131
+ SDL_HINT_XINPUT_ENABLED = "SDL_XINPUT_ENABLED"
132
+ SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING = "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING"
133
+ SDL_HINT_AUDIO_INCLUDE_MONITORS = "SDL_AUDIO_INCLUDE_MONITORS"
13
134
 
14
135
  # Enum
15
136
 
@@ -42,8 +163,8 @@ module SDL2
42
163
  :SDL_SetHint => [:pointer, :pointer],
43
164
  :SDL_GetHint => [:pointer],
44
165
  :SDL_GetHintBoolean => [:pointer, :int],
45
- :SDL_AddHintCallback => [:pointer, :pointer, :pointer],
46
- :SDL_DelHintCallback => [:pointer, :pointer, :pointer],
166
+ :SDL_AddHintCallback => [:pointer, :SDL_HintCallback, :pointer],
167
+ :SDL_DelHintCallback => [:pointer, :SDL_HintCallback, :pointer],
47
168
  :SDL_ClearHints => [],
48
169
  }
49
170
  retvals = {
data/lib/sdl2_joystick.rb CHANGED
@@ -10,6 +10,7 @@ module SDL2
10
10
  extend FFI::Library
11
11
  # Define/Macro
12
12
 
13
+ SDL_IPHONE_MAX_GFORCE = 5.0
13
14
  SDL_JOYSTICK_AXIS_MAX = 32767
14
15
  SDL_JOYSTICK_AXIS_MIN = -32768
15
16
  SDL_HAT_CENTERED = 0x00
@@ -75,6 +76,12 @@ module SDL2
75
76
  :SDL_JoystickOpen,
76
77
  :SDL_JoystickFromInstanceID,
77
78
  :SDL_JoystickFromPlayerIndex,
79
+ :SDL_JoystickAttachVirtual,
80
+ :SDL_JoystickDetachVirtual,
81
+ :SDL_JoystickIsVirtual,
82
+ :SDL_JoystickSetVirtualAxis,
83
+ :SDL_JoystickSetVirtualButton,
84
+ :SDL_JoystickSetVirtualHat,
78
85
  :SDL_JoystickName,
79
86
  :SDL_JoystickGetPlayerIndex,
80
87
  :SDL_JoystickSetPlayerIndex,
@@ -82,6 +89,7 @@ module SDL2
82
89
  :SDL_JoystickGetVendor,
83
90
  :SDL_JoystickGetProduct,
84
91
  :SDL_JoystickGetProductVersion,
92
+ :SDL_JoystickGetSerial,
85
93
  :SDL_JoystickGetType,
86
94
  :SDL_JoystickGetGUIDString,
87
95
  :SDL_JoystickGetGUIDFromString,
@@ -99,6 +107,10 @@ module SDL2
99
107
  :SDL_JoystickGetBall,
100
108
  :SDL_JoystickGetButton,
101
109
  :SDL_JoystickRumble,
110
+ :SDL_JoystickRumbleTriggers,
111
+ :SDL_JoystickHasLED,
112
+ :SDL_JoystickSetLED,
113
+ :SDL_JoystickSendEffect,
102
114
  :SDL_JoystickClose,
103
115
  :SDL_JoystickCurrentPowerLevel,
104
116
  ]
@@ -117,6 +129,12 @@ module SDL2
117
129
  :SDL_JoystickOpen => [:int],
118
130
  :SDL_JoystickFromInstanceID => [:int],
119
131
  :SDL_JoystickFromPlayerIndex => [:int],
132
+ :SDL_JoystickAttachVirtual => [:int, :int, :int, :int],
133
+ :SDL_JoystickDetachVirtual => [:int],
134
+ :SDL_JoystickIsVirtual => [:int],
135
+ :SDL_JoystickSetVirtualAxis => [:pointer, :int, :short],
136
+ :SDL_JoystickSetVirtualButton => [:pointer, :int, :uchar],
137
+ :SDL_JoystickSetVirtualHat => [:pointer, :int, :uchar],
120
138
  :SDL_JoystickName => [:pointer],
121
139
  :SDL_JoystickGetPlayerIndex => [:pointer],
122
140
  :SDL_JoystickSetPlayerIndex => [:pointer, :int],
@@ -124,6 +142,7 @@ module SDL2
124
142
  :SDL_JoystickGetVendor => [:pointer],
125
143
  :SDL_JoystickGetProduct => [:pointer],
126
144
  :SDL_JoystickGetProductVersion => [:pointer],
145
+ :SDL_JoystickGetSerial => [:pointer],
127
146
  :SDL_JoystickGetType => [:pointer],
128
147
  :SDL_JoystickGetGUIDString => [SDL_JoystickGUID, :pointer, :int],
129
148
  :SDL_JoystickGetGUIDFromString => [:pointer],
@@ -141,6 +160,10 @@ module SDL2
141
160
  :SDL_JoystickGetBall => [:pointer, :int, :pointer, :pointer],
142
161
  :SDL_JoystickGetButton => [:pointer, :int],
143
162
  :SDL_JoystickRumble => [:pointer, :ushort, :ushort, :uint],
163
+ :SDL_JoystickRumbleTriggers => [:pointer, :ushort, :ushort, :uint],
164
+ :SDL_JoystickHasLED => [:pointer],
165
+ :SDL_JoystickSetLED => [:pointer, :uchar, :uchar, :uchar],
166
+ :SDL_JoystickSendEffect => [:pointer, :pointer, :int],
144
167
  :SDL_JoystickClose => [:pointer],
145
168
  :SDL_JoystickCurrentPowerLevel => [:pointer],
146
169
  }
@@ -159,6 +182,12 @@ module SDL2
159
182
  :SDL_JoystickOpen => :pointer,
160
183
  :SDL_JoystickFromInstanceID => :pointer,
161
184
  :SDL_JoystickFromPlayerIndex => :pointer,
185
+ :SDL_JoystickAttachVirtual => :int,
186
+ :SDL_JoystickDetachVirtual => :int,
187
+ :SDL_JoystickIsVirtual => :int,
188
+ :SDL_JoystickSetVirtualAxis => :int,
189
+ :SDL_JoystickSetVirtualButton => :int,
190
+ :SDL_JoystickSetVirtualHat => :int,
162
191
  :SDL_JoystickName => :pointer,
163
192
  :SDL_JoystickGetPlayerIndex => :int,
164
193
  :SDL_JoystickSetPlayerIndex => :void,
@@ -166,6 +195,7 @@ module SDL2
166
195
  :SDL_JoystickGetVendor => :ushort,
167
196
  :SDL_JoystickGetProduct => :ushort,
168
197
  :SDL_JoystickGetProductVersion => :ushort,
198
+ :SDL_JoystickGetSerial => :pointer,
169
199
  :SDL_JoystickGetType => :int,
170
200
  :SDL_JoystickGetGUIDString => :void,
171
201
  :SDL_JoystickGetGUIDFromString => SDL_JoystickGUID,
@@ -183,6 +213,10 @@ module SDL2
183
213
  :SDL_JoystickGetBall => :int,
184
214
  :SDL_JoystickGetButton => :uchar,
185
215
  :SDL_JoystickRumble => :int,
216
+ :SDL_JoystickRumbleTriggers => :int,
217
+ :SDL_JoystickHasLED => :int,
218
+ :SDL_JoystickSetLED => :int,
219
+ :SDL_JoystickSendEffect => :int,
186
220
  :SDL_JoystickClose => :void,
187
221
  :SDL_JoystickCurrentPowerLevel => :int,
188
222
  }
data/lib/sdl2_keycode.rb CHANGED
@@ -266,6 +266,10 @@ module SDL2
266
266
  KMOD_CAPS = 8192
267
267
  KMOD_MODE = 16384
268
268
  KMOD_RESERVED = 32768
269
+ KMOD_CTRL = 192
270
+ KMOD_SHIFT = 3
271
+ KMOD_ALT = 768
272
+ KMOD_GUI = 3072
269
273
 
270
274
  # Typedef
271
275
 
data/lib/sdl2_log.rb CHANGED
@@ -84,7 +84,7 @@ module SDL2
84
84
  :SDL_LogCritical => [:int, :pointer],
85
85
  :SDL_LogMessage => [:int, :int, :pointer],
86
86
  :SDL_LogGetOutputFunction => [:pointer, :pointer],
87
- :SDL_LogSetOutputFunction => [:pointer, :pointer],
87
+ :SDL_LogSetOutputFunction => [:SDL_LogOutputFunction, :pointer],
88
88
  }
89
89
  retvals = {
90
90
  :SDL_LogSetAllPriority => :void,
data/lib/sdl2_misc.rb ADDED
@@ -0,0 +1,45 @@
1
+ # Ruby-SDL2 : Yet another SDL2 wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/sdl2-bindings
4
+ #
5
+ # [NOTICE] This is an automatically generated file.
6
+
7
+ require 'ffi'
8
+
9
+ module SDL2
10
+ extend FFI::Library
11
+ # Define/Macro
12
+
13
+
14
+ # Enum
15
+
16
+
17
+ # Typedef
18
+
19
+
20
+ # Struct
21
+
22
+
23
+ # Function
24
+
25
+ def self.setup_misc_symbols()
26
+ symbols = [
27
+ :SDL_OpenURL,
28
+ ]
29
+ args = {
30
+ :SDL_OpenURL => [:pointer],
31
+ }
32
+ retvals = {
33
+ :SDL_OpenURL => :int,
34
+ }
35
+ symbols.each do |sym|
36
+ begin
37
+ attach_function sym, args[sym], retvals[sym]
38
+ rescue FFI::NotFoundError => error
39
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
40
+ end
41
+ end
42
+ end
43
+
44
+ end
45
+
data/lib/sdl2_mixer.rb CHANGED
@@ -13,6 +13,16 @@ module SDL2
13
13
  SDL_MIXER_MAJOR_VERSION = 2
14
14
  SDL_MIXER_MINOR_VERSION = 0
15
15
  SDL_MIXER_PATCHLEVEL = 4
16
+ MIX_MAJOR_VERSION = SDL_MIXER_MAJOR_VERSION
17
+ MIX_MINOR_VERSION = SDL_MIXER_MINOR_VERSION
18
+ MIX_PATCHLEVEL = SDL_MIXER_PATCHLEVEL
19
+ MIX_CHANNELS = 8
20
+ MIX_DEFAULT_FREQUENCY = 22050
21
+ MIX_DEFAULT_FORMAT = AUDIO_S16LSB
22
+ MIX_DEFAULT_CHANNELS = 2
23
+ MIX_MAX_VOLUME = SDL_MIX_MAXVOLUME
24
+ MIX_CHANNEL_POST = -2
25
+ MIX_EFFECTSMAXSPEED = "MIX_EFFECTSMAXSPEED"
16
26
 
17
27
  # Enum
18
28
 
@@ -166,8 +176,8 @@ module SDL2
166
176
  :Mix_HookMusicFinished => [:pointer],
167
177
  :Mix_GetMusicHookData => [],
168
178
  :Mix_ChannelFinished => [:pointer],
169
- :Mix_RegisterEffect => [:int, :pointer, :pointer, :pointer],
170
- :Mix_UnregisterEffect => [:int, :pointer],
179
+ :Mix_RegisterEffect => [:int, :Mix_EffectFunc_t, :Mix_EffectDone_t, :pointer],
180
+ :Mix_UnregisterEffect => [:int, :Mix_EffectFunc_t],
171
181
  :Mix_UnregisterAllEffects => [:int],
172
182
  :Mix_SetPanning => [:int, :uchar, :uchar],
173
183
  :Mix_SetPosition => [:int, :short, :uchar],
data/lib/sdl2_pixels.rb CHANGED
@@ -62,9 +62,13 @@ module SDL2
62
62
  SDL_PIXELFORMAT_INDEX4MSB = 304088064
63
63
  SDL_PIXELFORMAT_INDEX8 = 318769153
64
64
  SDL_PIXELFORMAT_RGB332 = 336660481
65
+ SDL_PIXELFORMAT_XRGB4444 = 353504258
65
66
  SDL_PIXELFORMAT_RGB444 = 353504258
67
+ SDL_PIXELFORMAT_XBGR4444 = 357698562
66
68
  SDL_PIXELFORMAT_BGR444 = 357698562
69
+ SDL_PIXELFORMAT_XRGB1555 = 353570562
67
70
  SDL_PIXELFORMAT_RGB555 = 353570562
71
+ SDL_PIXELFORMAT_XBGR1555 = 357764866
68
72
  SDL_PIXELFORMAT_BGR555 = 357764866
69
73
  SDL_PIXELFORMAT_ARGB4444 = 355602434
70
74
  SDL_PIXELFORMAT_RGBA4444 = 356651010
@@ -78,8 +82,10 @@ module SDL2
78
82
  SDL_PIXELFORMAT_BGR565 = 357896194
79
83
  SDL_PIXELFORMAT_RGB24 = 386930691
80
84
  SDL_PIXELFORMAT_BGR24 = 390076419
85
+ SDL_PIXELFORMAT_XRGB8888 = 370546692
81
86
  SDL_PIXELFORMAT_RGB888 = 370546692
82
87
  SDL_PIXELFORMAT_RGBX8888 = 371595268
88
+ SDL_PIXELFORMAT_XBGR8888 = 374740996
83
89
  SDL_PIXELFORMAT_BGR888 = 374740996
84
90
  SDL_PIXELFORMAT_BGRX8888 = 375789572
85
91
  SDL_PIXELFORMAT_ARGB8888 = 372645892
data/lib/sdl2_render.rb CHANGED
@@ -77,6 +77,7 @@ module SDL2
77
77
  :SDL_GetTextureScaleMode,
78
78
  :SDL_UpdateTexture,
79
79
  :SDL_UpdateYUVTexture,
80
+ :SDL_UpdateNVTexture,
80
81
  :SDL_LockTexture,
81
82
  :SDL_LockTextureToSurface,
82
83
  :SDL_UnlockTexture,
@@ -151,6 +152,7 @@ module SDL2
151
152
  :SDL_GetTextureScaleMode => [:pointer, :pointer],
152
153
  :SDL_UpdateTexture => [:pointer, :pointer, :pointer, :int],
153
154
  :SDL_UpdateYUVTexture => [:pointer, :pointer, :pointer, :int, :pointer, :int, :pointer, :int],
155
+ :SDL_UpdateNVTexture => [:pointer, :pointer, :pointer, :int, :pointer, :int],
154
156
  :SDL_LockTexture => [:pointer, :pointer, :pointer, :pointer],
155
157
  :SDL_LockTextureToSurface => [:pointer, :pointer, :pointer],
156
158
  :SDL_UnlockTexture => [:pointer],
@@ -225,6 +227,7 @@ module SDL2
225
227
  :SDL_GetTextureScaleMode => :int,
226
228
  :SDL_UpdateTexture => :int,
227
229
  :SDL_UpdateYUVTexture => :int,
230
+ :SDL_UpdateNVTexture => :int,
228
231
  :SDL_LockTexture => :int,
229
232
  :SDL_LockTextureToSurface => :int,
230
233
  :SDL_UnlockTexture => :void,
@@ -0,0 +1,96 @@
1
+ # Ruby-SDL2 : Yet another SDL2 wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/sdl2-bindings
4
+ #
5
+ # [NOTICE] This is an automatically generated file.
6
+
7
+ require 'ffi'
8
+
9
+ module SDL2
10
+ extend FFI::Library
11
+ # Define/Macro
12
+
13
+
14
+ # Enum
15
+
16
+ SDL_SENSOR_INVALID = -1
17
+ SDL_SENSOR_UNKNOWN = 0
18
+ SDL_SENSOR_ACCEL = 1
19
+ SDL_SENSOR_GYRO = 2
20
+
21
+ # Typedef
22
+
23
+ typedef :int, :SDL_SensorID
24
+ typedef :int, :SDL_SensorType
25
+
26
+ # Struct
27
+
28
+
29
+ # Function
30
+
31
+ def self.setup_sensor_symbols()
32
+ symbols = [
33
+ :SDL_LockSensors,
34
+ :SDL_UnlockSensors,
35
+ :SDL_NumSensors,
36
+ :SDL_SensorGetDeviceName,
37
+ :SDL_SensorGetDeviceType,
38
+ :SDL_SensorGetDeviceNonPortableType,
39
+ :SDL_SensorGetDeviceInstanceID,
40
+ :SDL_SensorOpen,
41
+ :SDL_SensorFromInstanceID,
42
+ :SDL_SensorGetName,
43
+ :SDL_SensorGetType,
44
+ :SDL_SensorGetNonPortableType,
45
+ :SDL_SensorGetInstanceID,
46
+ :SDL_SensorGetData,
47
+ :SDL_SensorClose,
48
+ :SDL_SensorUpdate,
49
+ ]
50
+ args = {
51
+ :SDL_LockSensors => [],
52
+ :SDL_UnlockSensors => [],
53
+ :SDL_NumSensors => [],
54
+ :SDL_SensorGetDeviceName => [:int],
55
+ :SDL_SensorGetDeviceType => [:int],
56
+ :SDL_SensorGetDeviceNonPortableType => [:int],
57
+ :SDL_SensorGetDeviceInstanceID => [:int],
58
+ :SDL_SensorOpen => [:int],
59
+ :SDL_SensorFromInstanceID => [:int],
60
+ :SDL_SensorGetName => [:pointer],
61
+ :SDL_SensorGetType => [:pointer],
62
+ :SDL_SensorGetNonPortableType => [:pointer],
63
+ :SDL_SensorGetInstanceID => [:pointer],
64
+ :SDL_SensorGetData => [:pointer, :pointer, :int],
65
+ :SDL_SensorClose => [:pointer],
66
+ :SDL_SensorUpdate => [],
67
+ }
68
+ retvals = {
69
+ :SDL_LockSensors => :void,
70
+ :SDL_UnlockSensors => :void,
71
+ :SDL_NumSensors => :int,
72
+ :SDL_SensorGetDeviceName => :pointer,
73
+ :SDL_SensorGetDeviceType => :int,
74
+ :SDL_SensorGetDeviceNonPortableType => :int,
75
+ :SDL_SensorGetDeviceInstanceID => :int,
76
+ :SDL_SensorOpen => :pointer,
77
+ :SDL_SensorFromInstanceID => :pointer,
78
+ :SDL_SensorGetName => :pointer,
79
+ :SDL_SensorGetType => :int,
80
+ :SDL_SensorGetNonPortableType => :int,
81
+ :SDL_SensorGetInstanceID => :int,
82
+ :SDL_SensorGetData => :int,
83
+ :SDL_SensorClose => :void,
84
+ :SDL_SensorUpdate => :void,
85
+ }
86
+ symbols.each do |sym|
87
+ begin
88
+ attach_function sym, args[sym], retvals[sym]
89
+ rescue FFI::NotFoundError => error
90
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
91
+ end
92
+ end
93
+ end
94
+
95
+ end
96
+