midi-communications-windows 0.0.3
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 +7 -0
- data/.gitignore +8 -0
- data/.version +6 -0
- data/.yardoc/checksums +8 -0
- data/.yardoc/complete +0 -0
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/.yardoc/proxy_types +0 -0
- data/.yardopts +8 -0
- data/Gemfile +3 -0
- data/LICENSE +165 -0
- data/README.md +176 -0
- data/Rakefile +13 -0
- data/doc/MIDICommunicationsWindows/API/MIDIHdr.html +144 -0
- data/doc/MIDICommunicationsWindows/API/MIDIInCaps.html +142 -0
- data/doc/MIDICommunicationsWindows/API/MIDIOutCaps.html +140 -0
- data/doc/MIDICommunicationsWindows/API/MSG.html +143 -0
- data/doc/MIDICommunicationsWindows/API.html +981 -0
- data/doc/MIDICommunicationsWindows/Device/ClassMethods.html +365 -0
- data/doc/MIDICommunicationsWindows/Device/InstanceMethods.html +1096 -0
- data/doc/MIDICommunicationsWindows/Device.html +988 -0
- data/doc/MIDICommunicationsWindows/Error.html +438 -0
- data/doc/MIDICommunicationsWindows/Input.html +1554 -0
- data/doc/MIDICommunicationsWindows/Message.html +700 -0
- data/doc/MIDICommunicationsWindows/Output.html +1697 -0
- data/doc/MIDICommunicationsWindows/TypeConversion.html +369 -0
- data/doc/MIDICommunicationsWindows.html +210 -0
- data/doc/_index.html +262 -0
- data/doc/class_list.html +54 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +206 -0
- data/doc/css/style.css +1089 -0
- data/doc/file.README.html +240 -0
- data/doc/file.testing-on-windows.html +253 -0
- data/doc/file_list.html +64 -0
- data/doc/frames.html +22 -0
- data/doc/index.html +240 -0
- data/doc/js/app.js +801 -0
- data/doc/js/full_list.js +334 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +382 -0
- data/doc/top-level-namespace.html +112 -0
- data/docs/testing-on-windows.md +222 -0
- data/examples/input.rb +27 -0
- data/examples/list_ports.rb +17 -0
- data/examples/output.rb +22 -0
- data/examples/sysex_output.rb +15 -0
- data/lib/midi-communications-windows/api.rb +340 -0
- data/lib/midi-communications-windows/device.rb +310 -0
- data/lib/midi-communications-windows/input.rb +486 -0
- data/lib/midi-communications-windows/message.rb +133 -0
- data/lib/midi-communications-windows/output.rb +206 -0
- data/lib/midi-communications-windows/type_conversion.rb +20 -0
- data/lib/midi-communications-windows/version.rb +4 -0
- data/lib/midi-communications-windows.rb +76 -0
- data/midi-communications-windows.gemspec +32 -0
- metadata +220 -0
|
@@ -0,0 +1,1554 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>
|
|
7
|
+
Class: MIDICommunicationsWindows::Input
|
|
8
|
+
|
|
9
|
+
— MIDI Communications Windows API
|
|
10
|
+
|
|
11
|
+
</title>
|
|
12
|
+
|
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css">
|
|
14
|
+
|
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css">
|
|
16
|
+
|
|
17
|
+
<script type="text/javascript">
|
|
18
|
+
pathId = "MIDICommunicationsWindows::Input";
|
|
19
|
+
relpath = '../';
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
|
24
|
+
|
|
25
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
</head>
|
|
29
|
+
<body>
|
|
30
|
+
<div id="main_progress" aria-hidden="true"></div>
|
|
31
|
+
|
|
32
|
+
<div class="nav_wrap">
|
|
33
|
+
<iframe id="nav" src="../class_list.html?1"></iframe>
|
|
34
|
+
<div id="resizer"></div>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
<div id="main" tabindex="-1">
|
|
38
|
+
<div id="header">
|
|
39
|
+
<div id="menu">
|
|
40
|
+
|
|
41
|
+
<a href="../_index.html">Index (I)</a> »
|
|
42
|
+
<span class='title'><span class='object_link'><a href="../MIDICommunicationsWindows.html" title="MIDICommunicationsWindows (module)">MIDICommunicationsWindows</a></span></span>
|
|
43
|
+
»
|
|
44
|
+
<span class="title">Input</span>
|
|
45
|
+
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
<div id="search">
|
|
49
|
+
|
|
50
|
+
<a class="full_list_link" id="class_list_link"
|
|
51
|
+
href="../class_list.html">
|
|
52
|
+
|
|
53
|
+
<svg width="24" height="24">
|
|
54
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
|
55
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
|
56
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
|
57
|
+
</svg>
|
|
58
|
+
</a>
|
|
59
|
+
|
|
60
|
+
</div>
|
|
61
|
+
<div class="clear"></div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<div id="content"><h1>Class: MIDICommunicationsWindows::Input
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
</h1>
|
|
69
|
+
<div class="box_info">
|
|
70
|
+
|
|
71
|
+
<dl>
|
|
72
|
+
<dt>Inherits:</dt>
|
|
73
|
+
<dd>
|
|
74
|
+
<span class="inheritName">Object</span>
|
|
75
|
+
|
|
76
|
+
<ul class="fullTree">
|
|
77
|
+
<li>Object</li>
|
|
78
|
+
|
|
79
|
+
<li class="next">MIDICommunicationsWindows::Input</li>
|
|
80
|
+
|
|
81
|
+
</ul>
|
|
82
|
+
<a href="#" class="inheritanceTree">show all</a>
|
|
83
|
+
|
|
84
|
+
</dd>
|
|
85
|
+
</dl>
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
<dl>
|
|
91
|
+
<dt>Extended by:</dt>
|
|
92
|
+
<dd><span class='object_link'><a href="Device/ClassMethods.html" title="MIDICommunicationsWindows::Device::ClassMethods (module)">Device::ClassMethods</a></span></dd>
|
|
93
|
+
</dl>
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
<dl>
|
|
98
|
+
<dt>Includes:</dt>
|
|
99
|
+
<dd><span class='object_link'><a href="Device/InstanceMethods.html" title="MIDICommunicationsWindows::Device::InstanceMethods (module)">Device::InstanceMethods</a></span></dd>
|
|
100
|
+
</dl>
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
<dl>
|
|
108
|
+
<dt>Defined in:</dt>
|
|
109
|
+
<dd>lib/midi-communications-windows/input.rb
|
|
110
|
+
</dd>
|
|
111
|
+
</dl>
|
|
112
|
+
|
|
113
|
+
</div>
|
|
114
|
+
|
|
115
|
+
<h2>Overview</h2><div class="docstring">
|
|
116
|
+
<div class="discussion">
|
|
117
|
+
<p>A MIDI input port: somewhere messages arrive from.</p>
|
|
118
|
+
<h2 id="_gets__blocks__and_that_is_part_of_the_contract"><code>gets</code> blocks, and that is part of the contract</h2>
|
|
119
|
+
<p><span class='object_link'><a href="#gets-instance_method" title="MIDICommunicationsWindows::Input#gets (method)">#gets</a></span> waits until at least one message has arrived and then returns
|
|
120
|
+
everything that accumulated. It does not return an empty array.</p>
|
|
121
|
+
<p>This is not an incidental property. <code>Musa::Clock::InputMidiClock</code> reads its
|
|
122
|
+
MIDI Clock in a loop with no delay of its own, relying on <code>gets</code> to be where
|
|
123
|
+
the thread waits. An implementation that returned immediately would turn
|
|
124
|
+
that loop into a spin on a full core, and would do it silently — the notes
|
|
125
|
+
would still play.</p>
|
|
126
|
+
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
<div class="tags">
|
|
130
|
+
|
|
131
|
+
<div class="examples">
|
|
132
|
+
<h4 class="tag_title">Examples:</h4>
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
<h5 class="example_title"><div class='inline'><p>Read from the first input</p></div></h5>
|
|
136
|
+
|
|
137
|
+
<pre class="example code"><code><span class='id identifier rubyid_input'>input</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../MIDICommunicationsWindows.html" title="MIDICommunicationsWindows (module)">MIDICommunicationsWindows</a></span></span><span class='op'>::</span><span class='const'>Input</span><span class='period'>.</span><span class='id identifier rubyid_first'><span class='object_link'><a href="Device/ClassMethods.html#first-instance_method" title="MIDICommunicationsWindows::Device::ClassMethods#first (method)">first</a></span></span>
|
|
138
|
+
<span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span>
|
|
139
|
+
<span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_gets'>gets</span>
|
|
140
|
+
<span class='comment'># => [{ data: [144, 60, 100], timestamp: 1789123456.789 }]</span></code></pre>
|
|
141
|
+
|
|
142
|
+
</div>
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
<p class="tag_title">See Also:</p>
|
|
146
|
+
<ul class="see">
|
|
147
|
+
|
|
148
|
+
<li><span class='object_link'><a href="Output.html" title="MIDICommunicationsWindows::Output (class)">for sending</a></span></li>
|
|
149
|
+
|
|
150
|
+
</ul>
|
|
151
|
+
|
|
152
|
+
</div>
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
|
|
157
|
+
<ul class="summary">
|
|
158
|
+
|
|
159
|
+
<li class="public ">
|
|
160
|
+
<span class="summary_signature">
|
|
161
|
+
|
|
162
|
+
<a href="#enabled-instance_method" title="#enabled (instance method)">#<strong>enabled</strong> ⇒ Object </a>
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
(also: #enabled?)
|
|
167
|
+
|
|
168
|
+
</span>
|
|
169
|
+
|
|
170
|
+
<span class="note title not_defined_here">
|
|
171
|
+
included
|
|
172
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#enabled-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#enabled (method)">Device::InstanceMethods</a></span>
|
|
173
|
+
</span>
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
<span class="note title readonly">readonly</span>
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
|
189
|
+
|
|
190
|
+
</li>
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
<li class="public ">
|
|
194
|
+
<span class="summary_signature">
|
|
195
|
+
|
|
196
|
+
<a href="#id-instance_method" title="#id (instance method)">#<strong>id</strong> ⇒ Integer </a>
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
</span>
|
|
201
|
+
|
|
202
|
+
<span class="note title not_defined_here">
|
|
203
|
+
included
|
|
204
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#id-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#id (method)">Device::InstanceMethods</a></span>
|
|
205
|
+
</span>
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
<span class="note title readonly">readonly</span>
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
<span class="summary_desc"><div class='inline'><p>The port's WinMM index <strong>within its direction</strong>; see the note on identity in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">Device</a></span>.</p></div></span>
|
|
221
|
+
|
|
222
|
+
</li>
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
<li class="public ">
|
|
226
|
+
<span class="summary_signature">
|
|
227
|
+
|
|
228
|
+
<a href="#name-instance_method" title="#name (instance method)">#<strong>name</strong> ⇒ String </a>
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
</span>
|
|
233
|
+
|
|
234
|
+
<span class="note title not_defined_here">
|
|
235
|
+
included
|
|
236
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#name-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#name (method)">Device::InstanceMethods</a></span>
|
|
237
|
+
</span>
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
<span class="note title readonly">readonly</span>
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
|
|
251
|
+
|
|
252
|
+
<span class="summary_desc"><div class='inline'><p>The port's name, as WinMM reports it, truncated to 31 characters.</p></div></span>
|
|
253
|
+
|
|
254
|
+
</li>
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
</ul>
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
<h2>
|
|
264
|
+
Class Method Summary
|
|
265
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
|
266
|
+
</h2>
|
|
267
|
+
|
|
268
|
+
<ul class="summary">
|
|
269
|
+
|
|
270
|
+
<li class="public ">
|
|
271
|
+
<span class="summary_signature">
|
|
272
|
+
|
|
273
|
+
<a href="#all-class_method" title="#all (class method)">.<strong>all</strong> ⇒ Array<Input>, Array<Output> </a>
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
</span>
|
|
278
|
+
|
|
279
|
+
<span class="note title not_defined_here">
|
|
280
|
+
extended
|
|
281
|
+
from <span class='object_link'><a href="Device/ClassMethods.html#all-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#all (method)">Device::ClassMethods</a></span>
|
|
282
|
+
</span>
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
<span class="summary_desc"><div class='inline'><p>Every port of this direction.</p></div></span>
|
|
293
|
+
|
|
294
|
+
</li>
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
<li class="public ">
|
|
298
|
+
<span class="summary_signature">
|
|
299
|
+
|
|
300
|
+
<a href="#direction-class_method" title="direction (class method)">.<strong>direction</strong> ⇒ Symbol </a>
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
|
|
304
|
+
</span>
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
<span class="summary_desc"><div class='inline'><p><code>:input</code>.</p></div></span>
|
|
315
|
+
|
|
316
|
+
</li>
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
<li class="public ">
|
|
320
|
+
<span class="summary_signature">
|
|
321
|
+
|
|
322
|
+
<a href="#first-class_method" title="#first (class method)">.<strong>first</strong> ⇒ Input, ... </a>
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
</span>
|
|
327
|
+
|
|
328
|
+
<span class="note title not_defined_here">
|
|
329
|
+
extended
|
|
330
|
+
from <span class='object_link'><a href="Device/ClassMethods.html#first-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#first (method)">Device::ClassMethods</a></span>
|
|
331
|
+
</span>
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
<span class="summary_desc"><div class='inline'><p>The first port of this direction, or nil if there are none.</p></div></span>
|
|
342
|
+
|
|
343
|
+
</li>
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
<li class="public ">
|
|
347
|
+
<span class="summary_signature">
|
|
348
|
+
|
|
349
|
+
<a href="#last-class_method" title="#last (class method)">.<strong>last</strong> ⇒ Input, ... </a>
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
</span>
|
|
354
|
+
|
|
355
|
+
<span class="note title not_defined_here">
|
|
356
|
+
extended
|
|
357
|
+
from <span class='object_link'><a href="Device/ClassMethods.html#last-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#last (method)">Device::ClassMethods</a></span>
|
|
358
|
+
</span>
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
<span class="summary_desc"><div class='inline'><p>The last port of this direction, or nil if there are none.</p></div></span>
|
|
369
|
+
|
|
370
|
+
</li>
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
</ul>
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
<h2>
|
|
377
|
+
Instance Method Summary
|
|
378
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
|
379
|
+
</h2>
|
|
380
|
+
|
|
381
|
+
<ul class="summary">
|
|
382
|
+
|
|
383
|
+
<li class="public ">
|
|
384
|
+
<span class="summary_signature">
|
|
385
|
+
|
|
386
|
+
<a href="#close-instance_method" title="#close (instance method)">#<strong>close</strong> ⇒ Boolean </a>
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
</span>
|
|
391
|
+
|
|
392
|
+
<span class="note title not_defined_here">
|
|
393
|
+
included
|
|
394
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#close-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#close (method)">Device::InstanceMethods</a></span>
|
|
395
|
+
</span>
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
|
|
401
|
+
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
<span class="summary_desc"><div class='inline'><p>Closes the port.</p></div></span>
|
|
406
|
+
|
|
407
|
+
</li>
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
<li class="public ">
|
|
411
|
+
<span class="summary_signature">
|
|
412
|
+
|
|
413
|
+
<a href="#display_name-instance_method" title="#display_name (instance method)">#<strong>display_name</strong> ⇒ String </a>
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
</span>
|
|
418
|
+
|
|
419
|
+
<span class="note title not_defined_here">
|
|
420
|
+
included
|
|
421
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#display_name-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#display_name (method)">Device::InstanceMethods</a></span>
|
|
422
|
+
</span>
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
<span class="summary_desc"><div class='inline'><p>The name to show a person choosing a port.</p></div></span>
|
|
433
|
+
|
|
434
|
+
</li>
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
<li class="public ">
|
|
438
|
+
<span class="summary_signature">
|
|
439
|
+
|
|
440
|
+
<a href="#gets-instance_method" title="#gets (instance method)">#<strong>gets</strong> ⇒ Array<Hash> </a>
|
|
441
|
+
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
(also: #read)
|
|
445
|
+
|
|
446
|
+
</span>
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
|
|
456
|
+
<span class="summary_desc"><div class='inline'><p>Reads the messages that have arrived.</p></div></span>
|
|
457
|
+
|
|
458
|
+
</li>
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
<li class="public ">
|
|
462
|
+
<span class="summary_signature">
|
|
463
|
+
|
|
464
|
+
<a href="#gets_s-instance_method" title="#gets_s (instance method)">#<strong>gets_s</strong> ⇒ Array<Hash> </a>
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
(also: #gets_bytestr)
|
|
469
|
+
|
|
470
|
+
</span>
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
<span class="summary_desc"><div class='inline'><p>Reads the messages that have arrived, with their data as hex strings.</p></div></span>
|
|
481
|
+
|
|
482
|
+
</li>
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
<li class="public ">
|
|
486
|
+
<span class="summary_signature">
|
|
487
|
+
|
|
488
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(id, name) ⇒ Input </a>
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
</span>
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
<span class="note title constructor">constructor</span>
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
<span class="private note title">private</span>
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
<span class="summary_desc"><div class='inline'><p>A new instance of Input.</p></div></span>
|
|
505
|
+
|
|
506
|
+
</li>
|
|
507
|
+
|
|
508
|
+
|
|
509
|
+
<li class="public ">
|
|
510
|
+
<span class="summary_signature">
|
|
511
|
+
|
|
512
|
+
<a href="#manufacturer-instance_method" title="#manufacturer (instance method)">#<strong>manufacturer</strong> ⇒ nil </a>
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
</span>
|
|
517
|
+
|
|
518
|
+
<span class="note title not_defined_here">
|
|
519
|
+
included
|
|
520
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#manufacturer-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#manufacturer (method)">Device::InstanceMethods</a></span>
|
|
521
|
+
</span>
|
|
522
|
+
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
<span class="summary_desc"><div class='inline'><p>Who made the device.</p></div></span>
|
|
532
|
+
|
|
533
|
+
</li>
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
<li class="public ">
|
|
537
|
+
<span class="summary_signature">
|
|
538
|
+
|
|
539
|
+
<a href="#model-instance_method" title="#model (instance method)">#<strong>model</strong> ⇒ nil </a>
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
</span>
|
|
544
|
+
|
|
545
|
+
<span class="note title not_defined_here">
|
|
546
|
+
included
|
|
547
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#model-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#model (method)">Device::InstanceMethods</a></span>
|
|
548
|
+
</span>
|
|
549
|
+
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
<span class="summary_desc"><div class='inline'><p>The device model.</p></div></span>
|
|
559
|
+
|
|
560
|
+
</li>
|
|
561
|
+
|
|
562
|
+
|
|
563
|
+
<li class="public ">
|
|
564
|
+
<span class="summary_signature">
|
|
565
|
+
|
|
566
|
+
<a href="#open-instance_method" title="#open (instance method)">#<strong>open</strong> {|self| ... } ⇒ self </a>
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
|
|
570
|
+
(also: #enable, #start)
|
|
571
|
+
|
|
572
|
+
</span>
|
|
573
|
+
|
|
574
|
+
<span class="note title not_defined_here">
|
|
575
|
+
included
|
|
576
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#open-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#open (method)">Device::InstanceMethods</a></span>
|
|
577
|
+
</span>
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
|
|
582
|
+
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
<span class="summary_desc"><div class='inline'><p>Opens the port.</p></div></span>
|
|
588
|
+
|
|
589
|
+
</li>
|
|
590
|
+
|
|
591
|
+
|
|
592
|
+
<li class="public ">
|
|
593
|
+
<span class="summary_signature">
|
|
594
|
+
|
|
595
|
+
<a href="#to_s-instance_method" title="#to_s (instance method)">#<strong>to_s</strong> ⇒ String </a>
|
|
596
|
+
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
</span>
|
|
600
|
+
|
|
601
|
+
<span class="note title not_defined_here">
|
|
602
|
+
included
|
|
603
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#to_s-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#to_s (method)">Device::InstanceMethods</a></span>
|
|
604
|
+
</span>
|
|
605
|
+
|
|
606
|
+
|
|
607
|
+
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
|
|
611
|
+
|
|
612
|
+
|
|
613
|
+
|
|
614
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
|
615
|
+
|
|
616
|
+
</li>
|
|
617
|
+
|
|
618
|
+
|
|
619
|
+
<li class="public ">
|
|
620
|
+
<span class="summary_signature">
|
|
621
|
+
|
|
622
|
+
<a href="#type-instance_method" title="#type (instance method)">#<strong>type</strong> ⇒ Symbol </a>
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
|
|
626
|
+
</span>
|
|
627
|
+
|
|
628
|
+
<span class="note title not_defined_here">
|
|
629
|
+
included
|
|
630
|
+
from <span class='object_link'><a href="Device/InstanceMethods.html#type-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#type (method)">Device::InstanceMethods</a></span>
|
|
631
|
+
</span>
|
|
632
|
+
|
|
633
|
+
|
|
634
|
+
|
|
635
|
+
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
|
|
641
|
+
<span class="summary_desc"><div class='inline'><p>The port's direction.</p></div></span>
|
|
642
|
+
|
|
643
|
+
</li>
|
|
644
|
+
|
|
645
|
+
|
|
646
|
+
</ul>
|
|
647
|
+
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
|
|
654
|
+
<div id="constructor_details" class="method_details_list">
|
|
655
|
+
<h2>Constructor Details</h2>
|
|
656
|
+
|
|
657
|
+
<div class="method_details first">
|
|
658
|
+
<h3 class="signature first" id="initialize-instance_method">
|
|
659
|
+
|
|
660
|
+
#<strong>initialize</strong>(id, name) ⇒ <tt><span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span></tt>
|
|
661
|
+
|
|
662
|
+
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
|
|
666
|
+
</h3><div class="docstring">
|
|
667
|
+
<div class="discussion">
|
|
668
|
+
<p class="note private">
|
|
669
|
+
<strong>This method is part of a private API.</strong>
|
|
670
|
+
You should avoid using this method if possible, as it may be removed or be changed in the future.
|
|
671
|
+
</p>
|
|
672
|
+
<p>Returns a new instance of Input.</p>
|
|
673
|
+
|
|
674
|
+
</div>
|
|
675
|
+
</div>
|
|
676
|
+
<div class="tags">
|
|
677
|
+
<p class="tag_title">Parameters:</p>
|
|
678
|
+
<ul class="param">
|
|
679
|
+
|
|
680
|
+
<li>
|
|
681
|
+
|
|
682
|
+
<span class='name'>id</span>
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
<span class='type'>(<tt>Integer</tt>)</span>
|
|
686
|
+
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
—
|
|
690
|
+
<div class='inline'><p>the port's WinMM index among inputs</p></div>
|
|
691
|
+
|
|
692
|
+
</li>
|
|
693
|
+
|
|
694
|
+
<li>
|
|
695
|
+
|
|
696
|
+
<span class='name'>name</span>
|
|
697
|
+
|
|
698
|
+
|
|
699
|
+
<span class='type'>(<tt>String</tt>)</span>
|
|
700
|
+
|
|
701
|
+
|
|
702
|
+
|
|
703
|
+
—
|
|
704
|
+
<div class='inline'><p>the port's name as reported by WinMM</p></div>
|
|
705
|
+
|
|
706
|
+
</li>
|
|
707
|
+
|
|
708
|
+
</ul>
|
|
709
|
+
|
|
710
|
+
|
|
711
|
+
</div><table class="source_code">
|
|
712
|
+
<tr>
|
|
713
|
+
<td>
|
|
714
|
+
<pre class="lines">
|
|
715
|
+
|
|
716
|
+
|
|
717
|
+
36
|
|
718
|
+
37
|
|
719
|
+
38
|
|
720
|
+
39
|
|
721
|
+
40
|
|
722
|
+
41</pre>
|
|
723
|
+
</td>
|
|
724
|
+
<td>
|
|
725
|
+
<pre class="code"><span class="info file"># File 'lib/midi-communications-windows/input.rb', line 36</span>
|
|
726
|
+
|
|
727
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_id'>id</span><span class='comma'>,</span> <span class='id identifier rubyid_name'>name</span><span class='rparen'>)</span>
|
|
728
|
+
<span class='kw'>super</span>
|
|
729
|
+
|
|
730
|
+
<span class='ivar'>@queue</span> <span class='op'>=</span> <span class='const'>Queue</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
|
731
|
+
<span class='ivar'>@sysex</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
|
732
|
+
<span class='kw'>end</span></pre>
|
|
733
|
+
</td>
|
|
734
|
+
</tr>
|
|
735
|
+
</table>
|
|
736
|
+
</div>
|
|
737
|
+
|
|
738
|
+
</div>
|
|
739
|
+
|
|
740
|
+
<div id="instance_attr_details" class="attr_details">
|
|
741
|
+
<h2>Instance Attribute Details</h2>
|
|
742
|
+
|
|
743
|
+
|
|
744
|
+
<span id=""></span>
|
|
745
|
+
<div class="method_details first">
|
|
746
|
+
<h3 class="signature first" id="enabled-instance_method">
|
|
747
|
+
|
|
748
|
+
#<strong>enabled</strong> ⇒ <tt>Object</tt> <span class="extras">(readonly)</span>
|
|
749
|
+
|
|
750
|
+
|
|
751
|
+
|
|
752
|
+
<span class="aliases">Also known as:
|
|
753
|
+
<span class="names"><span id='enabled?-instance_method'>enabled?</span></span>
|
|
754
|
+
</span>
|
|
755
|
+
|
|
756
|
+
|
|
757
|
+
|
|
758
|
+
<span class="not_defined_here">
|
|
759
|
+
Originally defined in module
|
|
760
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#enabled-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#enabled (method)">Device::InstanceMethods</a></span>
|
|
761
|
+
</span>
|
|
762
|
+
|
|
763
|
+
</h3><div class="docstring">
|
|
764
|
+
<div class="discussion">
|
|
765
|
+
|
|
766
|
+
|
|
767
|
+
</div>
|
|
768
|
+
</div>
|
|
769
|
+
<div class="tags">
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
</div>
|
|
773
|
+
</div>
|
|
774
|
+
|
|
775
|
+
|
|
776
|
+
<span id=""></span>
|
|
777
|
+
<div class="method_details ">
|
|
778
|
+
<h3 class="signature " id="id-instance_method">
|
|
779
|
+
|
|
780
|
+
#<strong>id</strong> ⇒ <tt>Integer</tt> <span class="extras">(readonly)</span>
|
|
781
|
+
|
|
782
|
+
|
|
783
|
+
|
|
784
|
+
|
|
785
|
+
|
|
786
|
+
<span class="not_defined_here">
|
|
787
|
+
Originally defined in module
|
|
788
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#id-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#id (method)">Device::InstanceMethods</a></span>
|
|
789
|
+
</span>
|
|
790
|
+
|
|
791
|
+
</h3><div class="docstring">
|
|
792
|
+
<div class="discussion">
|
|
793
|
+
<p>Returns the port's WinMM index <strong>within its direction</strong>;
|
|
794
|
+
see the note on identity in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">MIDICommunicationsWindows::Device</a></span>.</p>
|
|
795
|
+
|
|
796
|
+
</div>
|
|
797
|
+
</div>
|
|
798
|
+
<div class="tags">
|
|
799
|
+
|
|
800
|
+
<p class="tag_title">Returns:</p>
|
|
801
|
+
<ul class="return">
|
|
802
|
+
|
|
803
|
+
<li>
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
<span class='type'>(<tt>Integer</tt>)</span>
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
—
|
|
811
|
+
<div class='inline'><p>the port's WinMM index <strong>within its direction</strong>;
|
|
812
|
+
see the note on identity in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">MIDICommunicationsWindows::Device</a></span></p></div>
|
|
813
|
+
|
|
814
|
+
</li>
|
|
815
|
+
|
|
816
|
+
</ul>
|
|
817
|
+
|
|
818
|
+
</div>
|
|
819
|
+
</div>
|
|
820
|
+
|
|
821
|
+
|
|
822
|
+
<span id=""></span>
|
|
823
|
+
<div class="method_details ">
|
|
824
|
+
<h3 class="signature " id="name-instance_method">
|
|
825
|
+
|
|
826
|
+
#<strong>name</strong> ⇒ <tt>String</tt> <span class="extras">(readonly)</span>
|
|
827
|
+
|
|
828
|
+
|
|
829
|
+
|
|
830
|
+
|
|
831
|
+
|
|
832
|
+
<span class="not_defined_here">
|
|
833
|
+
Originally defined in module
|
|
834
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#name-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#name (method)">Device::InstanceMethods</a></span>
|
|
835
|
+
</span>
|
|
836
|
+
|
|
837
|
+
</h3><div class="docstring">
|
|
838
|
+
<div class="discussion">
|
|
839
|
+
<p>Returns the port's name, as WinMM reports it, truncated to
|
|
840
|
+
31 characters. <strong>Not unique</strong>: see the note on names in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">MIDICommunicationsWindows::Device</a></span>.</p>
|
|
841
|
+
|
|
842
|
+
</div>
|
|
843
|
+
</div>
|
|
844
|
+
<div class="tags">
|
|
845
|
+
|
|
846
|
+
<p class="tag_title">Returns:</p>
|
|
847
|
+
<ul class="return">
|
|
848
|
+
|
|
849
|
+
<li>
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
<span class='type'>(<tt>String</tt>)</span>
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
|
|
856
|
+
—
|
|
857
|
+
<div class='inline'><p>the port's name, as WinMM reports it, truncated to
|
|
858
|
+
31 characters. <strong>Not unique</strong>: see the note on names in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">MIDICommunicationsWindows::Device</a></span>.</p></div>
|
|
859
|
+
|
|
860
|
+
</li>
|
|
861
|
+
|
|
862
|
+
</ul>
|
|
863
|
+
|
|
864
|
+
</div>
|
|
865
|
+
</div>
|
|
866
|
+
|
|
867
|
+
</div>
|
|
868
|
+
|
|
869
|
+
|
|
870
|
+
<div id="class_method_details" class="method_details_list">
|
|
871
|
+
<h2>Class Method Details</h2>
|
|
872
|
+
|
|
873
|
+
|
|
874
|
+
<div class="method_details first">
|
|
875
|
+
<h3 class="signature first" id="all-class_method">
|
|
876
|
+
|
|
877
|
+
.<strong>all</strong> ⇒ <tt>Array<<span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span>></tt>, <tt>Array<<span class='object_link'><a href="Output.html" title="MIDICommunicationsWindows::Output (class)">Output</a></span>></tt>
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
|
|
883
|
+
<span class="not_defined_here">
|
|
884
|
+
Originally defined in module
|
|
885
|
+
<span class='object_link'><a href="Device/ClassMethods.html#all-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#all (method)">Device::ClassMethods</a></span>
|
|
886
|
+
</span>
|
|
887
|
+
|
|
888
|
+
</h3><div class="docstring">
|
|
889
|
+
<div class="discussion">
|
|
890
|
+
<p>Every port of this direction.</p>
|
|
891
|
+
<p>WinMM is asked afresh on every call, so a port that appeared or went
|
|
892
|
+
away since the last one is reflected. A port that is still there comes
|
|
893
|
+
back as the same object as before; see <span class='object_link'><a href="Device.html#enumerate-class_method" title="MIDICommunicationsWindows::Device.enumerate (method)">MIDICommunicationsWindows::Device.enumerate</a></span>.</p>
|
|
894
|
+
|
|
895
|
+
</div>
|
|
896
|
+
</div>
|
|
897
|
+
<div class="tags">
|
|
898
|
+
|
|
899
|
+
<p class="tag_title">Returns:</p>
|
|
900
|
+
<ul class="return">
|
|
901
|
+
|
|
902
|
+
<li>
|
|
903
|
+
|
|
904
|
+
|
|
905
|
+
<span class='type'>(<tt>Array<<span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span>></tt>, <tt>Array<<span class='object_link'><a href="Output.html" title="MIDICommunicationsWindows::Output (class)">Output</a></span>></tt>)</span>
|
|
906
|
+
|
|
907
|
+
|
|
908
|
+
|
|
909
|
+
</li>
|
|
910
|
+
|
|
911
|
+
</ul>
|
|
912
|
+
|
|
913
|
+
</div>
|
|
914
|
+
</div>
|
|
915
|
+
|
|
916
|
+
<div class="method_details ">
|
|
917
|
+
<h3 class="signature " id="direction-class_method">
|
|
918
|
+
|
|
919
|
+
.<strong>direction</strong> ⇒ <tt>Symbol</tt>
|
|
920
|
+
|
|
921
|
+
|
|
922
|
+
|
|
923
|
+
|
|
924
|
+
|
|
925
|
+
</h3><div class="docstring">
|
|
926
|
+
<div class="discussion">
|
|
927
|
+
<p>Returns <code>:input</code>.</p>
|
|
928
|
+
|
|
929
|
+
</div>
|
|
930
|
+
</div>
|
|
931
|
+
<div class="tags">
|
|
932
|
+
|
|
933
|
+
<p class="tag_title">Returns:</p>
|
|
934
|
+
<ul class="return">
|
|
935
|
+
|
|
936
|
+
<li>
|
|
937
|
+
|
|
938
|
+
|
|
939
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
|
940
|
+
|
|
941
|
+
|
|
942
|
+
|
|
943
|
+
—
|
|
944
|
+
<div class='inline'><p><code>:input</code></p></div>
|
|
945
|
+
|
|
946
|
+
</li>
|
|
947
|
+
|
|
948
|
+
</ul>
|
|
949
|
+
|
|
950
|
+
</div><table class="source_code">
|
|
951
|
+
<tr>
|
|
952
|
+
<td>
|
|
953
|
+
<pre class="lines">
|
|
954
|
+
|
|
955
|
+
|
|
956
|
+
29
|
|
957
|
+
30
|
|
958
|
+
31</pre>
|
|
959
|
+
</td>
|
|
960
|
+
<td>
|
|
961
|
+
<pre class="code"><span class="info file"># File 'lib/midi-communications-windows/input.rb', line 29</span>
|
|
962
|
+
|
|
963
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_direction'>direction</span>
|
|
964
|
+
<span class='symbol'>:input</span>
|
|
965
|
+
<span class='kw'>end</span></pre>
|
|
966
|
+
</td>
|
|
967
|
+
</tr>
|
|
968
|
+
</table>
|
|
969
|
+
</div>
|
|
970
|
+
|
|
971
|
+
<div class="method_details ">
|
|
972
|
+
<h3 class="signature " id="first-class_method">
|
|
973
|
+
|
|
974
|
+
.<strong>first</strong> ⇒ <tt><span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span></tt>, ...
|
|
975
|
+
|
|
976
|
+
|
|
977
|
+
|
|
978
|
+
|
|
979
|
+
|
|
980
|
+
<span class="not_defined_here">
|
|
981
|
+
Originally defined in module
|
|
982
|
+
<span class='object_link'><a href="Device/ClassMethods.html#first-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#first (method)">Device::ClassMethods</a></span>
|
|
983
|
+
</span>
|
|
984
|
+
|
|
985
|
+
</h3><div class="docstring">
|
|
986
|
+
<div class="discussion">
|
|
987
|
+
<p>The first port of this direction, or nil if there are none.</p>
|
|
988
|
+
|
|
989
|
+
</div>
|
|
990
|
+
</div>
|
|
991
|
+
<div class="tags">
|
|
992
|
+
|
|
993
|
+
<p class="tag_title">Returns:</p>
|
|
994
|
+
<ul class="return">
|
|
995
|
+
|
|
996
|
+
<li>
|
|
997
|
+
|
|
998
|
+
|
|
999
|
+
<span class='type'>(<tt><span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span></tt>, <tt><span class='object_link'><a href="Output.html" title="MIDICommunicationsWindows::Output (class)">Output</a></span></tt>, <tt>nil</tt>)</span>
|
|
1000
|
+
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
</li>
|
|
1004
|
+
|
|
1005
|
+
</ul>
|
|
1006
|
+
|
|
1007
|
+
</div>
|
|
1008
|
+
</div>
|
|
1009
|
+
|
|
1010
|
+
<div class="method_details ">
|
|
1011
|
+
<h3 class="signature " id="last-class_method">
|
|
1012
|
+
|
|
1013
|
+
.<strong>last</strong> ⇒ <tt><span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span></tt>, ...
|
|
1014
|
+
|
|
1015
|
+
|
|
1016
|
+
|
|
1017
|
+
|
|
1018
|
+
|
|
1019
|
+
<span class="not_defined_here">
|
|
1020
|
+
Originally defined in module
|
|
1021
|
+
<span class='object_link'><a href="Device/ClassMethods.html#last-class_method" title="MIDICommunicationsWindows::Device::ClassMethods#last (method)">Device::ClassMethods</a></span>
|
|
1022
|
+
</span>
|
|
1023
|
+
|
|
1024
|
+
</h3><div class="docstring">
|
|
1025
|
+
<div class="discussion">
|
|
1026
|
+
<p>The last port of this direction, or nil if there are none.</p>
|
|
1027
|
+
|
|
1028
|
+
</div>
|
|
1029
|
+
</div>
|
|
1030
|
+
<div class="tags">
|
|
1031
|
+
|
|
1032
|
+
<p class="tag_title">Returns:</p>
|
|
1033
|
+
<ul class="return">
|
|
1034
|
+
|
|
1035
|
+
<li>
|
|
1036
|
+
|
|
1037
|
+
|
|
1038
|
+
<span class='type'>(<tt><span class='object_link'><a href="" title="MIDICommunicationsWindows::Input (class)">Input</a></span></tt>, <tt><span class='object_link'><a href="Output.html" title="MIDICommunicationsWindows::Output (class)">Output</a></span></tt>, <tt>nil</tt>)</span>
|
|
1039
|
+
|
|
1040
|
+
|
|
1041
|
+
|
|
1042
|
+
</li>
|
|
1043
|
+
|
|
1044
|
+
</ul>
|
|
1045
|
+
|
|
1046
|
+
</div>
|
|
1047
|
+
</div>
|
|
1048
|
+
|
|
1049
|
+
</div>
|
|
1050
|
+
|
|
1051
|
+
<div id="instance_method_details" class="method_details_list">
|
|
1052
|
+
<h2>Instance Method Details</h2>
|
|
1053
|
+
|
|
1054
|
+
|
|
1055
|
+
<div class="method_details first">
|
|
1056
|
+
<h3 class="signature first" id="close-instance_method">
|
|
1057
|
+
|
|
1058
|
+
#<strong>close</strong> ⇒ <tt>Boolean</tt>
|
|
1059
|
+
|
|
1060
|
+
|
|
1061
|
+
|
|
1062
|
+
|
|
1063
|
+
|
|
1064
|
+
<span class="not_defined_here">
|
|
1065
|
+
Originally defined in module
|
|
1066
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#close-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#close (method)">Device::InstanceMethods</a></span>
|
|
1067
|
+
</span>
|
|
1068
|
+
|
|
1069
|
+
</h3><div class="docstring">
|
|
1070
|
+
<div class="discussion">
|
|
1071
|
+
<p>Closes the port.</p>
|
|
1072
|
+
|
|
1073
|
+
</div>
|
|
1074
|
+
</div>
|
|
1075
|
+
<div class="tags">
|
|
1076
|
+
|
|
1077
|
+
<p class="tag_title">Returns:</p>
|
|
1078
|
+
<ul class="return">
|
|
1079
|
+
|
|
1080
|
+
<li>
|
|
1081
|
+
|
|
1082
|
+
|
|
1083
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
|
1084
|
+
|
|
1085
|
+
|
|
1086
|
+
|
|
1087
|
+
—
|
|
1088
|
+
<div class='inline'><p>true if it was open, false if it already was not</p></div>
|
|
1089
|
+
|
|
1090
|
+
</li>
|
|
1091
|
+
|
|
1092
|
+
</ul>
|
|
1093
|
+
|
|
1094
|
+
</div>
|
|
1095
|
+
</div>
|
|
1096
|
+
|
|
1097
|
+
<div class="method_details ">
|
|
1098
|
+
<h3 class="signature " id="display_name-instance_method">
|
|
1099
|
+
|
|
1100
|
+
#<strong>display_name</strong> ⇒ <tt>String</tt>
|
|
1101
|
+
|
|
1102
|
+
|
|
1103
|
+
|
|
1104
|
+
|
|
1105
|
+
|
|
1106
|
+
<span class="not_defined_here">
|
|
1107
|
+
Originally defined in module
|
|
1108
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#display_name-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#display_name (method)">Device::InstanceMethods</a></span>
|
|
1109
|
+
</span>
|
|
1110
|
+
|
|
1111
|
+
</h3><div class="docstring">
|
|
1112
|
+
<div class="discussion">
|
|
1113
|
+
<p>The name to show a person choosing a port.</p>
|
|
1114
|
+
<p>This is the port name unchanged. On macOS the display name is built as
|
|
1115
|
+
"manufacturer model (name)", which here would render as a name wrapped
|
|
1116
|
+
in the punctuation of two absent fields.</p>
|
|
1117
|
+
|
|
1118
|
+
</div>
|
|
1119
|
+
</div>
|
|
1120
|
+
<div class="tags">
|
|
1121
|
+
|
|
1122
|
+
<p class="tag_title">Returns:</p>
|
|
1123
|
+
<ul class="return">
|
|
1124
|
+
|
|
1125
|
+
<li>
|
|
1126
|
+
|
|
1127
|
+
|
|
1128
|
+
<span class='type'>(<tt>String</tt>)</span>
|
|
1129
|
+
|
|
1130
|
+
|
|
1131
|
+
|
|
1132
|
+
</li>
|
|
1133
|
+
|
|
1134
|
+
</ul>
|
|
1135
|
+
|
|
1136
|
+
</div>
|
|
1137
|
+
</div>
|
|
1138
|
+
|
|
1139
|
+
<div class="method_details ">
|
|
1140
|
+
<h3 class="signature " id="gets-instance_method">
|
|
1141
|
+
|
|
1142
|
+
#<strong>gets</strong> ⇒ <tt>Array<Hash></tt>
|
|
1143
|
+
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
<span class="aliases">Also known as:
|
|
1147
|
+
<span class="names"><span id='read-instance_method'>read</span></span>
|
|
1148
|
+
</span>
|
|
1149
|
+
|
|
1150
|
+
|
|
1151
|
+
|
|
1152
|
+
</h3><div class="docstring">
|
|
1153
|
+
<div class="discussion">
|
|
1154
|
+
<p>Reads the messages that have arrived.</p>
|
|
1155
|
+
<p>Blocks until there is at least one. See the note on the class.</p>
|
|
1156
|
+
|
|
1157
|
+
</div>
|
|
1158
|
+
</div>
|
|
1159
|
+
<div class="tags">
|
|
1160
|
+
|
|
1161
|
+
<div class="examples">
|
|
1162
|
+
<h4 class="tag_title">Examples:</h4>
|
|
1163
|
+
|
|
1164
|
+
|
|
1165
|
+
<pre class="example code"><code><span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_gets'>gets</span>
|
|
1166
|
+
<span class='comment'># => [{ data: [248], timestamp: 1789123456.789 },
|
|
1167
|
+
</span><span class='comment'># { data: [144, 60, 100], timestamp: 1789123456.812 }]</span></code></pre>
|
|
1168
|
+
|
|
1169
|
+
</div>
|
|
1170
|
+
|
|
1171
|
+
<p class="tag_title">Returns:</p>
|
|
1172
|
+
<ul class="return">
|
|
1173
|
+
|
|
1174
|
+
<li>
|
|
1175
|
+
|
|
1176
|
+
|
|
1177
|
+
<span class='type'>(<tt>Array<Hash></tt>)</span>
|
|
1178
|
+
|
|
1179
|
+
|
|
1180
|
+
|
|
1181
|
+
—
|
|
1182
|
+
<div class='inline'><p>each with <code>:data</code>, an array of numeric bytes, and
|
|
1183
|
+
<code>:timestamp</code>, a Float of seconds</p></div>
|
|
1184
|
+
|
|
1185
|
+
</li>
|
|
1186
|
+
|
|
1187
|
+
</ul>
|
|
1188
|
+
|
|
1189
|
+
</div><table class="source_code">
|
|
1190
|
+
<tr>
|
|
1191
|
+
<td>
|
|
1192
|
+
<pre class="lines">
|
|
1193
|
+
|
|
1194
|
+
|
|
1195
|
+
54
|
|
1196
|
+
55
|
|
1197
|
+
56
|
|
1198
|
+
57
|
|
1199
|
+
58
|
|
1200
|
+
59
|
|
1201
|
+
60
|
|
1202
|
+
61
|
|
1203
|
+
62
|
|
1204
|
+
63
|
|
1205
|
+
64
|
|
1206
|
+
65
|
|
1207
|
+
66</pre>
|
|
1208
|
+
</td>
|
|
1209
|
+
<td>
|
|
1210
|
+
<pre class="code"><span class="info file"># File 'lib/midi-communications-windows/input.rb', line 54</span>
|
|
1211
|
+
|
|
1212
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_gets'>gets</span>
|
|
1213
|
+
<span class='comment'># Queue#pop is where the thread waits, and it is the whole of the waiting
|
|
1214
|
+
</span> <span class='comment'># mechanism on purpose. The obvious alternative — test whether the queue
|
|
1215
|
+
</span> <span class='comment'># is empty, then sleep, and have the producer Thread#run the sleeper — has
|
|
1216
|
+
</span> <span class='comment'># a window between the test and the sleep in which a message can arrive
|
|
1217
|
+
</span> <span class='comment'># and its wake-up be delivered to a thread that is not sleeping yet. The
|
|
1218
|
+
</span> <span class='comment'># reader then sleeps forever, and the thread it happens on is the one
|
|
1219
|
+
</span> <span class='comment'># carrying the MIDI clock. Queue does the same job with no such window.
|
|
1220
|
+
</span> <span class='id identifier rubyid_messages'>messages</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='ivar'>@queue</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span><span class='rbracket'>]</span>
|
|
1221
|
+
<span class='id identifier rubyid_messages'>messages</span> <span class='op'><<</span> <span class='ivar'>@queue</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span> <span class='kw'>until</span> <span class='ivar'>@queue</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
|
1222
|
+
|
|
1223
|
+
<span class='id identifier rubyid_messages'>messages</span>
|
|
1224
|
+
<span class='kw'>end</span></pre>
|
|
1225
|
+
</td>
|
|
1226
|
+
</tr>
|
|
1227
|
+
</table>
|
|
1228
|
+
</div>
|
|
1229
|
+
|
|
1230
|
+
<div class="method_details ">
|
|
1231
|
+
<h3 class="signature " id="gets_s-instance_method">
|
|
1232
|
+
|
|
1233
|
+
#<strong>gets_s</strong> ⇒ <tt>Array<Hash></tt>
|
|
1234
|
+
|
|
1235
|
+
|
|
1236
|
+
|
|
1237
|
+
<span class="aliases">Also known as:
|
|
1238
|
+
<span class="names"><span id='gets_bytestr-instance_method'>gets_bytestr</span></span>
|
|
1239
|
+
</span>
|
|
1240
|
+
|
|
1241
|
+
|
|
1242
|
+
|
|
1243
|
+
</h3><div class="docstring">
|
|
1244
|
+
<div class="discussion">
|
|
1245
|
+
<p>Reads the messages that have arrived, with their data as hex strings.</p>
|
|
1246
|
+
|
|
1247
|
+
</div>
|
|
1248
|
+
</div>
|
|
1249
|
+
<div class="tags">
|
|
1250
|
+
|
|
1251
|
+
<div class="examples">
|
|
1252
|
+
<h4 class="tag_title">Examples:</h4>
|
|
1253
|
+
|
|
1254
|
+
|
|
1255
|
+
<pre class="example code"><code><span class='id identifier rubyid_input'>input</span><span class='period'>.</span><span class='id identifier rubyid_gets_s'>gets_s</span>
|
|
1256
|
+
<span class='comment'># => [{ data: 'F8', timestamp: 1789123456.789 }]</span></code></pre>
|
|
1257
|
+
|
|
1258
|
+
</div>
|
|
1259
|
+
|
|
1260
|
+
<p class="tag_title">Returns:</p>
|
|
1261
|
+
<ul class="return">
|
|
1262
|
+
|
|
1263
|
+
<li>
|
|
1264
|
+
|
|
1265
|
+
|
|
1266
|
+
<span class='type'>(<tt>Array<Hash></tt>)</span>
|
|
1267
|
+
|
|
1268
|
+
|
|
1269
|
+
|
|
1270
|
+
—
|
|
1271
|
+
<div class='inline'><p>as <span class='object_link'><a href="#gets-instance_method" title="MIDICommunicationsWindows::Input#gets (method)">#gets</a></span>, but <code>:data</code> is a String</p></div>
|
|
1272
|
+
|
|
1273
|
+
</li>
|
|
1274
|
+
|
|
1275
|
+
</ul>
|
|
1276
|
+
|
|
1277
|
+
</div><table class="source_code">
|
|
1278
|
+
<tr>
|
|
1279
|
+
<td>
|
|
1280
|
+
<pre class="lines">
|
|
1281
|
+
|
|
1282
|
+
|
|
1283
|
+
76
|
|
1284
|
+
77
|
|
1285
|
+
78
|
|
1286
|
+
79
|
|
1287
|
+
80</pre>
|
|
1288
|
+
</td>
|
|
1289
|
+
<td>
|
|
1290
|
+
<pre class="code"><span class="info file"># File 'lib/midi-communications-windows/input.rb', line 76</span>
|
|
1291
|
+
|
|
1292
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_gets_s'>gets_s</span>
|
|
1293
|
+
<span class='id identifier rubyid_gets'>gets</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_message'>message</span><span class='op'>|</span>
|
|
1294
|
+
<span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='symbol'>:data</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="TypeConversion.html" title="MIDICommunicationsWindows::TypeConversion (module)">TypeConversion</a></span></span><span class='period'>.</span><span class='id identifier rubyid_numeric_bytes_to_hex_string'><span class='object_link'><a href="TypeConversion.html#numeric_bytes_to_hex_string-instance_method" title="MIDICommunicationsWindows::TypeConversion#numeric_bytes_to_hex_string (method)">numeric_bytes_to_hex_string</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_message'>message</span><span class='lbracket'>[</span><span class='symbol'>:data</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
|
1295
|
+
<span class='kw'>end</span>
|
|
1296
|
+
<span class='kw'>end</span></pre>
|
|
1297
|
+
</td>
|
|
1298
|
+
</tr>
|
|
1299
|
+
</table>
|
|
1300
|
+
</div>
|
|
1301
|
+
|
|
1302
|
+
<div class="method_details ">
|
|
1303
|
+
<h3 class="signature " id="manufacturer-instance_method">
|
|
1304
|
+
|
|
1305
|
+
#<strong>manufacturer</strong> ⇒ <tt>nil</tt>
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
|
|
1311
|
+
<span class="not_defined_here">
|
|
1312
|
+
Originally defined in module
|
|
1313
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#manufacturer-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#manufacturer (method)">Device::InstanceMethods</a></span>
|
|
1314
|
+
</span>
|
|
1315
|
+
|
|
1316
|
+
</h3><div class="docstring">
|
|
1317
|
+
<div class="discussion">
|
|
1318
|
+
<p>Who made the device.</p>
|
|
1319
|
+
<p>Always nil on Windows. See the note in <span class='object_link'><a href="Device.html" title="MIDICommunicationsWindows::Device (module)">MIDICommunicationsWindows::Device</a></span> for why this is not
|
|
1320
|
+
derived from <code>wMid</code>.</p>
|
|
1321
|
+
|
|
1322
|
+
</div>
|
|
1323
|
+
</div>
|
|
1324
|
+
<div class="tags">
|
|
1325
|
+
|
|
1326
|
+
<p class="tag_title">Returns:</p>
|
|
1327
|
+
<ul class="return">
|
|
1328
|
+
|
|
1329
|
+
<li>
|
|
1330
|
+
|
|
1331
|
+
|
|
1332
|
+
<span class='type'>(<tt>nil</tt>)</span>
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
</li>
|
|
1337
|
+
|
|
1338
|
+
</ul>
|
|
1339
|
+
|
|
1340
|
+
</div>
|
|
1341
|
+
</div>
|
|
1342
|
+
|
|
1343
|
+
<div class="method_details ">
|
|
1344
|
+
<h3 class="signature " id="model-instance_method">
|
|
1345
|
+
|
|
1346
|
+
#<strong>model</strong> ⇒ <tt>nil</tt>
|
|
1347
|
+
|
|
1348
|
+
|
|
1349
|
+
|
|
1350
|
+
|
|
1351
|
+
|
|
1352
|
+
<span class="not_defined_here">
|
|
1353
|
+
Originally defined in module
|
|
1354
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#model-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#model (method)">Device::InstanceMethods</a></span>
|
|
1355
|
+
</span>
|
|
1356
|
+
|
|
1357
|
+
</h3><div class="docstring">
|
|
1358
|
+
<div class="discussion">
|
|
1359
|
+
<p>The device model.</p>
|
|
1360
|
+
<p>Always nil on Windows, for the same reason as <span class='object_link'><a href="Device/InstanceMethods.html#manufacturer-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#manufacturer (method)">#manufacturer</a></span>.</p>
|
|
1361
|
+
|
|
1362
|
+
</div>
|
|
1363
|
+
</div>
|
|
1364
|
+
<div class="tags">
|
|
1365
|
+
|
|
1366
|
+
<p class="tag_title">Returns:</p>
|
|
1367
|
+
<ul class="return">
|
|
1368
|
+
|
|
1369
|
+
<li>
|
|
1370
|
+
|
|
1371
|
+
|
|
1372
|
+
<span class='type'>(<tt>nil</tt>)</span>
|
|
1373
|
+
|
|
1374
|
+
|
|
1375
|
+
|
|
1376
|
+
</li>
|
|
1377
|
+
|
|
1378
|
+
</ul>
|
|
1379
|
+
|
|
1380
|
+
</div>
|
|
1381
|
+
</div>
|
|
1382
|
+
|
|
1383
|
+
<div class="method_details ">
|
|
1384
|
+
<h3 class="signature " id="open-instance_method">
|
|
1385
|
+
|
|
1386
|
+
#<strong>open</strong> {|self| ... } ⇒ <tt>self</tt>
|
|
1387
|
+
|
|
1388
|
+
|
|
1389
|
+
|
|
1390
|
+
<span class="aliases">Also known as:
|
|
1391
|
+
<span class="names"><span id='enable-instance_method'>enable</span>, <span id='start-instance_method'>start</span></span>
|
|
1392
|
+
</span>
|
|
1393
|
+
|
|
1394
|
+
|
|
1395
|
+
|
|
1396
|
+
<span class="not_defined_here">
|
|
1397
|
+
Originally defined in module
|
|
1398
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#open-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#open (method)">Device::InstanceMethods</a></span>
|
|
1399
|
+
</span>
|
|
1400
|
+
|
|
1401
|
+
</h3><div class="docstring">
|
|
1402
|
+
<div class="discussion">
|
|
1403
|
+
<p>Opens the port.</p>
|
|
1404
|
+
<p>Opening twice is not an error and does nothing the second time, which
|
|
1405
|
+
is what <code>midi-communications</code> relies on when it opens a port a caller
|
|
1406
|
+
may already hold.</p>
|
|
1407
|
+
|
|
1408
|
+
</div>
|
|
1409
|
+
</div>
|
|
1410
|
+
<div class="tags">
|
|
1411
|
+
|
|
1412
|
+
<p class="tag_title">Yields:</p>
|
|
1413
|
+
<ul class="yield">
|
|
1414
|
+
|
|
1415
|
+
<li>
|
|
1416
|
+
|
|
1417
|
+
|
|
1418
|
+
<span class='type'>(<tt>self</tt>)</span>
|
|
1419
|
+
|
|
1420
|
+
|
|
1421
|
+
|
|
1422
|
+
—
|
|
1423
|
+
<div class='inline'><p>if a block is given, the port is closed when it returns</p></div>
|
|
1424
|
+
|
|
1425
|
+
</li>
|
|
1426
|
+
|
|
1427
|
+
</ul>
|
|
1428
|
+
<p class="tag_title">Returns:</p>
|
|
1429
|
+
<ul class="return">
|
|
1430
|
+
|
|
1431
|
+
<li>
|
|
1432
|
+
|
|
1433
|
+
|
|
1434
|
+
<span class='type'>(<tt>self</tt>)</span>
|
|
1435
|
+
|
|
1436
|
+
|
|
1437
|
+
|
|
1438
|
+
</li>
|
|
1439
|
+
|
|
1440
|
+
</ul>
|
|
1441
|
+
<p class="tag_title">Raises:</p>
|
|
1442
|
+
<ul class="raise">
|
|
1443
|
+
|
|
1444
|
+
<li>
|
|
1445
|
+
|
|
1446
|
+
|
|
1447
|
+
<span class='type'>(<tt><span class='object_link'><a href="Error.html" title="MIDICommunicationsWindows::Error (class)">Error</a></span></tt>)</span>
|
|
1448
|
+
|
|
1449
|
+
|
|
1450
|
+
|
|
1451
|
+
—
|
|
1452
|
+
<div class='inline'><p>if WinMM refuses to open the port</p></div>
|
|
1453
|
+
|
|
1454
|
+
</li>
|
|
1455
|
+
|
|
1456
|
+
</ul>
|
|
1457
|
+
|
|
1458
|
+
</div>
|
|
1459
|
+
</div>
|
|
1460
|
+
|
|
1461
|
+
<div class="method_details ">
|
|
1462
|
+
<h3 class="signature " id="to_s-instance_method">
|
|
1463
|
+
|
|
1464
|
+
#<strong>to_s</strong> ⇒ <tt>String</tt>
|
|
1465
|
+
|
|
1466
|
+
|
|
1467
|
+
|
|
1468
|
+
|
|
1469
|
+
|
|
1470
|
+
<span class="not_defined_here">
|
|
1471
|
+
Originally defined in module
|
|
1472
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#to_s-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#to_s (method)">Device::InstanceMethods</a></span>
|
|
1473
|
+
</span>
|
|
1474
|
+
|
|
1475
|
+
</h3><div class="docstring">
|
|
1476
|
+
<div class="discussion">
|
|
1477
|
+
|
|
1478
|
+
|
|
1479
|
+
</div>
|
|
1480
|
+
</div>
|
|
1481
|
+
<div class="tags">
|
|
1482
|
+
|
|
1483
|
+
<p class="tag_title">Returns:</p>
|
|
1484
|
+
<ul class="return">
|
|
1485
|
+
|
|
1486
|
+
<li>
|
|
1487
|
+
|
|
1488
|
+
|
|
1489
|
+
<span class='type'>(<tt>String</tt>)</span>
|
|
1490
|
+
|
|
1491
|
+
|
|
1492
|
+
|
|
1493
|
+
</li>
|
|
1494
|
+
|
|
1495
|
+
</ul>
|
|
1496
|
+
|
|
1497
|
+
</div>
|
|
1498
|
+
</div>
|
|
1499
|
+
|
|
1500
|
+
<div class="method_details ">
|
|
1501
|
+
<h3 class="signature " id="type-instance_method">
|
|
1502
|
+
|
|
1503
|
+
#<strong>type</strong> ⇒ <tt>Symbol</tt>
|
|
1504
|
+
|
|
1505
|
+
|
|
1506
|
+
|
|
1507
|
+
|
|
1508
|
+
|
|
1509
|
+
<span class="not_defined_here">
|
|
1510
|
+
Originally defined in module
|
|
1511
|
+
<span class='object_link'><a href="Device/InstanceMethods.html#type-instance_method" title="MIDICommunicationsWindows::Device::InstanceMethods#type (method)">Device::InstanceMethods</a></span>
|
|
1512
|
+
</span>
|
|
1513
|
+
|
|
1514
|
+
</h3><div class="docstring">
|
|
1515
|
+
<div class="discussion">
|
|
1516
|
+
<p>The port's direction.</p>
|
|
1517
|
+
|
|
1518
|
+
</div>
|
|
1519
|
+
</div>
|
|
1520
|
+
<div class="tags">
|
|
1521
|
+
|
|
1522
|
+
<p class="tag_title">Returns:</p>
|
|
1523
|
+
<ul class="return">
|
|
1524
|
+
|
|
1525
|
+
<li>
|
|
1526
|
+
|
|
1527
|
+
|
|
1528
|
+
<span class='type'>(<tt>Symbol</tt>)</span>
|
|
1529
|
+
|
|
1530
|
+
|
|
1531
|
+
|
|
1532
|
+
—
|
|
1533
|
+
<div class='inline'><p><code>:input</code> or <code>:output</code></p></div>
|
|
1534
|
+
|
|
1535
|
+
</li>
|
|
1536
|
+
|
|
1537
|
+
</ul>
|
|
1538
|
+
|
|
1539
|
+
</div>
|
|
1540
|
+
</div>
|
|
1541
|
+
|
|
1542
|
+
</div>
|
|
1543
|
+
|
|
1544
|
+
</div>
|
|
1545
|
+
|
|
1546
|
+
<div id="footer">
|
|
1547
|
+
Generated on Sun Sep 6 21:20:52 2026 by
|
|
1548
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
|
1549
|
+
0.9.45 (ruby-3.4.7).
|
|
1550
|
+
</div>
|
|
1551
|
+
|
|
1552
|
+
</div>
|
|
1553
|
+
</body>
|
|
1554
|
+
</html>
|