sfml-audio-fiddle 0.0.0 → 0.1.0

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