summaryrefslogtreecommitdiff
path: root/doc/html/RtMidi_8h_source.html
diff options
context:
space:
mode:
authorGary Scavone <gary@music.mcgill.ca>2016-02-11 10:58:57 -0500
committerGary Scavone <gary@music.mcgill.ca>2016-02-11 10:58:57 -0500
commitfb24c2f884a1f88a60ae818d88e3782498b59351 (patch)
treef92eb7d0b81418407ffb4b0c65452912eaaf4d96 /doc/html/RtMidi_8h_source.html
parent32ccbf50a028826574f0dc1ad0c5dd3fab650c9a (diff)
Release 2.1.1 tarballreleases
Diffstat (limited to 'doc/html/RtMidi_8h_source.html')
-rw-r--r--doc/html/RtMidi_8h_source.html600
1 files changed, 301 insertions, 299 deletions
diff --git a/doc/html/RtMidi_8h_source.html b/doc/html/RtMidi_8h_source.html
index f196eef..d0ffa90 100644
--- a/doc/html/RtMidi_8h_source.html
+++ b/doc/html/RtMidi_8h_source.html
@@ -20,7 +20,7 @@
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifndef RTMIDI_H</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define RTMIDI_H</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define RTMIDI_VERSION &quot;2.1.0&quot;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define RTMIDI_VERSION &quot;2.1.1&quot;</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;exception&gt;</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div>
@@ -65,7 +65,7 @@
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;};</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"><a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb"> 112</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a>)( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905ee" title="Defined RtMidiError types.">RtMidiError::Type</a> type, <span class="keyword">const</span> std::string &amp;errorText );</div>
+<div class="line"><a name="l00112"></a><span class="lineno"><a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d"> 112</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a>)( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905ee" title="Defined RtMidiError types.">RtMidiError::Type</a> type, <span class="keyword">const</span> std::string &amp;errorText, <span class="keywordtype">void</span> *userData );</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">class </span><a class="code" href="classMidiApi.html">MidiApi</a>;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
@@ -100,7 +100,7 @@
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classRtMidi.html#a74fc50ce1aec6b8ecb0c31094b3024a9" title="Returns true if a port is open and false if not.">isPortOpen</a>( <span class="keywordtype">void</span> ) const = 0;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9c9123f494b523f40ee5040a7ed24478" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL ) = 0;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#aa6d6f2e0d06c64268c8898aa15f3a5df" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL, <span class="keywordtype">void</span> *userData = 0 ) = 0;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; protected:</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
@@ -171,7 +171,7 @@
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordtype">double</span> getMessage( std::vector&lt;<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>&gt; *message );</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9c9123f494b523f40ee5040a7ed24478" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL );</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#aa6d6f2e0d06c64268c8898aa15f3a5df" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL, <span class="keywordtype">void</span> *userData = 0 );</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; protected:</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordtype">void</span> openMidiApi( RtMidi::<a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">Api</a> api, const std::<span class="keywordtype">string</span> clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
@@ -212,7 +212,7 @@
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9c9123f494b523f40ee5040a7ed24478" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL );</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#aa6d6f2e0d06c64268c8898aa15f3a5df" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback = NULL, <span class="keywordtype">void</span> *userData = 0 );</div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keyword">protected</span>:</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordtype">void</span> openMidiApi( <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> api, <span class="keyword">const</span> std::string clientName );</div>
@@ -247,7 +247,7 @@
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keyword">virtual</span> std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) = 0;</div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classRtMidi.html#a74fc50ce1aec6b8ecb0c31094b3024a9" title="Returns true if a port is open and false if not.">isPortOpen</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> connected_; }</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9c9123f494b523f40ee5040a7ed24478" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback );</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#aa6d6f2e0d06c64268c8898aa15f3a5df" title="Set an error callback function to be invoked when an error has occured.">setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback, <span class="keywordtype">void</span> *userData );</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;</div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordtype">void</span> error( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905ee" title="Defined RtMidiError types.">RtMidiError::Type</a> type, std::string errorString );</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;</div>
@@ -257,310 +257,312 @@
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordtype">void</span> *apiData_;</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordtype">bool</span> connected_;</div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; std::string errorString_;</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback_;</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;};</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div>
-<div class="line"><a name="l00465"></a><span class="lineno"><a class="code" href="classMidiInApi.html"> 465</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInApi.html">MidiInApi</a> : <span class="keyword">public</span> <a class="code" href="classMidiApi.html">MidiApi</a></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;{</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="classMidiInApi.html">MidiInApi</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classMidiInApi.html">MidiInApi</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordtype">void</span> setCallback( <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiIn::RtMidiCallback</a> callback, <span class="keywordtype">void</span> *userData );</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordtype">void</span> cancelCallback( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> ignoreTypes( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense );</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordtype">double</span> getMessage( std::vector&lt;unsigned char&gt; *message );</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="comment">// A MIDI structure used internally by the class to store incoming</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="comment">// messages. Each message represents one and only one MIDI message.</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1MidiMessage.html"> 478</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> { </div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; std::vector&lt;unsigned char&gt; bytes; </div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordtype">double</span> timeStamp;</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="comment">// Default constructor.</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a>()</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; :bytes(0), timeStamp(0.0) {}</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; };</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div>
-<div class="line"><a name="l00487"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1MidiQueue.html"> 487</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a> {</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> front;</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> back;</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size;</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ringSize;</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> *ring;</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="comment">// Default constructor.</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a>()</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; :front(0), back(0), size(0), ringSize(0) {}</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; };</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="comment">// The RtMidiInData structure is used to pass private class data to</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="comment">// the MIDI input handling function or thread.</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1RtMidiInData.html"> 501</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a> {</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a> queue;</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> message;</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ignoreFlags;</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keywordtype">bool</span> doInput;</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordtype">bool</span> firstMessage;</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordtype">void</span> *apiData;</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keywordtype">bool</span> usingCallback;</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiIn::RtMidiCallback</a> userCallback;</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordtype">void</span> *userData;</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordtype">bool</span> continueSysex;</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="comment">// Default constructor.</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a>()</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; : ignoreFlags(7), doInput(<span class="keyword">false</span>), firstMessage(<span class="keyword">true</span>),</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; apiData(0), usingCallback(<span class="keyword">false</span>), userCallback(0), userData(0),</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; continueSysex(<span class="keyword">false</span>) {}</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; };</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a> inputData_;</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;};</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div>
-<div class="line"><a name="l00524"></a><span class="lineno"><a class="code" href="classMidiOutApi.html"> 524</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutApi.html">MidiOutApi</a> : <span class="keyword">public</span> <a class="code" href="classMidiApi.html">MidiApi</a></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;{</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <a class="code" href="classMidiOutApi.html">MidiOutApi</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classMidiOutApi.html">MidiOutApi</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message ) = 0;</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;};</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="comment">// **************************************************************** //</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="comment">// Inline RtMidiIn and RtMidiOut definitions.</span></div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback_;</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="keywordtype">bool</span> firstErrorOccurred_;</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordtype">void</span> *errorCallbackUserData_;</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;};</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;</div>
+<div class="line"><a name="l00467"></a><span class="lineno"><a class="code" href="classMidiInApi.html"> 467</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInApi.html">MidiInApi</a> : <span class="keyword">public</span> <a class="code" href="classMidiApi.html">MidiApi</a></div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;{</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="classMidiInApi.html">MidiInApi</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classMidiInApi.html">MidiInApi</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordtype">void</span> setCallback( <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiIn::RtMidiCallback</a> callback, <span class="keywordtype">void</span> *userData );</div>
+<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordtype">void</span> cancelCallback( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> ignoreTypes( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense );</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keywordtype">double</span> getMessage( std::vector&lt;unsigned char&gt; *message );</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;</div>
+<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="comment">// A MIDI structure used internally by the class to store incoming</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="comment">// messages. Each message represents one and only one MIDI message.</span></div>
+<div class="line"><a name="l00480"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1MidiMessage.html"> 480</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> { </div>
+<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; std::vector&lt;unsigned char&gt; bytes; </div>
+<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordtype">double</span> timeStamp;</div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;</div>
+<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="comment">// Default constructor.</span></div>
+<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a>()</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; :bytes(0), timeStamp(0.0) {}</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; };</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;</div>
+<div class="line"><a name="l00489"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1MidiQueue.html"> 489</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a> {</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> front;</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> back;</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> size;</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ringSize;</div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> *ring;</div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;</div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="comment">// Default constructor.</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a>()</div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; :front(0), back(0), size(0), ringSize(0) {}</div>
+<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; };</div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div>
+<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="comment">// The RtMidiInData structure is used to pass private class data to</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="comment">// the MIDI input handling function or thread.</span></div>
+<div class="line"><a name="l00503"></a><span class="lineno"><a class="code" href="structMidiInApi_1_1RtMidiInData.html"> 503</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a> {</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="structMidiInApi_1_1MidiQueue.html">MidiQueue</a> queue;</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="structMidiInApi_1_1MidiMessage.html">MidiMessage</a> message;</div>
+<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> ignoreFlags;</div>
+<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordtype">bool</span> doInput;</div>
+<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keywordtype">bool</span> firstMessage;</div>
+<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordtype">void</span> *apiData;</div>
+<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordtype">bool</span> usingCallback;</div>
+<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <a class="code" href="classRtMidiIn.html#a297d2eb3c3420b437970a6fc59d89cbf" title="User callback function type definition.">RtMidiIn::RtMidiCallback</a> userCallback;</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordtype">void</span> *userData;</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordtype">bool</span> continueSysex;</div>
+<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;</div>
+<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="comment">// Default constructor.</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a>()</div>
+<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; : ignoreFlags(7), doInput(<span class="keyword">false</span>), firstMessage(<span class="keyword">true</span>),</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; apiData(0), usingCallback(<span class="keyword">false</span>), userCallback(0), userData(0),</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; continueSysex(<span class="keyword">false</span>) {}</div>
+<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; };</div>
+<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;</div>
+<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="structMidiInApi_1_1RtMidiInData.html">RtMidiInData</a> inputData_;</div>
+<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;};</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;</div>
+<div class="line"><a name="l00526"></a><span class="lineno"><a class="code" href="classMidiOutApi.html"> 526</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutApi.html">MidiOutApi</a> : <span class="keyword">public</span> <a class="code" href="classMidiApi.html">MidiApi</a></div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;{</div>
+<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;</div>
+<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <a class="code" href="classMidiOutApi.html">MidiOutApi</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classMidiOutApi.html">MidiOutApi</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message ) = 0;</div>
+<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;};</div>
+<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div>
+<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="comment">// **************************************************************** //</span></div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="comment">// **************************************************************** //</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div>
-<div class="line"><a name="l00539"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164"> 539</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">RtMidiIn :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }</div>
-<div class="line"><a name="l00540"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c"> 540</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection given by enumeration number.">RtMidiIn :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openPort( portNumber, portName ); }</div>
-<div class="line"><a name="l00541"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2"> 541</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS X...">RtMidiIn :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openVirtualPort( portName ); }</div>
-<div class="line"><a name="l00542"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39"> 542</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">RtMidiIn :: closePort</a>( <span class="keywordtype">void</span> ) { rtapi_-&gt;closePort(); }</div>
-<div class="line"><a name="l00543"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#abc3f1204c9a8b3adc31cda4820c1935c"> 543</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classRtMidiIn.html#abc3f1204c9a8b3adc31cda4820c1935c" title="Returns true if a port is open and false if not.">RtMidiIn :: isPortOpen</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rtapi_-&gt;isPortOpen(); }</div>
-<div class="line"><a name="l00544"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d"> 544</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">RtMidiIn :: setCallback</a>( RtMidiCallback callback, <span class="keywordtype">void</span> *userData ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;setCallback( callback, userData ); }</div>
-<div class="line"><a name="l00545"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e"> 545</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">RtMidiIn :: cancelCallback</a>( <span class="keywordtype">void</span> ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;cancelCallback(); }</div>
-<div class="line"><a name="l00546"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4"> 546</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">RtMidiIn :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }</div>
-<div class="line"><a name="l00547"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf"> 547</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">RtMidiIn :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }</div>
-<div class="line"><a name="l00548"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533"> 548</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input.">RtMidiIn :: ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;ignoreTypes( midiSysex, midiTime, midiSense ); }</div>
-<div class="line"><a name="l00549"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb"> 549</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message in the input qu...">RtMidiIn :: getMessage</a>( std::vector&lt;unsigned char&gt; *message ) { <span class="keywordflow">return</span> ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;getMessage( message ); }</div>
-<div class="line"><a name="l00550"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#ac890a603444f0e5876c34f430505fdb0"> 550</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ac890a603444f0e5876c34f430505fdb0" title="Set an error callback function to be invoked when an error has occured.">RtMidiIn :: setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback ) { rtapi_-&gt;setErrorCallback(errorCallback); }</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div>
-<div class="line"><a name="l00552"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f"> 552</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f" title="Returns the MIDI API specifier for the current instance of RtMidiOut.">RtMidiOut :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }</div>
-<div class="line"><a name="l00553"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186"> 553</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186" title="Open a MIDI output connection.">RtMidiOut :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openPort( portNumber, portName ); }</div>
-<div class="line"><a name="l00554"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a"> 554</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a" title="Create a virtual output port, with optional name, to allow software connections (OS X...">RtMidiOut :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openVirtualPort( portName ); }</div>
-<div class="line"><a name="l00555"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8"> 555</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8" title="Close an open MIDI connection (if one exists).">RtMidiOut :: closePort</a>( <span class="keywordtype">void</span> ) { rtapi_-&gt;closePort(); }</div>
-<div class="line"><a name="l00556"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#afe59ea775fb231ac19dab97bb7f5aa7d"> 556</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classRtMidiOut.html#afe59ea775fb231ac19dab97bb7f5aa7d" title="Returns true if a port is open and false if not.">RtMidiOut :: isPortOpen</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rtapi_-&gt;isPortOpen(); }</div>
-<div class="line"><a name="l00557"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976"> 557</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976" title="Return the number of available MIDI output ports.">RtMidiOut :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }</div>
-<div class="line"><a name="l00558"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c"> 558</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c" title="Return a string identifier for the specified MIDI port type and number.">RtMidiOut :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }</div>
-<div class="line"><a name="l00559"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3"> 559</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3" title="Immediately send a single message out an open MIDI output port.">RtMidiOut :: sendMessage</a>( std::vector&lt;unsigned char&gt; *message ) { ((<a class="code" href="classMidiOutApi.html">MidiOutApi</a> *)rtapi_)-&gt;sendMessage( message ); }</div>
-<div class="line"><a name="l00560"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#afcabeb089fb3c491707d14e085433500"> 560</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#afcabeb089fb3c491707d14e085433500" title="Set an error callback function to be invoked when an error has occured.">RtMidiOut :: setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a530aef8e3582ad9c4042f732eea14abb" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback ) { rtapi_-&gt;setErrorCallback(errorCallback); }</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;<span class="comment">// **************************************************************** //</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="comment">// MidiInApi and MidiOutApi subclass prototypes.</span></div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="comment">// Inline RtMidiIn and RtMidiOut definitions.</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;<span class="comment">// **************************************************************** //</span></div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div>
+<div class="line"><a name="l00541"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164"> 541</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiIn.html#a6475a11eeb0c8bf22157c3887b100164" title="Returns the MIDI API specifier for the current instance of RtMidiIn.">RtMidiIn :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }</div>
+<div class="line"><a name="l00542"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c"> 542</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a39df8f81a22f729a9904707dde487d2c" title="Open a MIDI input connection given by enumeration number.">RtMidiIn :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openPort( portNumber, portName ); }</div>
+<div class="line"><a name="l00543"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2"> 543</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a245261b3f12ce727faed18fcfeef18c2" title="Create a virtual input port, with optional name, to allow software connections (OS X...">RtMidiIn :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openVirtualPort( portName ); }</div>
+<div class="line"><a name="l00544"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39"> 544</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a55bacf0d228fd8e3be6a79d12fd1dc39" title="Close an open MIDI connection (if one exists).">RtMidiIn :: closePort</a>( <span class="keywordtype">void</span> ) { rtapi_-&gt;closePort(); }</div>
+<div class="line"><a name="l00545"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#abc3f1204c9a8b3adc31cda4820c1935c"> 545</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classRtMidiIn.html#abc3f1204c9a8b3adc31cda4820c1935c" title="Returns true if a port is open and false if not.">RtMidiIn :: isPortOpen</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rtapi_-&gt;isPortOpen(); }</div>
+<div class="line"><a name="l00546"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d"> 546</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#a7590563461c7467608a4b3806406b32d" title="Set a callback function to be invoked for incoming MIDI messages.">RtMidiIn :: setCallback</a>( RtMidiCallback callback, <span class="keywordtype">void</span> *userData ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;setCallback( callback, userData ); }</div>
+<div class="line"><a name="l00547"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e"> 547</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ade23832a66c1ed56965c26325602543e" title="Cancel use of the current callback function (if one exists).">RtMidiIn :: cancelCallback</a>( <span class="keywordtype">void</span> ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;cancelCallback(); }</div>
+<div class="line"><a name="l00548"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4"> 548</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiIn.html#a62b1b38aa8e5f11cd66f03d59228f4e4" title="Return the number of available MIDI input ports.">RtMidiIn :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }</div>
+<div class="line"><a name="l00549"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf"> 549</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="classRtMidiIn.html#af2961fff09fa01a3d5bc0f0c5a042aaf" title="Return a string identifier for the specified MIDI input port number.">RtMidiIn :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }</div>
+<div class="line"><a name="l00550"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533"> 550</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#af9507125aaa42276ccc01df576fc3533" title="Specify whether certain MIDI message types should be queued or ignored during input.">RtMidiIn :: ignoreTypes</a>( <span class="keywordtype">bool</span> midiSysex, <span class="keywordtype">bool</span> midiTime, <span class="keywordtype">bool</span> midiSense ) { ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;ignoreTypes( midiSysex, midiTime, midiSense ); }</div>
+<div class="line"><a name="l00551"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb"> 551</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classRtMidiIn.html#a1ba10ecd276b30a8579c7d60a9c890eb" title="Fill the user-provided vector with the data bytes for the next available MIDI message in the input qu...">RtMidiIn :: getMessage</a>( std::vector&lt;unsigned char&gt; *message ) { <span class="keywordflow">return</span> ((<a class="code" href="classMidiInApi.html">MidiInApi</a> *)rtapi_)-&gt;getMessage( message ); }</div>
+<div class="line"><a name="l00552"></a><span class="lineno"><a class="code" href="classRtMidiIn.html#ad70189a24427b3169d81fcc69f6441e0"> 552</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiIn.html#ad70189a24427b3169d81fcc69f6441e0" title="Set an error callback function to be invoked when an error has occured.">RtMidiIn :: setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback, <span class="keywordtype">void</span> *userData ) { rtapi_-&gt;setErrorCallback(errorCallback, userData); }</div>
+<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div>
+<div class="line"><a name="l00554"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f"> 554</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> <a class="code" href="classRtMidiOut.html#a532b5712e305bd8afb65a3ad14138e0f" title="Returns the MIDI API specifier for the current instance of RtMidiOut.">RtMidiOut :: getCurrentApi</a>( <span class="keywordtype">void</span> ) throw() { <span class="keywordflow">return</span> rtapi_-&gt;getCurrentApi(); }</div>
+<div class="line"><a name="l00555"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186"> 555</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a1b280d67317cd473a8816aeb2fe6c186" title="Open a MIDI output connection.">RtMidiOut :: openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openPort( portNumber, portName ); }</div>
+<div class="line"><a name="l00556"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a"> 556</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a47068e1c076d91fd89587c0ccdeddc7a" title="Create a virtual output port, with optional name, to allow software connections (OS X...">RtMidiOut :: openVirtualPort</a>( <span class="keyword">const</span> std::string portName ) { rtapi_-&gt;openVirtualPort( portName ); }</div>
+<div class="line"><a name="l00557"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8"> 557</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a5a28d1ba9e002fd07a317d3a257d87e8" title="Close an open MIDI connection (if one exists).">RtMidiOut :: closePort</a>( <span class="keywordtype">void</span> ) { rtapi_-&gt;closePort(); }</div>
+<div class="line"><a name="l00558"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#afe59ea775fb231ac19dab97bb7f5aa7d"> 558</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classRtMidiOut.html#afe59ea775fb231ac19dab97bb7f5aa7d" title="Returns true if a port is open and false if not.">RtMidiOut :: isPortOpen</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> rtapi_-&gt;isPortOpen(); }</div>
+<div class="line"><a name="l00559"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976"> 559</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidiOut.html#a0c4d662e1c398ddf35a2dbaf66f50976" title="Return the number of available MIDI output ports.">RtMidiOut :: getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortCount(); }</div>
+<div class="line"><a name="l00560"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c"> 560</a></span>&#160;<span class="keyword">inline</span> std::string <a class="code" href="classRtMidiOut.html#acc4ae0ab71a49ae7629075d5a9cd837c" title="Return a string identifier for the specified MIDI port type and number.">RtMidiOut :: getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> rtapi_-&gt;getPortName( portNumber ); }</div>
+<div class="line"><a name="l00561"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3"> 561</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a0bd8972ef8ac4e8d37ccc4b5d51c2eb3" title="Immediately send a single message out an open MIDI output port.">RtMidiOut :: sendMessage</a>( std::vector&lt;unsigned char&gt; *message ) { ((<a class="code" href="classMidiOutApi.html">MidiOutApi</a> *)rtapi_)-&gt;sendMessage( message ); }</div>
+<div class="line"><a name="l00562"></a><span class="lineno"><a class="code" href="classRtMidiOut.html#a91a4571214f7b033312cc6cb661d3253"> 562</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classRtMidiOut.html#a91a4571214f7b033312cc6cb661d3253" title="Set an error callback function to be invoked when an error has occured.">RtMidiOut :: setErrorCallback</a>( <a class="code" href="RtMidi_8h.html#a36eff69cc45bba67a1f315823c7bc78d" title="RtMidi error callback function prototype.">RtMidiErrorCallback</a> errorCallback, <span class="keywordtype">void</span> *userData ) { rtapi_-&gt;setErrorCallback(errorCallback, userData); }</div>
+<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;</div>
+<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="comment">// **************************************************************** //</span></div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="comment">//</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="comment">// **************************************************************** //</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="preprocessor">#if !defined(__LINUX_ALSA__) &amp;&amp; !defined(__UNIX_JACK__) &amp;&amp; !defined(__MACOSX_CORE__) &amp;&amp; !defined(__WINDOWS_MM__)</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;<span class="preprocessor"></span><span class="preprocessor"> #define __RTMIDI_DUMMY__</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="preprocessor">#if defined(__MACOSX_CORE__)</span></div>
+<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="comment">// MidiInApi and MidiOutApi subclass prototypes.</span></div>
+<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;<span class="comment">//</span></div>
+<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="comment">// **************************************************************** //</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div>
+<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="preprocessor">#if !defined(__LINUX_ALSA__) &amp;&amp; !defined(__UNIX_JACK__) &amp;&amp; !defined(__MACOSX_CORE__) &amp;&amp; !defined(__WINDOWS_MM__)</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="preprocessor"></span><span class="preprocessor"> #define __RTMIDI_DUMMY__</span></div>
+<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"><a class="code" href="classMidiInCore.html"> 574</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInCore.html">MidiInCore</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;{</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <a class="code" href="classMidiInCore.html">MidiInCore</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; ~<a class="code" href="classMidiInCore.html">MidiInCore</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;};</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;</div>
-<div class="line"><a name="l00590"></a><span class="lineno"><a class="code" href="classMidiOutCore.html"> 590</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutCore.html">MidiOutCore</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;{</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <a class="code" href="classMidiOutCore.html">MidiOutCore</a>( <span class="keyword">const</span> std::string clientName );</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; ~<a class="code" href="classMidiOutCore.html">MidiOutCore</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;};</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="preprocessor">#if defined(__UNIX_JACK__)</span></div>
+<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="preprocessor">#if defined(__MACOSX_CORE__)</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00576"></a><span class="lineno"><a class="code" href="classMidiInCore.html"> 576</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInCore.html">MidiInCore</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
+<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;{</div>
+<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="classMidiInCore.html">MidiInCore</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
+<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; ~<a class="code" href="classMidiInCore.html">MidiInCore</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };</div>
+<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;</div>
+<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;};</div>
+<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;</div>
+<div class="line"><a name="l00592"></a><span class="lineno"><a class="code" href="classMidiOutCore.html"> 592</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutCore.html">MidiOutCore</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
+<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;{</div>
+<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <a class="code" href="classMidiOutCore.html">MidiOutCore</a>( <span class="keyword">const</span> std::string clientName );</div>
+<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; ~<a class="code" href="classMidiOutCore.html">MidiOutCore</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a3f41293f89467641484fbd54c4530908">RtMidi::MACOSX_CORE</a>; };</div>
+<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
+<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;</div>
+<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;};</div>
+<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;</div>
+<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"><a class="code" href="classMidiInJack.html"> 611</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInJack.html">MidiInJack</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;{</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <a class="code" href="classMidiInJack.html">MidiInJack</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; ~<a class="code" href="classMidiInJack.html">MidiInJack</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; std::string clientName;</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordtype">void</span> connect( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;};</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;</div>
-<div class="line"><a name="l00630"></a><span class="lineno"><a class="code" href="classMidiOutJack.html"> 630</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutJack.html">MidiOutJack</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;{</div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <a class="code" href="classMidiOutJack.html">MidiOutJack</a>( <span class="keyword">const</span> std::string clientName );</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; ~<a class="code" href="classMidiOutJack.html">MidiOutJack</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; std::string clientName;</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordtype">void</span> connect( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;};</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="preprocessor">#if defined(__LINUX_ALSA__)</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;<span class="preprocessor">#if defined(__UNIX_JACK__)</span></div>
+<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00613"></a><span class="lineno"><a class="code" href="classMidiInJack.html"> 613</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInJack.html">MidiInJack</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
+<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;{</div>
+<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <a class="code" href="classMidiInJack.html">MidiInJack</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
+<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; ~<a class="code" href="classMidiInJack.html">MidiInJack</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };</div>
+<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div>
+<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; std::string clientName;</div>
+<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div>
+<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordtype">void</span> connect( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;};</div>
+<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div>
+<div class="line"><a name="l00632"></a><span class="lineno"><a class="code" href="classMidiOutJack.html"> 632</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutJack.html">MidiOutJack</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
+<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;{</div>
+<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <a class="code" href="classMidiOutJack.html">MidiOutJack</a>( <span class="keyword">const</span> std::string clientName );</div>
+<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; ~<a class="code" href="classMidiOutJack.html">MidiOutJack</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a1f59daf3120f47c0ae3891773112ddfa">RtMidi::UNIX_JACK</a>; };</div>
+<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
+<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;</div>
+<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; std::string clientName;</div>
+<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;</div>
+<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordtype">void</span> connect( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;};</div>
+<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;</div>
+<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"><a class="code" href="classMidiInAlsa.html"> 654</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;{</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; ~<a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;};</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div>
-<div class="line"><a name="l00670"></a><span class="lineno"><a class="code" href="classMidiOutAlsa.html"> 670</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;{</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>( <span class="keyword">const</span> std::string clientName );</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; ~<a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;};</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;<span class="preprocessor">#if defined(__WINDOWS_MM__)</span></div>
+<div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;<span class="preprocessor">#if defined(__LINUX_ALSA__)</span></div>
+<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00656"></a><span class="lineno"><a class="code" href="classMidiInAlsa.html"> 656</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
+<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;{</div>
+<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
+<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; ~<a class="code" href="classMidiInAlsa.html">MidiInAlsa</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };</div>
+<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;</div>
+<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;};</div>
+<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;</div>
+<div class="line"><a name="l00672"></a><span class="lineno"><a class="code" href="classMidiOutAlsa.html"> 672</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
+<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;{</div>
+<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>( <span class="keyword">const</span> std::string clientName );</div>
+<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; ~<a class="code" href="classMidiOutAlsa.html">MidiOutAlsa</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a20c691b24844d3ab5dbf882123235df2">RtMidi::LINUX_ALSA</a>; };</div>
+<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
+<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;</div>
+<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;};</div>
+<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;</div>
+<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"><a class="code" href="classMidiInWinMM.html"> 691</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;{</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; ~<a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;};</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div>
-<div class="line"><a name="l00707"></a><span class="lineno"><a class="code" href="classMidiOutWinMM.html"> 707</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;{</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>( <span class="keyword">const</span> std::string clientName );</div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; ~<a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;};</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;<span class="preprocessor">#if defined(__RTMIDI_DUMMY__)</span></div>
+<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;<span class="preprocessor">#if defined(__WINDOWS_MM__)</span></div>
+<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00693"></a><span class="lineno"><a class="code" href="classMidiInWinMM.html"> 693</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
+<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;{</div>
+<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>( <span class="keyword">const</span> std::string clientName, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit );</div>
+<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; ~<a class="code" href="classMidiInWinMM.html">MidiInWinMM</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };</div>
+<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div>
+<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;};</div>
+<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;</div>
+<div class="line"><a name="l00709"></a><span class="lineno"><a class="code" href="classMidiOutWinMM.html"> 709</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
+<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;{</div>
+<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>( <span class="keyword">const</span> std::string clientName );</div>
+<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; ~<a class="code" href="classMidiOutWinMM.html">MidiOutWinMM</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a647868cb4ed37f517bf185a7f41cb70f">RtMidi::WINDOWS_MM</a>; };</div>
+<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber, <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string portName );</div>
+<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> );</div>
+<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber );</div>
+<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; *message );</div>
+<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div>
+<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; clientName );</div>
+<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;};</div>
+<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div>
+<div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;<span class="preprocessor"></span></div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="keyword">class </span>MidiInDummy: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;{</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; MidiInDummy( <span class="keyword">const</span> std::string <span class="comment">/*clientName*/</span>, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit ) : <a class="code" href="classMidiInApi.html">MidiInApi</a>( queueSizeLimit ) { errorString_ = <span class="stringliteral">&quot;MidiInDummy: This class provides no functionality.&quot;</span>; error( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905eea778e66d730c9ff2aab7000aed36ca8df">RtMidiError::WARNING</a>, errorString_ ); }</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; }</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span>, <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) {}</div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; }</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; }</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; <span class="comment">/*clientName*/</span> ) {}</div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;};</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;<span class="keyword">class </span>MidiOutDummy: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;{</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; MidiOutDummy( <span class="keyword">const</span> std::string <span class="comment">/*clientName*/</span> ) { errorString_ = <span class="stringliteral">&quot;MidiOutDummy: This class provides no functionality.&quot;</span>; error( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905eea778e66d730c9ff2aab7000aed36ca8df">RtMidiError::WARNING</a>, errorString_ ); }</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; }</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span>, <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) {}</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; }</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span> ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; }</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; * <span class="comment">/*message*/</span> ) {}</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; <span class="comment">/*clientName*/</span> ) {}</div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;};</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;</div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="preprocessor">#if defined(__RTMIDI_DUMMY__)</span></div>
+<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;<span class="keyword">class </span>MidiInDummy: <span class="keyword">public</span> <a class="code" href="classMidiInApi.html">MidiInApi</a></div>
+<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;{</div>
+<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; MidiInDummy( <span class="keyword">const</span> std::string <span class="comment">/*clientName*/</span>, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> queueSizeLimit ) : <a class="code" href="classMidiInApi.html">MidiInApi</a>( queueSizeLimit ) { errorString_ = <span class="stringliteral">&quot;MidiInDummy: This class provides no functionality.&quot;</span>; error( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905eea778e66d730c9ff2aab7000aed36ca8df">RtMidiError::WARNING</a>, errorString_ ); }</div>
+<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; }</div>
+<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span>, <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
+<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
+<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) {}</div>
+<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; }</div>
+<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> portNumber ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; }</div>
+<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div>
+<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; <span class="comment">/*clientName*/</span> ) {}</div>
+<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;};</div>
+<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div>
+<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;<span class="keyword">class </span>MidiOutDummy: <span class="keyword">public</span> <a class="code" href="classMidiOutApi.html">MidiOutApi</a></div>
+<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;{</div>
+<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; MidiOutDummy( <span class="keyword">const</span> std::string <span class="comment">/*clientName*/</span> ) { errorString_ = <span class="stringliteral">&quot;MidiOutDummy: This class provides no functionality.&quot;</span>; error( <a class="code" href="classRtMidiError.html#a741314057cec5fb8c743c12f284905eea778e66d730c9ff2aab7000aed36ca8df">RtMidiError::WARNING</a>, errorString_ ); }</div>
+<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406" title="MIDI API specifier arguments.">RtMidi::Api</a> getCurrentApi( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> <a class="code" href="classRtMidi.html#aac66af04a85fe5c5f07c360574a19406a54dba406ab358492005ce2b966a2d959">RtMidi::RTMIDI_DUMMY</a>; }</div>
+<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#ad9e30a89638f93193cb40edebaa536f5" title="Pure virtual openPort() function.">openPort</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span>, <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
+<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a9200cde4f5337c0bc421d20bd4fcf654" title="Pure virtual openVirtualPort() function.">openVirtualPort</a>( <span class="keyword">const</span> std::string <span class="comment">/*portName*/</span> ) {}</div>
+<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classRtMidi.html#a36125c4fa16550345b57f4a4927f5b4a" title="Pure virtual closePort() function.">closePort</a>( <span class="keywordtype">void</span> ) {}</div>
+<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classRtMidi.html#a9a49ef73a1e6007444019a7ae095e195" title="Pure virtual getPortCount() function.">getPortCount</a>( <span class="keywordtype">void</span> ) { <span class="keywordflow">return</span> 0; }</div>
+<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; std::string <a class="code" href="classRtMidi.html#a799e2b9f4df39b298518f2b394db3391" title="Pure virtual getPortName() function.">getPortName</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <span class="comment">/*portNumber*/</span> ) { <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>; }</div>
+<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; <span class="keywordtype">void</span> sendMessage( std::vector&lt;unsigned char&gt; * <span class="comment">/*message*/</span> ) {}</div>
+<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160;</div>
+<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <span class="keywordtype">void</span> initialize( <span class="keyword">const</span> std::string&amp; <span class="comment">/*clientName*/</span> ) {}</div>
+<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;};</div>
+<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;</div>
<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<HR>
<table><tr><td><img src="../images/mcgill.gif" width=165></td>
- <td>&copy;2003-2014 Gary P. Scavone, McGill University. All Rights Reserved.<br>
+ <td>&copy;2003-2016 Gary P. Scavone, McGill University. All Rights Reserved.<br>
Maintained by Gary P. Scavone, gary at music.mcgill.ca</td></tr>
</table>
</BODY>