sdl2-bindings 0.0.5 → 0.0.9

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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +96 -79
  3. data/LICENSE.txt +1 -1
  4. data/README.md +55 -49
  5. data/lib/sdl2.rb +172 -170
  6. data/lib/sdl2_audio.rb +222 -201
  7. data/lib/sdl2_blendmode.rb +69 -69
  8. data/lib/sdl2_clipboard.rb +51 -51
  9. data/lib/sdl2_cpuinfo.rb +106 -106
  10. data/lib/sdl2_error.rb +64 -64
  11. data/lib/sdl2_events.rb +533 -530
  12. data/lib/sdl2_filesystem.rb +48 -48
  13. data/lib/sdl2_framerate.rb +67 -67
  14. data/lib/sdl2_gamecontroller.rb +274 -254
  15. data/lib/sdl2_gesture.rb +55 -55
  16. data/lib/sdl2_gfxPrimitives.rb +222 -222
  17. data/lib/sdl2_haptic.rb +269 -269
  18. data/lib/sdl2_hidapi.rb +118 -0
  19. data/lib/sdl2_hints.rb +198 -174
  20. data/lib/sdl2_image.rb +185 -185
  21. data/lib/sdl2_imageFilter.rb +132 -132
  22. data/lib/sdl2_joystick.rb +239 -230
  23. data/lib/sdl2_keyboard.rb +99 -99
  24. data/lib/sdl2_keycode.rb +305 -304
  25. data/lib/sdl2_log.rb +115 -115
  26. data/lib/sdl2_main.rb +67 -67
  27. data/lib/sdl2_messagebox.rb +98 -98
  28. data/lib/sdl2_misc.rb +45 -0
  29. data/lib/sdl2_mixer.rb +317 -307
  30. data/lib/sdl2_mouse.rb +117 -117
  31. data/lib/sdl2_pixels.rb +224 -224
  32. data/lib/sdl2_platform.rb +45 -45
  33. data/lib/sdl2_power.rb +51 -51
  34. data/lib/sdl2_rect.rb +102 -102
  35. data/lib/sdl2_render.rb +322 -290
  36. data/lib/sdl2_rotozoom.rb +66 -66
  37. data/lib/sdl2_rwops.rb +208 -208
  38. data/lib/sdl2_scancode.rb +287 -287
  39. data/lib/sdl2_sensor.rb +97 -0
  40. data/lib/sdl2_shape.rb +77 -77
  41. data/lib/sdl2_stdinc.rb +439 -393
  42. data/lib/sdl2_surface.rb +188 -182
  43. data/lib/sdl2_syswm.rb +157 -154
  44. data/lib/sdl2_timer.rb +65 -62
  45. data/lib/sdl2_touch.rb +75 -73
  46. data/lib/sdl2_ttf.rb +202 -190
  47. data/lib/sdl2_version.rb +62 -62
  48. data/lib/sdl2_video.rb +446 -411
  49. data/lib/sdl2_vulkan.rb +64 -64
  50. metadata +9 -6
