sfml-audio-fiddle 0.0.0 → 0.1.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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sfml/audio.rb +212 -229
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bc0fadf79bec79e3a75cd38a8a3930dc9025587f
4
- data.tar.gz: 4b8a052803cca5a16657c60369c0dae89afb1d9b
3
+ metadata.gz: 88dc8312d6a01e5dab8d181c7ba17d6b464d45db
4
+ data.tar.gz: db9a60c49ed24e417bb477f8a7e995b00e7548fc
5
5
  SHA512:
6
- metadata.gz: ca403cc6e2ec7e2ae527db8e598ce040ba78160064057f05743697b1c0e45bc2bfa1fb7f105bb7d76eb79c9816c0793d0c2579868ff9d6274142dc07ea2f018c
7
- data.tar.gz: a82f4c2620e6e6e41dd1619259a42fa7e748e4fe4e2afec546af0453ce6abcadf2adc86d3fe238cd0d3b2bc2beedf9bf200cb95d2d46ac9450a7cb8c25afc139
6
+ metadata.gz: 9b2fa6a5939138348b459ecd2dd0aabe996efeabf9acf868ea02a466a5cc5a79c21e82a8343be061b7feb19c1c3cb0245de7d5fd8d23e83f85d4687638dc54d6
7
+ data.tar.gz: e1a30d79c1780b0747401b492be6007903cf8b306cd0b03d08b2f58e12c57c3c8817eb040e94f9ed6b2520c2639b7d3e4f6469915a71fd15c54a4ddc86bef59a
@@ -1,229 +1,212 @@
1
- require 'fiddle/import'
2
-
3
-
4
- module SFMLImporter
5
- extend Fiddle::Importer
6
- dlload 'csfml-audio-2'
7
-
8
- SFSTOPPED = 0
9
- SFPAUSED = 1
10
- SFPLAYING = 2
11
-
12
- extern 'void* sfSoundBuffer_createFromFile(const char*)'
13
- extern 'void* sfSoundBuffer_destroy(void*)'
14
- extern 'int sfSoundBuffer_getDuration(void*)'
15
-
16
- extern 'void* sfSound_create()'
17
- extern 'void* sfSound_copy(void*)'
18
- extern 'void sfSound_destroy(void*)'
19
- extern 'void sfSound_setBuffer(void*, const void*)'
20
- #extern 'cosnt void* sfSound_getBuffer(const void*)'
21
- extern 'void sfSound_stop(void*)'
22
- extern 'void sfSound_play(void*)'
23
- extern 'void sfSound_pause(void*)'
24
- extern 'long long sfSound_getStatus(void*)'
25
- extern 'void sfSound_setLoop(void*, int)'
26
- extern 'int sfSound_getLoop(void*)'
27
- extern 'void sfSound_setPitch(void*, float)'
28
- extern 'float sfSound_getPitch(void*)'
29
- extern 'void sfSound_setVolume(void*, float)'
30
- extern 'float sfSound_getVolume(void*)'
31
- extern 'void sfSound_setPlayingOffset(void*, long long)'
32
- extern 'long long sfSound_getPlayingOffset(void*)'
33
-
34
- extern 'void* sfMusic_createFromFile(const char*)'
35
- extern 'void sfMusic_destroy(void*)'
36
- extern 'void sfMusic_setLoop(void*, int)'
37
- extern 'int sfMusic_getLoop(void*)'
38
- extern 'void sfMusic_play(void*)'
39
- extern 'void sfMusic_pause(void*)'
40
- extern 'void sfMusic_stop(void*)'
41
- extern 'long long sfMusic_getDuration(void*)'
42
- extern 'int sfMusic_getStatus(void*)'
43
- extern 'void sfMusic_setPlayingOffset(void*, long long)'
44
- extern 'long long sfMusic_getPlayingOffset(void*)'
45
- extern 'void sfMusic_setPitch(void*, float)'
46
- extern 'float sfMusic_getPitch(void*)'
47
- extern 'void sfMusic_setVolume(void*, float)'
48
- extern 'float sfMusic_getVolume(void*)'
49
- end
50
-
51
-
52
- module SFML
53
- end
54
-
55
-
56
- class SFML::SoundBuffer
57
- def self.dtor
58
- proc { |id|
59
- SFMLImporter.sfSoundBuffer_destroy(id)
60
- }
61
- end
62
-
63
- attr_reader :buffer
64
- def failed? ; @failed end
65
-
66
- def initialize(filename)
67
- @buffer = SFMLImporter.sfSoundBuffer_createFromFile(filename)
68
- @failed = if @buffer.null?
69
- true
70
- else
71
- ObjectSpace.define_finalizer @buffer, SFML::SoundBuffer.dtor
72
- false
73
- end
74
- end
75
- def get_duration
76
- SFMLImporter.sfSoundBuffer_getDuration(@buffer) / 1000000.0
77
- end
78
- end
79
-
80
-
81
- class SFML::Sound
82
- def self.dtor
83
- proc { |id|
84
- SFMLImporter.sfSound_stop(id)
85
- SFMLImporter.sfSound_destroy(id)
86
- }
87
- end
88
-
89
- attr_reader :sound
90
- def failed? ; @failed end
91
-
92
- def initialize(buffer=nil)
93
- @sound = SFMLImporter.sfSound_create()
94
- @failed = @sound.null?
95
- if @failed
96
- return
97
- else
98
- @buffer = buffer
99
- if buffer
100
- SFMLImporter.sfSound_setBuffer(@sound, buffer.buffer)
101
- end
102
- ObjectSpace.define_finalizer @sound, SFML::Sound.dtor
103
- end
104
- end
105
- def initialize_copy(obj)
106
- @sound = SFMLImporter.sfSound_copy(obj.sound)
107
- @buffer = obj.buffer
108
- end
109
- def set_buffer(buffer)
110
- @buffer = buffer
111
- SFMLImporter.sfSound_setBuffer(@sound, buffer.buffer)
112
- end
113
- def get_buffer
114
- @buffer
115
- end
116
- def play
117
- SFMLImporter.sfSound_play(@sound)
118
- end
119
- def pause
120
- SFMLImporter.sfSound_pause(@sound)
121
- end
122
- def stop
123
- SFMLImporter.sfSound_stop(@sound)
124
- end
125
- def get_status
126
- case SFMLImporter.sfSound_getStatus(@sound)
127
- when SFMLImporter::SFSTOPPED
128
- :stopped
129
- when SFMLImporter::SFPAUSED
130
- :paused
131
- when SFMLImporter::SFPLAYING
132
- :playing
133
- end
134
- end
135
- def set_loop(b)
136
- SFMLImporter.sfSound_setLoop(@sound, (b ? 1 : 0))
137
- end
138
- def get_loop
139
- SFMLImporter.sfSound_getLoop(@sound) > 0
140
- end
141
- def set_pitch(f)
142
- SFMLImporter.sfSound_setPitch(@sound, f)
143
- end
144
- def get_pitch
145
- SFMLImporter.sfSound_getPitch(@sound)
146
- end
147
- def set_volume(f)
148
- SFMLImporter.sfSound_setVolume(@sound, f)
149
- end
150
- def get_volume
151
- SFMLImporter.sfSound_getVolume(@sound)
152
- end
153
- def set_playing_offset(time)
154
- SFMLImporter.sfSound_setPlayingOffset(@sound, time * 1000000.0)
155
- end
156
- def get_playing_offset
157
- SFMLImporter.sfSound_getPlayingOffset(@sound) / 1000000.0
158
- end
159
- end
160
-
161
- class SFML::Music
162
- def self.dtor
163
- proc { |id|
164
- SFMLImporter.sfMusic_stop(id)
165
- SFMLImporter.sfMusic_destroy(id)
166
- }
167
- end
168
-
169
- def failed? ; @failed end
170
-
171
- def initialize(filename)
172
- @music = SFMLImporter.sfMusic_createFromFile(filename)
173
- @failed = if @music.null?
174
- true
175
- else
176
- ObjectSpace.define_finalizer @music, SFML::Music.dtor
177
- false
178
- end
179
- end
180
-
181
- def set_loop(b)
182
- SFMLImporter.sfMusic_setLoop(@music, (b ? 1 : 0))
183
- end
184
- def get_loop
185
- SFMLImporter.sfMusic_getLoop > 0
186
- end
187
- def play
188
- SFMLImporter.sfMusic_play(@music)
189
- end
190
- def pause
191
- SFMLImporter.sfMusic_pause(@music)
192
- end
193
- def stop
194
- SFMLImporter.sfMusic_stop(@music)
195
- end
196
- def get_duration
197
- SFMLImporter.sfMusic_getDuration(@music) / 1000000.0
198
- end
199
- def get_status
200
- r = SFMLImporter.sfMusic_getStatus(@music)
201
- case r
202
- when SFMLImporter::SFSTOPPED
203
- :stopped
204
- when SFMLImporter::SFPAUSED
205
- :paused
206
- when SFMLImporter::SFPLAYING
207
- :playing
208
- end
209
- end
210
- def set_playing_offset(time)
211
- SFMLImporter.sfMusic_setPlayingOffset(@music, time * 1000000.0)
212
- end
213
- def get_playing_offset
214
- SFMLImporter.sfMusic_getPlayingOffset(@music) / 1000000.0
215
- end
216
- def set_pitch(f)
217
- SFMLImporter.sfMusic_setPitch(@music, f)
218
- end
219
- def get_pitch
220
- SFMLImporter.sfMusic_getPitch(@music)
221
- end
222
- def set_volume(f)
223
- SFMLImporter.sfMusic_setVolume(@music, f)
224
- end
225
- def get_volume
226
- SFMLImporter.sfMusic_getVolume(@music)
227
- end
228
- end
229
-
1
+ require 'fiddle/import'
2
+
3
+
4
+ module SFMLImporter
5
+ extend Fiddle::Importer
6
+ dlload 'csfml-audio-2'
7
+
8
+ SFSTOPPED = 0
9
+ SFPAUSED = 1
10
+ SFPLAYING = 2
11
+
12
+ extern 'void* sfSoundBuffer_createFromFile(const char*)'
13
+ extern 'void* sfSoundBuffer_destroy(void*)'
14
+ extern 'int sfSoundBuffer_getDuration(void*)'
15
+
16
+ extern 'void* sfSound_create()'
17
+ extern 'void* sfSound_copy(void*)'
18
+ extern 'void sfSound_destroy(void*)'
19
+ extern 'void sfSound_setBuffer(void*, const void*)'
20
+ #extern 'cosnt void* sfSound_getBuffer(const void*)'
21
+ extern 'void sfSound_stop(void*)'
22
+ extern 'void sfSound_play(void*)'
23
+ extern 'void sfSound_pause(void*)'
24
+ extern 'long long sfSound_getStatus(void*)'
25
+ extern 'void sfSound_setLoop(void*, int)'
26
+ extern 'int sfSound_getLoop(void*)'
27
+ extern 'void sfSound_setPitch(void*, float)'
28
+ extern 'float sfSound_getPitch(void*)'
29
+ extern 'void sfSound_setVolume(void*, float)'
30
+ extern 'float sfSound_getVolume(void*)'
31
+ extern 'void sfSound_setPlayingOffset(void*, long long)'
32
+ extern 'long long sfSound_getPlayingOffset(void*)'
33
+
34
+ extern 'void* sfMusic_createFromFile(const char*)'
35
+ extern 'void sfMusic_destroy(void*)'
36
+ extern 'void sfMusic_setLoop(void*, int)'
37
+ extern 'int sfMusic_getLoop(void*)'
38
+ extern 'void sfMusic_play(void*)'
39
+ extern 'void sfMusic_pause(void*)'
40
+ extern 'void sfMusic_stop(void*)'
41
+ extern 'long long sfMusic_getDuration(void*)'
42
+ extern 'int sfMusic_getStatus(void*)'
43
+ extern 'void sfMusic_setPlayingOffset(void*, long long)'
44
+ extern 'long long sfMusic_getPlayingOffset(void*)'
45
+ extern 'void sfMusic_setPitch(void*, float)'
46
+ extern 'float sfMusic_getPitch(void*)'
47
+ extern 'void sfMusic_setVolume(void*, float)'
48
+ extern 'float sfMusic_getVolume(void*)'
49
+ end
50
+
51
+
52
+ module SFML
53
+ end
54
+
55
+
56
+ class SFML::SoundBuffer
57
+ def self.dtor
58
+ proc { |id|
59
+ SFMLImporter.sfSoundBuffer_destroy(id)
60
+ }
61
+ end
62
+
63
+ attr_reader :buffer
64
+
65
+ def initialize(filename)
66
+ @buffer = SFMLImporter.sfSoundBuffer_createFromFile(filename)
67
+ raise"Couldn't load #{filename}" if @buffer.null?
68
+ ObjectSpace.define_finalizer @buffer, SFML::SoundBuffer.dtor
69
+ end
70
+ def get_duration
71
+ SFMLImporter.sfSoundBuffer_getDuration(@buffer) / 1000000.0
72
+ end
73
+ end
74
+
75
+
76
+ class SFML::Sound
77
+ def self.dtor
78
+ proc { |id|
79
+ SFMLImporter.sfSound_stop(id)
80
+ SFMLImporter.sfSound_destroy(id)
81
+ }
82
+ end
83
+
84
+ attr_reader :sound
85
+
86
+ def initialize(buffer=nil)
87
+ @sound = SFMLImporter.sfSound_create()
88
+ raise "Failed create SFML::Sound" if @sound.null?
89
+ @buffer = buffer
90
+ if buffer
91
+ SFMLImporter.sfSound_setBuffer(@sound, buffer.buffer)
92
+ end
93
+ ObjectSpace.define_finalizer @sound, SFML::Sound.dtor
94
+ end
95
+ def initialize_copy(obj)
96
+ @sound = SFMLImporter.sfSound_copy(obj.sound)
97
+ @buffer = obj.buffer
98
+ end
99
+ def set_buffer(buffer)
100
+ @buffer = buffer
101
+ SFMLImporter.sfSound_setBuffer(@sound, buffer.buffer)
102
+ end
103
+ def get_buffer
104
+ @buffer
105
+ end
106
+ def play
107
+ SFMLImporter.sfSound_play(@sound)
108
+ end
109
+ def pause
110
+ SFMLImporter.sfSound_pause(@sound)
111
+ end
112
+ def stop
113
+ SFMLImporter.sfSound_stop(@sound)
114
+ end
115
+ def get_status
116
+ case SFMLImporter.sfSound_getStatus(@sound)
117
+ when SFMLImporter::SFSTOPPED
118
+ :stopped
119
+ when SFMLImporter::SFPAUSED
120
+ :paused
121
+ when SFMLImporter::SFPLAYING
122
+ :playing
123
+ end
124
+ end
125
+ def set_loop(b)
126
+ SFMLImporter.sfSound_setLoop(@sound, (b ? 1 : 0))
127
+ end
128
+ def get_loop
129
+ SFMLImporter.sfSound_getLoop(@sound) > 0
130
+ end
131
+ def set_pitch(f)
132
+ SFMLImporter.sfSound_setPitch(@sound, f)
133
+ end
134
+ def get_pitch
135
+ SFMLImporter.sfSound_getPitch(@sound)
136
+ end
137
+ def set_volume(f)
138
+ SFMLImporter.sfSound_setVolume(@sound, f)
139
+ end
140
+ def get_volume
141
+ SFMLImporter.sfSound_getVolume(@sound)
142
+ end
143
+ def set_playing_offset(time)
144
+ SFMLImporter.sfSound_setPlayingOffset(@sound, time * 1000000.0)
145
+ end
146
+ def get_playing_offset
147
+ SFMLImporter.sfSound_getPlayingOffset(@sound) / 1000000.0
148
+ end
149
+ end
150
+
151
+ class SFML::Music
152
+ def self.dtor
153
+ proc { |id|
154
+ SFMLImporter.sfMusic_stop(id)
155
+ SFMLImporter.sfMusic_destroy(id)
156
+ }
157
+ end
158
+
159
+ def initialize(filename)
160
+ @music = SFMLImporter.sfMusic_createFromFile(filename)
161
+ raise "Couldn't load #{filename}" if @music.null?
162
+ ObjectSpace.define_finalizer @music, SFML::Music.dtor
163
+ end
164
+
165
+ def set_loop(b)
166
+ SFMLImporter.sfMusic_setLoop(@music, (b ? 1 : 0))
167
+ end
168
+ def get_loop
169
+ SFMLImporter.sfMusic_getLoop > 0
170
+ end
171
+ def play
172
+ SFMLImporter.sfMusic_play(@music)
173
+ end
174
+ def pause
175
+ SFMLImporter.sfMusic_pause(@music)
176
+ end
177
+ def stop
178
+ SFMLImporter.sfMusic_stop(@music)
179
+ end
180
+ def get_duration
181
+ SFMLImporter.sfMusic_getDuration(@music) / 1000000.0
182
+ end
183
+ def get_status
184
+ r = SFMLImporter.sfMusic_getStatus(@music)
185
+ case r
186
+ when SFMLImporter::SFSTOPPED
187
+ :stopped
188
+ when SFMLImporter::SFPAUSED
189
+ :paused
190
+ when SFMLImporter::SFPLAYING
191
+ :playing
192
+ end
193
+ end
194
+ def set_playing_offset(time)
195
+ SFMLImporter.sfMusic_setPlayingOffset(@music, time * 1000000.0)
196
+ end
197
+ def get_playing_offset
198
+ SFMLImporter.sfMusic_getPlayingOffset(@music) / 1000000.0
199
+ end
200
+ def set_pitch(f)
201
+ SFMLImporter.sfMusic_setPitch(@music, f)
202
+ end
203
+ def get_pitch
204
+ SFMLImporter.sfMusic_getPitch(@music)
205
+ end
206
+ def set_volume(f)
207
+ SFMLImporter.sfMusic_setVolume(@music, f)
208
+ end
209
+ def get_volume
210
+ SFMLImporter.sfMusic_getVolume(@music)
211
+ end
212
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sfml-audio-fiddle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - birthggd
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-31 00:00:00.000000000 Z
11
+ date: 2017-01-12 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Ruby binding for SFML2 Audio
14
14
  email:
@@ -37,7 +37,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
37
37
  version: '0'
38
38
  requirements: []
39
39
  rubyforge_project:
40
- rubygems_version: 2.4.5
40
+ rubygems_version: 2.5.1
41
41
  signing_key:
42
42
  specification_version: 4
43
43
  summary: Ruby binding for SFML2 Audio