midilib 2.0.5 → 3.0.1
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.
- checksums.yaml +5 -5
- data/ChangeLog +2 -1
- data/Credits +39 -2
- data/README.rdoc +5 -6
- data/Rakefile +36 -49
- data/TODO.rdoc +13 -2
- data/examples/from_scratch.rb +1 -1
- data/examples/measures_mbt.rb +11 -11
- data/examples/print_program_changes.rb +2 -2
- data/examples/reader2text.rb +47 -47
- data/examples/seq2text.rb +1 -1
- data/examples/split.rb +4 -3
- data/examples/strings.rb +4 -4
- data/examples/transpose.rb +19 -20
- data/install.rb +21 -13
- data/lib/midilib/consts.rb +237 -239
- data/lib/midilib/event.rb +128 -100
- data/lib/midilib/info.rb +3 -5
- data/lib/midilib/io/midifile.rb +155 -182
- data/lib/midilib/io/seqreader.rb +80 -85
- data/lib/midilib/io/seqwriter.rb +93 -88
- data/lib/midilib/measure.rb +78 -80
- data/lib/midilib/mergesort.rb +39 -0
- data/lib/midilib/sequence.rb +40 -32
- data/lib/midilib/track.rb +16 -57
- data/lib/midilib/utils.rb +4 -7
- data/lib/midilib.rb +5 -5
- data/test/event_equality.rb +28 -30
- data/test/test_event.rb +9 -11
- data/test/test_io.rb +83 -3
- data/test/test_mergesort.rb +37 -0
- data/test/test_midifile.rb +6 -19
- data/test/test_sequence.rb +5 -4
- data/test/test_track.rb +9 -38
- data/test/test_varlen.rb +1 -3
- metadata +8 -95
- data/html/IO.html +0 -155
- data/html/MIDI/ActiveSense.html +0 -206
- data/html/MIDI/ChannelEvent.html +0 -231
- data/html/MIDI/ChannelPressure.html +0 -265
- data/html/MIDI/Clock.html +0 -206
- data/html/MIDI/Continue.html +0 -206
- data/html/MIDI/Controller.html +0 -280
- data/html/MIDI/Event.html +0 -489
- data/html/MIDI/IO/MIDIFile.html +0 -2024
- data/html/MIDI/IO/SeqReader.html +0 -904
- data/html/MIDI/IO/SeqWriter.html +0 -572
- data/html/MIDI/IO.html +0 -95
- data/html/MIDI/KeySig.html +0 -353
- data/html/MIDI/MIDI/MIDI/Array.html +0 -255
- data/html/MIDI/MIDI/MIDI.html +0 -95
- data/html/MIDI/MIDI.html +0 -95
- data/html/MIDI/Marker.html +0 -158
- data/html/MIDI/Measure.html +0 -328
- data/html/MIDI/Measures.html +0 -285
- data/html/MIDI/MetaEvent.html +0 -461
- data/html/MIDI/NoteEvent.html +0 -331
- data/html/MIDI/NoteOff.html +0 -228
- data/html/MIDI/NoteOn.html +0 -228
- data/html/MIDI/PitchBend.html +0 -266
- data/html/MIDI/PolyPressure.html +0 -277
- data/html/MIDI/ProgramChange.html +0 -265
- data/html/MIDI/Realtime.html +0 -242
- data/html/MIDI/Sequence.html +0 -896
- data/html/MIDI/SongPointer.html +0 -266
- data/html/MIDI/SongSelect.html +0 -265
- data/html/MIDI/Start.html +0 -206
- data/html/MIDI/Stop.html +0 -206
- data/html/MIDI/SystemCommon.html +0 -158
- data/html/MIDI/SystemExclusive.html +0 -268
- data/html/MIDI/SystemReset.html +0 -206
- data/html/MIDI/Tempo.html +0 -396
- data/html/MIDI/TimeSig.html +0 -388
- data/html/MIDI/Track.html +0 -695
- data/html/MIDI/TuneRequest.html +0 -242
- data/html/MIDI/Utils.html +0 -220
- data/html/MIDI.html +0 -547
- data/html/README_rdoc.html +0 -731
- data/html/TODO_rdoc.html +0 -125
- data/html/created.rid +0 -14
- data/html/css/fonts.css +0 -167
- data/html/css/rdoc.css +0 -590
- data/html/fonts/Lato-Light.ttf +0 -0
- data/html/fonts/Lato-LightItalic.ttf +0 -0
- data/html/fonts/Lato-Regular.ttf +0 -0
- data/html/fonts/Lato-RegularItalic.ttf +0 -0
- data/html/fonts/SourceCodePro-Bold.ttf +0 -0
- data/html/fonts/SourceCodePro-Regular.ttf +0 -0
- data/html/images/add.png +0 -0
- data/html/images/arrow_up.png +0 -0
- data/html/images/brick.png +0 -0
- data/html/images/brick_link.png +0 -0
- data/html/images/bug.png +0 -0
- data/html/images/bullet_black.png +0 -0
- data/html/images/bullet_toggle_minus.png +0 -0
- data/html/images/bullet_toggle_plus.png +0 -0
- data/html/images/date.png +0 -0
- data/html/images/delete.png +0 -0
- data/html/images/find.png +0 -0
- data/html/images/loadingAnimation.gif +0 -0
- data/html/images/macFFBgHack.png +0 -0
- data/html/images/package.png +0 -0
- data/html/images/page_green.png +0 -0
- data/html/images/page_white_text.png +0 -0
- data/html/images/page_white_width.png +0 -0
- data/html/images/plugin.png +0 -0
- data/html/images/ruby.png +0 -0
- data/html/images/tag_blue.png +0 -0
- data/html/images/tag_green.png +0 -0
- data/html/images/transparent.png +0 -0
- data/html/images/wrench.png +0 -0
- data/html/images/wrench_orange.png +0 -0
- data/html/images/zoom.png +0 -0
- data/html/index.html +0 -768
- data/html/js/darkfish.js +0 -161
- data/html/js/jquery.js +0 -4
- data/html/js/navigation.js +0 -142
- data/html/js/navigation.js.gz +0 -0
- data/html/js/search.js +0 -109
- data/html/js/search_index.js +0 -1
- data/html/js/search_index.js.gz +0 -0
- data/html/js/searcher.js +0 -228
- data/html/js/searcher.js.gz +0 -0
- data/html/table_of_contents.html +0 -1265
data/html/MIDI/TuneRequest.html
DELETED
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
|
|
3
|
-
<html>
|
|
4
|
-
<head>
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
|
|
7
|
-
<title>class MIDI::TuneRequest - midilib</title>
|
|
8
|
-
|
|
9
|
-
<script type="text/javascript">
|
|
10
|
-
var rdoc_rel_prefix = "../";
|
|
11
|
-
</script>
|
|
12
|
-
|
|
13
|
-
<script src="../js/jquery.js"></script>
|
|
14
|
-
<script src="../js/darkfish.js"></script>
|
|
15
|
-
|
|
16
|
-
<link href="../css/fonts.css" rel="stylesheet">
|
|
17
|
-
<link href="../css/rdoc.css" rel="stylesheet">
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<body id="top" role="document" class="class">
|
|
22
|
-
<nav role="navigation">
|
|
23
|
-
<div id="project-navigation">
|
|
24
|
-
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
|
25
|
-
<h2>
|
|
26
|
-
<a href="../index.html" rel="home">Home</a>
|
|
27
|
-
</h2>
|
|
28
|
-
|
|
29
|
-
<div id="table-of-contents-navigation">
|
|
30
|
-
<a href="../table_of_contents.html#pages">Pages</a>
|
|
31
|
-
<a href="../table_of_contents.html#classes">Classes</a>
|
|
32
|
-
<a href="../table_of_contents.html#methods">Methods</a>
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
|
|
36
|
-
<div id="search-section" role="search" class="project-section initially-hidden">
|
|
37
|
-
<form action="#" method="get" accept-charset="utf-8">
|
|
38
|
-
<div id="search-field-wrapper">
|
|
39
|
-
<input id="search-field" role="combobox" aria-label="Search"
|
|
40
|
-
aria-autocomplete="list" aria-controls="search-results"
|
|
41
|
-
type="text" name="search" placeholder="Search" spellcheck="false"
|
|
42
|
-
title="Type to search, Up and Down to navigate, Enter to load">
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
<ul id="search-results" aria-label="Search Results"
|
|
46
|
-
aria-busy="false" aria-expanded="false"
|
|
47
|
-
aria-atomic="false" class="initially-hidden"></ul>
|
|
48
|
-
</form>
|
|
49
|
-
</div>
|
|
50
|
-
|
|
51
|
-
</div>
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
<div id="class-metadata">
|
|
56
|
-
|
|
57
|
-
<div id="parent-class-section" class="nav-section">
|
|
58
|
-
<h3>Parent</h3>
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
<p class="link"><a href="SystemCommon.html">MIDI::SystemCommon</a>
|
|
62
|
-
|
|
63
|
-
</div>
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
<!-- Method Quickref -->
|
|
68
|
-
<div id="method-list-section" class="nav-section">
|
|
69
|
-
<h3>Methods</h3>
|
|
70
|
-
|
|
71
|
-
<ul class="link-list" role="directory">
|
|
72
|
-
|
|
73
|
-
<li class="calls-super" ><a href="#method-c-new">::new</a>
|
|
74
|
-
|
|
75
|
-
<li ><a href="#method-i-data_as_bytes">#data_as_bytes</a>
|
|
76
|
-
|
|
77
|
-
<li class="calls-super" ><a href="#method-i-to_s">#to_s</a>
|
|
78
|
-
|
|
79
|
-
</ul>
|
|
80
|
-
</div>
|
|
81
|
-
|
|
82
|
-
</div>
|
|
83
|
-
</nav>
|
|
84
|
-
|
|
85
|
-
<main role="main" aria-labelledby="class-MIDI::TuneRequest">
|
|
86
|
-
<h1 id="class-MIDI::TuneRequest" class="class">
|
|
87
|
-
class MIDI::TuneRequest
|
|
88
|
-
</h1>
|
|
89
|
-
|
|
90
|
-
<section class="description">
|
|
91
|
-
|
|
92
|
-
</section>
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
<section id="5Buntitled-5D" class="documentation-section">
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
|
108
|
-
<header>
|
|
109
|
-
<h3>Public Class Methods</h3>
|
|
110
|
-
</header>
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
<div id="method-c-new" class="method-detail ">
|
|
114
|
-
|
|
115
|
-
<div class="method-heading">
|
|
116
|
-
<span class="method-name">new</span><span
|
|
117
|
-
class="method-args">(delta_time = 0)</span>
|
|
118
|
-
|
|
119
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
120
|
-
|
|
121
|
-
</div>
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
<div class="method-description">
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
<div class="method-calls-super">
|
|
130
|
-
Calls superclass method
|
|
131
|
-
<a href="SystemCommon.html#method-c-new">MIDI::SystemCommon.new</a>
|
|
132
|
-
</div>
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
<div class="method-source-code" id="new-source">
|
|
137
|
-
<pre><span class="ruby-comment"># File lib/midilib/event.rb, line 328</span>
|
|
138
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">delta_time</span> = <span class="ruby-value">0</span>)
|
|
139
|
-
<span class="ruby-keyword">super</span>(<span class="ruby-constant">TUNE_REQUEST</span>, <span class="ruby-identifier">delta_time</span>)
|
|
140
|
-
<span class="ruby-keyword">end</span></pre>
|
|
141
|
-
</div>
|
|
142
|
-
|
|
143
|
-
</div>
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
</div>
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
</section>
|
|
152
|
-
|
|
153
|
-
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
|
154
|
-
<header>
|
|
155
|
-
<h3>Public Instance Methods</h3>
|
|
156
|
-
</header>
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
<div id="method-i-data_as_bytes" class="method-detail ">
|
|
160
|
-
|
|
161
|
-
<div class="method-heading">
|
|
162
|
-
<span class="method-name">data_as_bytes</span><span
|
|
163
|
-
class="method-args">()</span>
|
|
164
|
-
|
|
165
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
166
|
-
|
|
167
|
-
</div>
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
<div class="method-description">
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
<div class="method-source-code" id="data_as_bytes-source">
|
|
178
|
-
<pre><span class="ruby-comment"># File lib/midilib/event.rb, line 332</span>
|
|
179
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">data_as_bytes</span>
|
|
180
|
-
<span class="ruby-identifier">data</span> = []
|
|
181
|
-
<span class="ruby-identifier">data</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@status</span>
|
|
182
|
-
<span class="ruby-keyword">end</span></pre>
|
|
183
|
-
</div>
|
|
184
|
-
|
|
185
|
-
</div>
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
</div>
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
<div id="method-i-to_s" class="method-detail ">
|
|
194
|
-
|
|
195
|
-
<div class="method-heading">
|
|
196
|
-
<span class="method-name">to_s</span><span
|
|
197
|
-
class="method-args">()</span>
|
|
198
|
-
|
|
199
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
200
|
-
|
|
201
|
-
</div>
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
<div class="method-description">
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
<div class="method-calls-super">
|
|
210
|
-
Calls superclass method
|
|
211
|
-
<a href="Event.html#method-i-to_s">MIDI::Event#to_s</a>
|
|
212
|
-
</div>
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
<div class="method-source-code" id="to_s-source">
|
|
217
|
-
<pre><span class="ruby-comment"># File lib/midilib/event.rb, line 337</span>
|
|
218
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_s</span>
|
|
219
|
-
<span class="ruby-keyword">return</span> <span class="ruby-keyword">super</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"tune req"</span>
|
|
220
|
-
<span class="ruby-keyword">end</span></pre>
|
|
221
|
-
</div>
|
|
222
|
-
|
|
223
|
-
</div>
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
</div>
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
</section>
|
|
232
|
-
|
|
233
|
-
</section>
|
|
234
|
-
</main>
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
<footer id="validator-badges" role="contentinfo">
|
|
238
|
-
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
|
239
|
-
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
|
240
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
|
241
|
-
</footer>
|
|
242
|
-
|
data/html/MIDI/Utils.html
DELETED
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
|
|
3
|
-
<html>
|
|
4
|
-
<head>
|
|
5
|
-
<meta charset="UTF-8">
|
|
6
|
-
|
|
7
|
-
<title>class MIDI::Utils - midilib</title>
|
|
8
|
-
|
|
9
|
-
<script type="text/javascript">
|
|
10
|
-
var rdoc_rel_prefix = "../";
|
|
11
|
-
</script>
|
|
12
|
-
|
|
13
|
-
<script src="../js/jquery.js"></script>
|
|
14
|
-
<script src="../js/darkfish.js"></script>
|
|
15
|
-
|
|
16
|
-
<link href="../css/fonts.css" rel="stylesheet">
|
|
17
|
-
<link href="../css/rdoc.css" rel="stylesheet">
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<body id="top" role="document" class="class">
|
|
22
|
-
<nav role="navigation">
|
|
23
|
-
<div id="project-navigation">
|
|
24
|
-
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
|
25
|
-
<h2>
|
|
26
|
-
<a href="../index.html" rel="home">Home</a>
|
|
27
|
-
</h2>
|
|
28
|
-
|
|
29
|
-
<div id="table-of-contents-navigation">
|
|
30
|
-
<a href="../table_of_contents.html#pages">Pages</a>
|
|
31
|
-
<a href="../table_of_contents.html#classes">Classes</a>
|
|
32
|
-
<a href="../table_of_contents.html#methods">Methods</a>
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
|
|
36
|
-
<div id="search-section" role="search" class="project-section initially-hidden">
|
|
37
|
-
<form action="#" method="get" accept-charset="utf-8">
|
|
38
|
-
<div id="search-field-wrapper">
|
|
39
|
-
<input id="search-field" role="combobox" aria-label="Search"
|
|
40
|
-
aria-autocomplete="list" aria-controls="search-results"
|
|
41
|
-
type="text" name="search" placeholder="Search" spellcheck="false"
|
|
42
|
-
title="Type to search, Up and Down to navigate, Enter to load">
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
<ul id="search-results" aria-label="Search Results"
|
|
46
|
-
aria-busy="false" aria-expanded="false"
|
|
47
|
-
aria-atomic="false" class="initially-hidden"></ul>
|
|
48
|
-
</form>
|
|
49
|
-
</div>
|
|
50
|
-
|
|
51
|
-
</div>
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
<div id="class-metadata">
|
|
56
|
-
|
|
57
|
-
<div id="parent-class-section" class="nav-section">
|
|
58
|
-
<h3>Parent</h3>
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
<p class="link">Object
|
|
62
|
-
|
|
63
|
-
</div>
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
<!-- Method Quickref -->
|
|
68
|
-
<div id="method-list-section" class="nav-section">
|
|
69
|
-
<h3>Methods</h3>
|
|
70
|
-
|
|
71
|
-
<ul class="link-list" role="directory">
|
|
72
|
-
|
|
73
|
-
<li ><a href="#method-c-as_var_len">::as_var_len</a>
|
|
74
|
-
|
|
75
|
-
<li ><a href="#method-c-note_to_s">::note_to_s</a>
|
|
76
|
-
|
|
77
|
-
</ul>
|
|
78
|
-
</div>
|
|
79
|
-
|
|
80
|
-
</div>
|
|
81
|
-
</nav>
|
|
82
|
-
|
|
83
|
-
<main role="main" aria-labelledby="class-MIDI::Utils">
|
|
84
|
-
<h1 id="class-MIDI::Utils" class="class">
|
|
85
|
-
class MIDI::Utils
|
|
86
|
-
</h1>
|
|
87
|
-
|
|
88
|
-
<section class="description">
|
|
89
|
-
|
|
90
|
-
<p>Utility methods.</p>
|
|
91
|
-
|
|
92
|
-
</section>
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
<section id="5Buntitled-5D" class="documentation-section">
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
<section class="constants-list">
|
|
104
|
-
<header>
|
|
105
|
-
<h3>Constants</h3>
|
|
106
|
-
</header>
|
|
107
|
-
<dl>
|
|
108
|
-
|
|
109
|
-
<dt id="NOTE_NAMES">NOTE_NAMES
|
|
110
|
-
|
|
111
|
-
<dd><p><a href="MIDI.html">MIDI</a> note names. <a href="0">NOTE_NAMES</a> is
|
|
112
|
-
'C', <a href="1">NOTE_NAMES</a> is 'C#', etc.</p>
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
</dl>
|
|
116
|
-
</section>
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
|
123
|
-
<header>
|
|
124
|
-
<h3>Public Class Methods</h3>
|
|
125
|
-
</header>
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
<div id="method-c-as_var_len" class="method-detail ">
|
|
129
|
-
|
|
130
|
-
<div class="method-heading">
|
|
131
|
-
<span class="method-name">as_var_len</span><span
|
|
132
|
-
class="method-args">(val)</span>
|
|
133
|
-
|
|
134
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
135
|
-
|
|
136
|
-
</div>
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
<div class="method-description">
|
|
140
|
-
|
|
141
|
-
<p>Given an integer, returns it as a variable length array of bytes (the
|
|
142
|
-
format used by <a href="MIDI.html">MIDI</a> files).</p>
|
|
143
|
-
|
|
144
|
-
<p>The converse operation–converting a var len into a number–requires input
|
|
145
|
-
from a stream of bytes. Therefore we don't supply it here. That is a
|
|
146
|
-
part of the MIDIFile class.</p>
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
<div class="method-source-code" id="as_var_len-source">
|
|
152
|
-
<pre><span class="ruby-comment"># File lib/midilib/utils.rb, line 24</span>
|
|
153
|
-
<span class="ruby-keyword">def</span> <span class="ruby-constant">Utils</span>.<span class="ruby-identifier">as_var_len</span>(<span class="ruby-identifier">val</span>)
|
|
154
|
-
<span class="ruby-identifier">buffer</span> = []
|
|
155
|
-
<span class="ruby-identifier">buffer</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">val</span> <span class="ruby-operator">&</span> <span class="ruby-value">0x7f</span>)
|
|
156
|
-
<span class="ruby-identifier">val</span> = (<span class="ruby-identifier">val</span> <span class="ruby-operator">>></span> <span class="ruby-value">7</span>)
|
|
157
|
-
<span class="ruby-keyword">while</span> <span class="ruby-identifier">val</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
158
|
-
<span class="ruby-identifier">buffer</span> <span class="ruby-operator"><<</span> (<span class="ruby-value">0x80</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">val</span> <span class="ruby-operator">&</span> <span class="ruby-value">0x7f</span>))
|
|
159
|
-
<span class="ruby-identifier">val</span> = (<span class="ruby-identifier">val</span> <span class="ruby-operator">>></span> <span class="ruby-value">7</span>)
|
|
160
|
-
<span class="ruby-keyword">end</span>
|
|
161
|
-
<span class="ruby-keyword">return</span> <span class="ruby-identifier">buffer</span>.<span class="ruby-identifier">reverse!</span>
|
|
162
|
-
<span class="ruby-keyword">end</span></pre>
|
|
163
|
-
</div>
|
|
164
|
-
|
|
165
|
-
</div>
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
</div>
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
<div id="method-c-note_to_s" class="method-detail ">
|
|
174
|
-
|
|
175
|
-
<div class="method-heading">
|
|
176
|
-
<span class="method-name">note_to_s</span><span
|
|
177
|
-
class="method-args">(num)</span>
|
|
178
|
-
|
|
179
|
-
<span class="method-click-advice">click to toggle source</span>
|
|
180
|
-
|
|
181
|
-
</div>
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
<div class="method-description">
|
|
185
|
-
|
|
186
|
-
<p>Given a <a href="MIDI.html">MIDI</a> note number, return the name and
|
|
187
|
-
octave as a string.</p>
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
<div class="method-source-code" id="note_to_s-source">
|
|
193
|
-
<pre><span class="ruby-comment"># File lib/midilib/utils.rb, line 12</span>
|
|
194
|
-
<span class="ruby-keyword">def</span> <span class="ruby-constant">Utils</span>.<span class="ruby-identifier">note_to_s</span>(<span class="ruby-identifier">num</span>)
|
|
195
|
-
<span class="ruby-identifier">note</span> = <span class="ruby-identifier">num</span> <span class="ruby-operator">%</span> <span class="ruby-value">12</span>
|
|
196
|
-
<span class="ruby-identifier">octave</span> = <span class="ruby-identifier">num</span> <span class="ruby-operator">/</span> <span class="ruby-value">12</span>
|
|
197
|
-
<span class="ruby-keyword">return</span> <span class="ruby-node">"#{NOTE_NAMES[note]}#{octave - 1}"</span>
|
|
198
|
-
<span class="ruby-keyword">end</span></pre>
|
|
199
|
-
</div>
|
|
200
|
-
|
|
201
|
-
</div>
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
</div>
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
</section>
|
|
210
|
-
|
|
211
|
-
</section>
|
|
212
|
-
</main>
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
<footer id="validator-badges" role="contentinfo">
|
|
216
|
-
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
|
217
|
-
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
|
218
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
|
219
|
-
</footer>
|
|
220
|
-
|