sdl2-bindings 0.0.3 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
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
+