data/lib/sdl2_audio.rb CHANGED
@@ -1,201 +1,222 @@
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
- SDL_AUDIO_MASK_BITSIZE = 0xFF
14
- SDL_AUDIO_MASK_DATATYPE = (1 << 8)
15
- SDL_AUDIO_MASK_ENDIAN = (1 << 12)
16
- SDL_AUDIO_MASK_SIGNED = (1 << 15)
17
- SDL_AUDIO_ALLOW_FREQUENCY_CHANGE = 0x00000001
18
- SDL_AUDIO_ALLOW_FORMAT_CHANGE = 0x00000002
19
- SDL_AUDIO_ALLOW_CHANNELS_CHANGE = 0x00000004
20
- SDL_AUDIO_ALLOW_SAMPLES_CHANGE = 0x00000008
21
- SDL_AUDIO_ALLOW_ANY_CHANGE = (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE | SDL_AUDIO_ALLOW_FORMAT_CHANGE | SDL_AUDIO_ALLOW_CHANNELS_CHANGE | SDL_AUDIO_ALLOW_SAMPLES_CHANGE)
22
- SDL_AUDIOCVT_MAX_FILTERS = 9
23
- SDL_MIX_MAXVOLUME = 128
24
-
25
- # Enum
26
-
27
- SDL_AUDIO_STOPPED = 0
28
- SDL_AUDIO_PLAYING = 1
29
- SDL_AUDIO_PAUSED = 2
30
-
31
- # Typedef
32
-
33
- typedef :ushort, :SDL_AudioFormat
34
- callback :SDL_AudioCallback, [:pointer, :pointer, :int], :void
35
- callback :SDL_AudioFilter, [:pointer, :ushort], :void
36
- typedef :uint, :SDL_AudioDeviceID
37
- typedef :int, :SDL_AudioStatus
38
-
39
- # Struct
40
-
41
- class SDL_AudioSpec < FFI::Struct
42
- layout(
43
- :freq, :int,
44
- :format, :ushort,
45
- :channels, :uchar,
46
- :silence, :uchar,
47
- :samples, :ushort,
48
- :padding, :ushort,
49
- :size, :uint,
50
- :callback, :pointer,
51
- :userdata, :pointer,
52
- )
53
- end
54
-
55
- class SDL_AudioCVT < FFI::Struct
56
- layout(
57
- :needed, :int,
58
- :src_format, :ushort,
59
- :dst_format, :ushort,
60
- :rate_incr, :double,
61
- :buf, :pointer,
62
- :len, :int,
63
- :len_cvt, :int,
64
- :len_mult, :int,
65
- :len_ratio, :double,
66
- :filters, [:pointer, 10],
67
- :filter_index, :int,
68
- )
69
- end
70
-
71
-
72
- # Function
73
-
74
- def self.setup_audio_symbols()
75
- symbols = [
76
- :SDL_GetNumAudioDrivers,
77
- :SDL_GetAudioDriver,
78
- :SDL_AudioInit,
79
- :SDL_AudioQuit,
80
- :SDL_GetCurrentAudioDriver,
81
- :SDL_OpenAudio,
82
- :SDL_GetNumAudioDevices,
83
- :SDL_GetAudioDeviceName,
84
- :SDL_OpenAudioDevice,
85
- :SDL_GetAudioStatus,
86
- :SDL_GetAudioDeviceStatus,
87
- :SDL_PauseAudio,
88
- :SDL_PauseAudioDevice,
89
- :SDL_LoadWAV_RW,
90
- :SDL_FreeWAV,
91
- :SDL_BuildAudioCVT,
92
- :SDL_ConvertAudio,
93
- :SDL_NewAudioStream,
94
- :SDL_AudioStreamPut,
95
- :SDL_AudioStreamGet,
96
- :SDL_AudioStreamAvailable,
97
- :SDL_AudioStreamFlush,
98
- :SDL_AudioStreamClear,
99
- :SDL_FreeAudioStream,
100
- :SDL_MixAudio,
101
- :SDL_MixAudioFormat,
102
- :SDL_QueueAudio,
103
- :SDL_DequeueAudio,
104
- :SDL_GetQueuedAudioSize,
105
- :SDL_ClearQueuedAudio,
106
- :SDL_LockAudio,
107
- :SDL_LockAudioDevice,
108
- :SDL_UnlockAudio,
109
- :SDL_UnlockAudioDevice,
110
- :SDL_CloseAudio,
111
- :SDL_CloseAudioDevice,
112
- ]
113
- args = {
114
- :SDL_GetNumAudioDrivers => [],
115
- :SDL_GetAudioDriver => [:int],
116
- :SDL_AudioInit => [:pointer],
117
- :SDL_AudioQuit => [],
118
- :SDL_GetCurrentAudioDriver => [],
119
- :SDL_OpenAudio => [:pointer, :pointer],
120
- :SDL_GetNumAudioDevices => [:int],
121
- :SDL_GetAudioDeviceName => [:int, :int],
122
- :SDL_OpenAudioDevice => [:pointer, :int, :pointer, :pointer, :int],
123
- :SDL_GetAudioStatus => [],
124
- :SDL_GetAudioDeviceStatus => [:uint],
125
- :SDL_PauseAudio => [:int],
126
- :SDL_PauseAudioDevice => [:uint, :int],
127
- :SDL_LoadWAV_RW => [:pointer, :int, :pointer, :pointer, :pointer],
128
- :SDL_FreeWAV => [:pointer],
129
- :SDL_BuildAudioCVT => [:pointer, :ushort, :uchar, :int, :ushort, :uchar, :int],
130
- :SDL_ConvertAudio => [:pointer],
131
- :SDL_NewAudioStream => [:ushort, :uchar, :int, :ushort, :uchar, :int],
132
- :SDL_AudioStreamPut => [:pointer, :pointer, :int],
133
- :SDL_AudioStreamGet => [:pointer, :pointer, :int],
134
- :SDL_AudioStreamAvailable => [:pointer],
135
- :SDL_AudioStreamFlush => [:pointer],
136
- :SDL_AudioStreamClear => [:pointer],
137
- :SDL_FreeAudioStream => [:pointer],
138
- :SDL_MixAudio => [:pointer, :pointer, :uint, :int],
139
- :SDL_MixAudioFormat => [:pointer, :pointer, :ushort, :uint, :int],
140
- :SDL_QueueAudio => [:uint, :pointer, :uint],
141
- :SDL_DequeueAudio => [:uint, :pointer, :uint],
142
- :SDL_GetQueuedAudioSize => [:uint],
143
- :SDL_ClearQueuedAudio => [:uint],
144
- :SDL_LockAudio => [],
145
- :SDL_LockAudioDevice => [:uint],
146
- :SDL_UnlockAudio => [],
147
- :SDL_UnlockAudioDevice => [:uint],
148
- :SDL_CloseAudio => [],
149
- :SDL_CloseAudioDevice => [:uint],
150
- }
151
- retvals = {
152
- :SDL_GetNumAudioDrivers => :int,
153
- :SDL_GetAudioDriver => :pointer,
154
- :SDL_AudioInit => :int,
155
- :SDL_AudioQuit => :void,
156
- :SDL_GetCurrentAudioDriver => :pointer,
157
- :SDL_OpenAudio => :int,
158
- :SDL_GetNumAudioDevices => :int,
159
- :SDL_GetAudioDeviceName => :pointer,
160
- :SDL_OpenAudioDevice => :uint,
161
- :SDL_GetAudioStatus => :int,
162
- :SDL_GetAudioDeviceStatus => :int,
163
- :SDL_PauseAudio => :void,
164
- :SDL_PauseAudioDevice => :void,
165
- :SDL_LoadWAV_RW => :pointer,
166
- :SDL_FreeWAV => :void,
167
- :SDL_BuildAudioCVT => :int,
168
- :SDL_ConvertAudio => :int,
169
- :SDL_NewAudioStream => :pointer,
170
- :SDL_AudioStreamPut => :int,
171
- :SDL_AudioStreamGet => :int,
172
- :SDL_AudioStreamAvailable => :int,
173
- :SDL_AudioStreamFlush => :int,
174
- :SDL_AudioStreamClear => :void,
175
- :SDL_FreeAudioStream => :void,
176
- :SDL_MixAudio => :void,
177
- :SDL_MixAudioFormat => :void,
178
- :SDL_QueueAudio => :int,
179
- :SDL_DequeueAudio => :uint,
180
- :SDL_GetQueuedAudioSize => :uint,
181
- :SDL_ClearQueuedAudio => :void,
182
- :SDL_LockAudio => :void,
183
- :SDL_LockAudioDevice => :void,
184
- :SDL_UnlockAudio => :void,
185
- :SDL_UnlockAudioDevice => :void,
186
- :SDL_CloseAudio => :void,
187
- :SDL_CloseAudioDevice => :void,
188
- }
189
- symbols.each do |sym|
190
- begin
191
- attach_function sym, args[sym], retvals[sym]
192
- rescue FFI::NotFoundError => error
193
- $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
194
- end
195
- end
196
- end
197
-
198
- end
199
-
200
- # TODO : def SDL_LoadWAV
201
-
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
+ SDL_AUDIO_MASK_BITSIZE = 0xFF
14
+ SDL_AUDIO_MASK_DATATYPE = (1 << 8)
15
+ SDL_AUDIO_MASK_ENDIAN = (1 << 12)
16
+ SDL_AUDIO_MASK_SIGNED = (1 << 15)
17
+ AUDIO_U8 = 0x0008
18
+ AUDIO_S8 = 0x8008
19
+ AUDIO_U16LSB = 0x0010
20
+ AUDIO_S16LSB = 0x8010
21
+ AUDIO_U16MSB = 0x1010
22
+ AUDIO_S16MSB = 0x9010
23
+ AUDIO_U16 = AUDIO_U16LSB
24
+ AUDIO_S16 = AUDIO_S16LSB
25
+ AUDIO_S32LSB = 0x8020
26
+ AUDIO_S32MSB = 0x9020
27
+ AUDIO_S32 = AUDIO_S32LSB
28
+ AUDIO_F32LSB = 0x8120
29
+ AUDIO_F32MSB = 0x9120
30
+ AUDIO_F32 = AUDIO_F32LSB
31
+ AUDIO_U16SYS = AUDIO_U16LSB
32
+ AUDIO_S16SYS = AUDIO_S16LSB
33
+ AUDIO_S32SYS = AUDIO_S32LSB
34
+ AUDIO_F32SYS = AUDIO_F32LSB
35
+ SDL_AUDIO_ALLOW_FREQUENCY_CHANGE = 0x00000001
36
+ SDL_AUDIO_ALLOW_FORMAT_CHANGE = 0x00000002
37
+ SDL_AUDIO_ALLOW_CHANNELS_CHANGE = 0x00000004
38
+ SDL_AUDIO_ALLOW_SAMPLES_CHANGE = 0x00000008
39
+ SDL_AUDIO_ALLOW_ANY_CHANGE = (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE | SDL_AUDIO_ALLOW_FORMAT_CHANGE | SDL_AUDIO_ALLOW_CHANNELS_CHANGE | SDL_AUDIO_ALLOW_SAMPLES_CHANGE)
40
+ SDL_AUDIOCVT_MAX_FILTERS = 9
41
+ SDL_MIX_MAXVOLUME = 128
42
+
43
+ # Enum
44
+
45
+ SDL_AUDIO_STOPPED = 0
46
+ SDL_AUDIO_PLAYING = 1
47
+ SDL_AUDIO_PAUSED = 2
48
+
49
+ # Typedef
50
+
51
+ typedef :ushort, :SDL_AudioFormat
52
+ callback :SDL_AudioCallback, [:pointer, :pointer, :int], :void
53
+ callback :SDL_AudioFilter, [:pointer, :ushort], :void
54
+ typedef :uint, :SDL_AudioDeviceID
55
+ typedef :int, :SDL_AudioStatus
56
+
57
+ # Struct
58
+
59
+ class SDL_AudioSpec < FFI::Struct
60
+ layout(
61
+ :freq, :int,
62
+ :format, :ushort,
63
+ :channels, :uchar,
64
+ :silence, :uchar,
65
+ :samples, :ushort,
66
+ :padding, :ushort,
67
+ :size, :uint,
68
+ :callback, :pointer,
69
+ :userdata, :pointer,
70
+ )
71
+ end
72
+
73
+ class SDL_AudioCVT < FFI::Struct
74
+ layout(
75
+ :needed, :int,
76
+ :src_format, :ushort,
77
+ :dst_format, :ushort,
78
+ :rate_incr, :double,
79
+ :buf, :pointer,
80
+ :len, :int,
81
+ :len_cvt, :int,
82
+ :len_mult, :int,
83
+ :len_ratio, :double,
84
+ :filters, [:pointer, 10],
85
+ :filter_index, :int,
86
+ )
87
+ end
88
+
89
+
90
+ # Function
91
+
92
+ def self.setup_audio_symbols()
93
+ symbols = [
94
+ :SDL_GetNumAudioDrivers,
95
+ :SDL_GetAudioDriver,
96
+ :SDL_AudioInit,
97
+ :SDL_AudioQuit,
98
+ :SDL_GetCurrentAudioDriver,
99
+ :SDL_OpenAudio,
100
+ :SDL_GetNumAudioDevices,
101
+ :SDL_GetAudioDeviceName,
102
+ :SDL_GetAudioDeviceSpec,
103
+ :SDL_OpenAudioDevice,
104
+ :SDL_GetAudioStatus,
105
+ :SDL_GetAudioDeviceStatus,
106
+ :SDL_PauseAudio,
107
+ :SDL_PauseAudioDevice,
108
+ :SDL_LoadWAV_RW,
109
+ :SDL_FreeWAV,
110
+ :SDL_BuildAudioCVT,
111
+ :SDL_ConvertAudio,
112
+ :SDL_NewAudioStream,
113
+ :SDL_AudioStreamPut,
114
+ :SDL_AudioStreamGet,
115
+ :SDL_AudioStreamAvailable,
116
+ :SDL_AudioStreamFlush,
117
+ :SDL_AudioStreamClear,
118
+ :SDL_FreeAudioStream,
119
+ :SDL_MixAudio,
120
+ :SDL_MixAudioFormat,
121
+ :SDL_QueueAudio,
122
+ :SDL_DequeueAudio,
123
+ :SDL_GetQueuedAudioSize,
124
+ :SDL_ClearQueuedAudio,
125
+ :SDL_LockAudio,
126
+ :SDL_LockAudioDevice,
127
+ :SDL_UnlockAudio,
128
+ :SDL_UnlockAudioDevice,
129
+ :SDL_CloseAudio,
130
+ :SDL_CloseAudioDevice,
131
+ ]
132
+ args = {
133
+ :SDL_GetNumAudioDrivers => [],
134
+ :SDL_GetAudioDriver => [:int],
135
+ :SDL_AudioInit => [:pointer],
136
+ :SDL_AudioQuit => [],
137
+ :SDL_GetCurrentAudioDriver => [],
138
+ :SDL_OpenAudio => [:pointer, :pointer],
139
+ :SDL_GetNumAudioDevices => [:int],
140
+ :SDL_GetAudioDeviceName => [:int, :int],
141
+ :SDL_GetAudioDeviceSpec => [:int, :int, :pointer],
142
+ :SDL_OpenAudioDevice => [:pointer, :int, :pointer, :pointer, :int],
143
+ :SDL_GetAudioStatus => [],
144
+ :SDL_GetAudioDeviceStatus => [:uint],
145
+ :SDL_PauseAudio => [:int],
146
+ :SDL_PauseAudioDevice => [:uint, :int],
147
+ :SDL_LoadWAV_RW => [:pointer, :int, :pointer, :pointer, :pointer],
148
+ :SDL_FreeWAV => [:pointer],
149
+ :SDL_BuildAudioCVT => [:pointer, :ushort, :uchar, :int, :ushort, :uchar, :int],
150
+ :SDL_ConvertAudio => [:pointer],
151
+ :SDL_NewAudioStream => [:ushort, :uchar, :int, :ushort, :uchar, :int],
152
+ :SDL_AudioStreamPut => [:pointer, :pointer, :int],
153
+ :SDL_AudioStreamGet => [:pointer, :pointer, :int],
154
+ :SDL_AudioStreamAvailable => [:pointer],
155
+ :SDL_AudioStreamFlush => [:pointer],
156
+ :SDL_AudioStreamClear => [:pointer],
157
+ :SDL_FreeAudioStream => [:pointer],
158
+ :SDL_MixAudio => [:pointer, :pointer, :uint, :int],
159
+ :SDL_MixAudioFormat => [:pointer, :pointer, :ushort, :uint, :int],
160
+ :SDL_QueueAudio => [:uint, :pointer, :uint],
161
+ :SDL_DequeueAudio => [:uint, :pointer, :uint],
162
+ :SDL_GetQueuedAudioSize => [:uint],
163
+ :SDL_ClearQueuedAudio => [:uint],
164
+ :SDL_LockAudio => [],
165
+ :SDL_LockAudioDevice => [:uint],
166
+ :SDL_UnlockAudio => [],
167
+ :SDL_UnlockAudioDevice => [:uint],
168
+ :SDL_CloseAudio => [],
169
+ :SDL_CloseAudioDevice => [:uint],
170
+ }
171
+ retvals = {
172
+ :SDL_GetNumAudioDrivers => :int,
173
+ :SDL_GetAudioDriver => :pointer,
174
+ :SDL_AudioInit => :int,
175
+ :SDL_AudioQuit => :void,
176
+ :SDL_GetCurrentAudioDriver => :pointer,
177
+ :SDL_OpenAudio => :int,
178
+ :SDL_GetNumAudioDevices => :int,
179
+ :SDL_GetAudioDeviceName => :pointer,
180
+ :SDL_GetAudioDeviceSpec => :int,
181
+ :SDL_OpenAudioDevice => :uint,
182
+ :SDL_GetAudioStatus => :int,
183
+ :SDL_GetAudioDeviceStatus => :int,
184
+ :SDL_PauseAudio => :void,
185
+ :SDL_PauseAudioDevice => :void,
186
+ :SDL_LoadWAV_RW => :pointer,
187
+ :SDL_FreeWAV => :void,
188
+ :SDL_BuildAudioCVT => :int,
189
+ :SDL_ConvertAudio => :int,
190
+ :SDL_NewAudioStream => :pointer,
191
+ :SDL_AudioStreamPut => :int,
192
+ :SDL_AudioStreamGet => :int,
193
+ :SDL_AudioStreamAvailable => :int,
194
+ :SDL_AudioStreamFlush => :int,
195
+ :SDL_AudioStreamClear => :void,
196
+ :SDL_FreeAudioStream => :void,
197
+ :SDL_MixAudio => :void,
198
+ :SDL_MixAudioFormat => :void,
199
+ :SDL_QueueAudio => :int,
200
+ :SDL_DequeueAudio => :uint,
201
+ :SDL_GetQueuedAudioSize => :uint,
202
+ :SDL_ClearQueuedAudio => :void,
203
+ :SDL_LockAudio => :void,
204
+ :SDL_LockAudioDevice => :void,
205
+ :SDL_UnlockAudio => :void,
206
+ :SDL_UnlockAudioDevice => :void,
207
+ :SDL_CloseAudio => :void,
208
+ :SDL_CloseAudioDevice => :void,
209
+ }
210
+ symbols.each do |sym|
211
+ begin
212
+ attach_function sym, args[sym], retvals[sym]
213
+ rescue FFI::NotFoundError => error
214
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
215
+ end
216
+ end
217
+ end
218
+
219
+ end
220
+
221
+ # TODO : def SDL_LoadWAV
222
+
@@ -1,69 +1,69 @@
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_BLENDMODE_NONE = 0
17
- SDL_BLENDMODE_BLEND = 1
18
- SDL_BLENDMODE_ADD = 2
19
- SDL_BLENDMODE_MOD = 4
20
- SDL_BLENDMODE_MUL = 8
21
- SDL_BLENDMODE_INVALID = 2147483647
22
- SDL_BLENDOPERATION_ADD = 1
23
- SDL_BLENDOPERATION_SUBTRACT = 2
24
- SDL_BLENDOPERATION_REV_SUBTRACT = 3
25
- SDL_BLENDOPERATION_MINIMUM = 4
26
- SDL_BLENDOPERATION_MAXIMUM = 5
27
- SDL_BLENDFACTOR_ZERO = 1
28
- SDL_BLENDFACTOR_ONE = 2
29
- SDL_BLENDFACTOR_SRC_COLOR = 3
30
- SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 4
31
- SDL_BLENDFACTOR_SRC_ALPHA = 5
32
- SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 6
33
- SDL_BLENDFACTOR_DST_COLOR = 7
34
- SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 8
35
- SDL_BLENDFACTOR_DST_ALPHA = 9
36
- SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 10
37
-
38
- # Typedef
39
-
40
- typedef :int, :SDL_BlendMode
41
- typedef :int, :SDL_BlendOperation
42
- typedef :int, :SDL_BlendFactor
43
-
44
- # Struct
45
-
46
-
47
- # Function
48
-
49
- def self.setup_blendmode_symbols()
50
- symbols = [
51
- :SDL_ComposeCustomBlendMode,
52
- ]
53
- args = {
54
- :SDL_ComposeCustomBlendMode => [:int, :int, :int, :int, :int, :int],
55
- }
56
- retvals = {
57
- :SDL_ComposeCustomBlendMode => :int,
58
- }
59
- symbols.each do |sym|
60
- begin
61
- attach_function sym, args[sym], retvals[sym]
62
- rescue FFI::NotFoundError => error
63
- $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
64
- end
65
- end
66
- end
67
-
68
- end
69
-
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_BLENDMODE_NONE = 0
17
+ SDL_BLENDMODE_BLEND = 1
18
+ SDL_BLENDMODE_ADD = 2
19
+ SDL_BLENDMODE_MOD = 4
20
+ SDL_BLENDMODE_MUL = 8
21
+ SDL_BLENDMODE_INVALID = 2147483647
22
+ SDL_BLENDOPERATION_ADD = 1
23
+ SDL_BLENDOPERATION_SUBTRACT = 2
24
+ SDL_BLENDOPERATION_REV_SUBTRACT = 3
25
+ SDL_BLENDOPERATION_MINIMUM = 4
26
+ SDL_BLENDOPERATION_MAXIMUM = 5
27
+ SDL_BLENDFACTOR_ZERO = 1
28
+ SDL_BLENDFACTOR_ONE = 2
29
+ SDL_BLENDFACTOR_SRC_COLOR = 3
30
+ SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 4
31
+ SDL_BLENDFACTOR_SRC_ALPHA = 5
32
+ SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 6
33
+ SDL_BLENDFACTOR_DST_COLOR = 7
34
+ SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 8
35
+ SDL_BLENDFACTOR_DST_ALPHA = 9
36
+ SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 10
37
+
38
+ # Typedef
39
+
40
+ typedef :int, :SDL_BlendMode
41
+ typedef :int, :SDL_BlendOperation
42
+ typedef :int, :SDL_BlendFactor
43
+
44
+ # Struct
45
+
46
+
47
+ # Function
48
+
49
+ def self.setup_blendmode_symbols()
50
+ symbols = [
51
+ :SDL_ComposeCustomBlendMode,
52
+ ]
53
+ args = {
54
+ :SDL_ComposeCustomBlendMode => [:int, :int, :int, :int, :int, :int],
55
+ }
56
+ retvals = {
57
+ :SDL_ComposeCustomBlendMode => :int,
58
+ }
59
+ symbols.each do |sym|
60
+ begin
61
+ attach_function sym, args[sym], retvals[sym]
62
+ rescue FFI::NotFoundError => error
63
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
64
+ end
65
+ end
66
+ end
67
+
68
+ end
69
+
@@ -1,51 +1,51 @@
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_clipboard_symbols()
26
- symbols = [
27
- :SDL_SetClipboardText,
28
- :SDL_GetClipboardText,
29
- :SDL_HasClipboardText,
30
- ]
31
- args = {
32
- :SDL_SetClipboardText => [:pointer],
33
- :SDL_GetClipboardText => [],
34
- :SDL_HasClipboardText => [],
35
- }
36
- retvals = {
37
- :SDL_SetClipboardText => :int,
38
- :SDL_GetClipboardText => :pointer,
39
- :SDL_HasClipboardText => :int,
40
- }
41
- symbols.each do |sym|
42
- begin
43
- attach_function sym, args[sym], retvals[sym]
44
- rescue FFI::NotFoundError => error
45
- $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
46
- end
47
- end
48
- end
49
-
50
- end
51
-
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_clipboard_symbols()
26
+ symbols = [
27
+ :SDL_SetClipboardText,
28
+ :SDL_GetClipboardText,
29
+ :SDL_HasClipboardText,
30
+ ]
31
+ args = {
32
+ :SDL_SetClipboardText => [:pointer],
33
+ :SDL_GetClipboardText => [],
34
+ :SDL_HasClipboardText => [],
35
+ }
36
+ retvals = {
37
+ :SDL_SetClipboardText => :int,
38
+ :SDL_GetClipboardText => :pointer,
39
+ :SDL_HasClipboardText => :int,
40
+ }
41
+ symbols.each do |sym|
42
+ begin
43
+ attach_function sym, args[sym], retvals[sym]
44
+ rescue FFI::NotFoundError => error
45
+ $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
46
+ end
47
+ end
48
+ end
49
+
50
+ end
51
+