Sophie

Sophie

distrib > Mandriva > 2010.1 > i586 > by-pkgid > 34546d63baef3ab2a7675f37737b66ab > files > 106

libalsa2-docs-1.0.23-2.1mdv2010.1.i586.rpm

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ALSA project - the C library reference: Sequencer Port Interface</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.3 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.png"
             onmouseover="return searchBox.OnSearchSelectShow()"
             onmouseout="return searchBox.OnSearchSelectHide()"
             alt=""/>
        <input type="text" id="MSearchField" value="Search" accesskey="S"
             onfocus="searchBox.OnSearchFieldFocus(true)" 
             onblur="searchBox.OnSearchFieldFocus(false)" 
             onkeyup="searchBox.OnSearchFieldChange(event)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Sequencer Port Interface<br/>
<small>
[<a class="el" href="group___sequencer.html">MIDI Sequencer</a>]</small>
</h1><table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga02870ceddec24d3cc5609ec728b0cb92">SND_SEQ_PORT_SYSTEM_TIMER</a>&nbsp;&nbsp;&nbsp;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaf12ff6ca6077edc7c6027a3fb1d0664b">SND_SEQ_PORT_SYSTEM_ANNOUNCE</a>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga81a7a5385af746364b757eb7911ec2f0">SND_SEQ_PORT_CAP_READ</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gae8afb5ac8f546461b4bab25454972aeb">SND_SEQ_PORT_CAP_WRITE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaebcc3dd1ad3b42d2305290feab04005a">SND_SEQ_PORT_CAP_SYNC_READ</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;2)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gabd27d66e2de0ff9556cc81cbec9ba7de">SND_SEQ_PORT_CAP_SYNC_WRITE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;3)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga97da74dc7f0f295f000fadd1c50c1130">SND_SEQ_PORT_CAP_DUPLEX</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;4)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga4b8aa6cbeb3c99c3ad033f4ce69c06e2">SND_SEQ_PORT_CAP_SUBS_READ</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;5)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga52ff1c51578166e67936cfb826c966c0">SND_SEQ_PORT_CAP_SUBS_WRITE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;6)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaa0a63e34744ed9faedf64fe0b364bfd4">SND_SEQ_PORT_CAP_NO_EXPORT</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;7)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaeb05a94bbdf256b857fcad28aeb2bb57">SND_SEQ_PORT_TYPE_SPECIFIC</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga0f89faac8be715b9e2d9d885c7f644a0">SND_SEQ_PORT_TYPE_MIDI_GENERIC</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga7202cc7b9acc0d78f59c502d7be4d2d7">SND_SEQ_PORT_TYPE_MIDI_GM</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;2)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gadf72cb865e33a0ce1462f68303165537">SND_SEQ_PORT_TYPE_MIDI_GS</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;3)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga8b51348b38a543151dda96c73fbfb5d4">SND_SEQ_PORT_TYPE_MIDI_XG</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;4)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga12743fc5f31ab3718d5f86d88eef05fe">SND_SEQ_PORT_TYPE_MIDI_MT32</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;5)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gabba1c9b09748d446bb6b20b0ae717984">SND_SEQ_PORT_TYPE_MIDI_GM2</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;6)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga25b090c0416b501001ae05350480acfd">SND_SEQ_PORT_TYPE_SYNTH</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;10)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga745828e8de9962c7c8c42ad5039e595d">SND_SEQ_PORT_TYPE_DIRECT_SAMPLE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;11)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gae4096b5c650fc3db614d8dead99ef404">SND_SEQ_PORT_TYPE_SAMPLE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;12)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga7c7c4e97a41a4056c759f5398643a37f">SND_SEQ_PORT_TYPE_HARDWARE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;16)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga6b1a73e34cedbf61f039db614a50b27c">SND_SEQ_PORT_TYPE_SOFTWARE</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;17)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gab873e7e613eee3af725f4a286c9c1cdf">SND_SEQ_PORT_TYPE_SYNTHESIZER</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;18)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga3c9413dbab5e6c6a18235e8b05c8fb3c">SND_SEQ_PORT_TYPE_PORT</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;19)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga703a0651b941c583d5f8928f8f3b1b67">SND_SEQ_PORT_TYPE_APPLICATION</a>&nbsp;&nbsp;&nbsp;(1&lt;&lt;20)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gac39e99230c62a36daa985273faac0de7">snd_seq_port_info_alloca</a>(ptr)&nbsp;&nbsp;&nbsp;__snd_alloca(ptr, snd_seq_port_info)</td></tr>
<tr><td colspan="2"><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct _snd_seq_port_info&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaaf7342df4e6dcdd4b40bffab2d9383bf">snd_seq_port_info_sizeof</a> (void)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get size of <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a>  <a href="#gaaf7342df4e6dcdd4b40bffab2d9383bf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga86ff334491c0d8c5b007e5b78d457334">snd_seq_port_info_malloc</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> **ptr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">allocate an empty <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> using standard malloc  <a href="#ga86ff334491c0d8c5b007e5b78d457334"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gac6254a78c36c8244782e18225647a06a">snd_seq_port_info_free</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *ptr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">frees a previously allocated <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a>  <a href="#gac6254a78c36c8244782e18225647a06a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gac1a2571b37277ca7845a078fbbd07e30">snd_seq_port_info_copy</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *dst, const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *src)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">copy one <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> to another  <a href="#gac1a2571b37277ca7845a078fbbd07e30"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga5a9f99c028e47a549836581b3cc01705">snd_seq_port_info_get_client</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get client id of a port_info container.  <a href="#ga5a9f99c028e47a549836581b3cc01705"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga90475c2db0acf804d8959058782493ed">snd_seq_port_info_get_port</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get port id of a port_info container.  <a href="#ga90475c2db0acf804d8959058782493ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structsnd__seq__addr__t.html">snd_seq_addr_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga58c1e63db50536dbe517c4eb56884a99">snd_seq_port_info_get_addr</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get client/port address of a port_info container.  <a href="#ga58c1e63db50536dbe517c4eb56884a99"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga2ce813765619784f7b6f773730bb00a3">snd_seq_port_info_get_name</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of a port_info container.  <a href="#ga2ce813765619784f7b6f773730bb00a3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga52d3744aa8a9ef122b350247c206ca1f">snd_seq_port_info_get_capability</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the capability bits of a port_info container.  <a href="#ga52d3744aa8a9ef122b350247c206ca1f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga67089430166da86830b2e8d24ffcb82e">snd_seq_port_info_get_type</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the type bits of a port_info container.  <a href="#ga67089430166da86830b2e8d24ffcb82e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga98f449484e99680ec24dd8a635e5c46e">snd_seq_port_info_get_midi_channels</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the midi channels of a port_info container.  <a href="#ga98f449484e99680ec24dd8a635e5c46e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gace0fa9154b4c7f48e582d2c6fca4d343">snd_seq_port_info_get_midi_voices</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the midi voices of a port_info container.  <a href="#gace0fa9154b4c7f48e582d2c6fca4d343"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga3a7cc5d4eecf7fff98f6f8118176b352">snd_seq_port_info_get_synth_voices</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the synth voices of a port_info container.  <a href="#ga3a7cc5d4eecf7fff98f6f8118176b352"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga67ae52056047784f451f46dc0e81ca67">snd_seq_port_info_get_read_use</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of read subscriptions of a port_info container.  <a href="#ga67ae52056047784f451f46dc0e81ca67"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga8278d1e6aa256e8f26191ae16202c114">snd_seq_port_info_get_write_use</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the number of write subscriptions of a port_info container.  <a href="#ga8278d1e6aa256e8f26191ae16202c114"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaf4a8c5c64c489321994ace0247921a87">snd_seq_port_info_get_port_specified</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the port-specified mode of a port_info container.  <a href="#gaf4a8c5c64c489321994ace0247921a87"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga2b452e4c849fc860db7879f82d4b3323">snd_seq_port_info_get_timestamping</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the time-stamping mode of the given port in a port_info container.  <a href="#ga2b452e4c849fc860db7879f82d4b3323"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga56146d9a0b992ed1fddabd787ecdd755">snd_seq_port_info_get_timestamp_real</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get whether the time-stamping of the given port is real-time mode.  <a href="#ga56146d9a0b992ed1fddabd787ecdd755"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga25bed7f48ec3e75764c3c49b510b23b3">snd_seq_port_info_get_timestamp_queue</a> (const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the queue id to update timestamps.  <a href="#ga25bed7f48ec3e75764c3c49b510b23b3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga7ea54e7b23774e0670174cc8698cb375">snd_seq_port_info_set_client</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int client)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the client id of a port_info container.  <a href="#ga7ea54e7b23774e0670174cc8698cb375"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gae3d9b091002c86bc31644da0a9b48bb7">snd_seq_port_info_set_port</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the port id of a port_info container.  <a href="#gae3d9b091002c86bc31644da0a9b48bb7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga2cb8af4a438139a3733212ef8d9fda81">snd_seq_port_info_set_addr</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, const <a class="el" href="structsnd__seq__addr__t.html">snd_seq_addr_t</a> *addr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the client/port address of a port_info container.  <a href="#ga2cb8af4a438139a3733212ef8d9fda81"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gae36f8b99f4e5a374dd69760a2d23b1a5">snd_seq_port_info_set_name</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the name of a port_info container.  <a href="#gae36f8b99f4e5a374dd69760a2d23b1a5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga5e66f8964ac8686437936958c50d2e08">snd_seq_port_info_set_capability</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, unsigned int capability)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the capability bits of a port_info container  <a href="#ga5e66f8964ac8686437936958c50d2e08"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gae67a71150ca0bf04f265f6df14120c8a">snd_seq_port_info_set_type</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, unsigned int type)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the type bits of a port_info container.  <a href="#gae67a71150ca0bf04f265f6df14120c8a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga95fd5b48eae29be7186013a3aded24c4">snd_seq_port_info_set_midi_channels</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int channels)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the midi channels of a port_info container  <a href="#ga95fd5b48eae29be7186013a3aded24c4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga9efdb4781a133315240b4da0a336935f">snd_seq_port_info_set_midi_voices</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int voices)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the midi voices of a port_info container  <a href="#ga9efdb4781a133315240b4da0a336935f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gad52fdf46df934c1c3ab369ee4bcb7a66">snd_seq_port_info_set_synth_voices</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int voices)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the synth voices of a port_info container  <a href="#gad52fdf46df934c1c3ab369ee4bcb7a66"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gafd4325db9167baf3e994a942577c2d5c">snd_seq_port_info_set_port_specified</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the port-specified mode of a port_info container.  <a href="#gafd4325db9167baf3e994a942577c2d5c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gacf6441ee4622b87b450381e1cea7d7d1">snd_seq_port_info_set_timestamping</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int enable)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the time-stamping mode of the given port.  <a href="#gacf6441ee4622b87b450381e1cea7d7d1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga2faba31e8c97874e4be7ca95e76bdbd1">snd_seq_port_info_set_timestamp_real</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int realtime)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set whether the timestime is updated in the real-time mode.  <a href="#ga2faba31e8c97874e4be7ca95e76bdbd1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga5c4463ccb1c7f599a1b34bcac2c01ff5">snd_seq_port_info_set_timestamp_queue</a> (<a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info, int queue)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the queue id for timestamping.  <a href="#ga5c4463ccb1c7f599a1b34bcac2c01ff5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gab40867ed02d9d6e40a75f929b5adf24d">snd_seq_create_port</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a sequencer port on the current client  <a href="#gab40867ed02d9d6e40a75f929b5adf24d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaa79a02d8fc3d6668b0a68d5d8b172603">snd_seq_delete_port</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, int port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">delete a sequencer port on the current client  <a href="#gaa79a02d8fc3d6668b0a68d5d8b172603"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327">snd_seq_get_port_info</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, int port, <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">obtain the information of a port on the current client  <a href="#ga9de3dbd9960f6108257f38e7945ae327"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gaca72792a7a96c18809768a905cefbfa4">snd_seq_get_any_port_info</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, int client, int port, <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">obtain the information of a port on an arbitrary client  <a href="#gaca72792a7a96c18809768a905cefbfa4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#gab979b7ece475bba1d75e9d7279b912b1">snd_seq_set_port_info</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, int port, <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the information of a port on the current client  <a href="#gab979b7ece475bba1d75e9d7279b912b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_port.html#ga9f3ba4f4a959798bd0b25b417b9ca4cd">snd_seq_query_next_port</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *handle, <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *info)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">query the next matching port  <a href="#ga9f3ba4f4a959798bd0b25b417b9ca4cd"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Sequencer Port Interface </p>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="ga97da74dc7f0f295f000fadd1c50c1130"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_DUPLEX" ref="ga97da74dc7f0f295f000fadd1c50c1130" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_DUPLEX&nbsp;&nbsp;&nbsp;(1&lt;&lt;4)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allow read/write duplex </p>

</div>
</div>
<a class="anchor" id="gaa0a63e34744ed9faedf64fe0b364bfd4"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_NO_EXPORT" ref="gaa0a63e34744ed9faedf64fe0b364bfd4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_NO_EXPORT&nbsp;&nbsp;&nbsp;(1&lt;&lt;7)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>routing not allowed </p>

</div>
</div>
<a class="anchor" id="ga81a7a5385af746364b757eb7911ec2f0"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_READ" ref="ga81a7a5385af746364b757eb7911ec2f0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_READ&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>port capabilities (32 bits) readable from this port </p>

</div>
</div>
<a class="anchor" id="ga4b8aa6cbeb3c99c3ad033f4ce69c06e2"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_SUBS_READ" ref="ga4b8aa6cbeb3c99c3ad033f4ce69c06e2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_SUBS_READ&nbsp;&nbsp;&nbsp;(1&lt;&lt;5)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allow read subscription </p>

</div>
</div>
<a class="anchor" id="ga52ff1c51578166e67936cfb826c966c0"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_SUBS_WRITE" ref="ga52ff1c51578166e67936cfb826c966c0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_SUBS_WRITE&nbsp;&nbsp;&nbsp;(1&lt;&lt;6)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allow write subscription </p>

</div>
</div>
<a class="anchor" id="gaebcc3dd1ad3b42d2305290feab04005a"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_SYNC_READ" ref="gaebcc3dd1ad3b42d2305290feab04005a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_SYNC_READ&nbsp;&nbsp;&nbsp;(1&lt;&lt;2)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allow read subscriptions </p>

</div>
</div>
<a class="anchor" id="gabd27d66e2de0ff9556cc81cbec9ba7de"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_SYNC_WRITE" ref="gabd27d66e2de0ff9556cc81cbec9ba7de" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_SYNC_WRITE&nbsp;&nbsp;&nbsp;(1&lt;&lt;3)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allow write subscriptions </p>

</div>
</div>
<a class="anchor" id="gae8afb5ac8f546461b4bab25454972aeb"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_CAP_WRITE" ref="gae8afb5ac8f546461b4bab25454972aeb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_CAP_WRITE&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>writable to this port </p>

</div>
</div>
<a class="anchor" id="gac39e99230c62a36daa985273faac0de7"></a><!-- doxytag: member="seq.h::snd_seq_port_info_alloca" ref="gac39e99230c62a36daa985273faac0de7" args="(ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_port_info_alloca</td>
          <td>(</td>
          <td class="paramtype">ptr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;__snd_alloca(ptr, snd_seq_port_info)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>allocate a <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> container on stack </p>

</div>
</div>
<a class="anchor" id="gaf12ff6ca6077edc7c6027a3fb1d0664b"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_SYSTEM_ANNOUNCE" ref="gaf12ff6ca6077edc7c6027a3fb1d0664b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_SYSTEM_ANNOUNCE&nbsp;&nbsp;&nbsp;1</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>system announce port </p>

</div>
</div>
<a class="anchor" id="ga02870ceddec24d3cc5609ec728b0cb92"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_SYSTEM_TIMER" ref="ga02870ceddec24d3cc5609ec728b0cb92" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_SYSTEM_TIMER&nbsp;&nbsp;&nbsp;0</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>known port numbers system timer port </p>

</div>
</div>
<a class="anchor" id="ga703a0651b941c583d5f8928f8f3b1b67"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_APPLICATION" ref="ga703a0651b941c583d5f8928f8f3b1b67" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_APPLICATION&nbsp;&nbsp;&nbsp;(1&lt;&lt;20)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port belongs to an application, such as a sequencer or editor. </p>

</div>
</div>
<a class="anchor" id="ga745828e8de9962c7c8c42ad5039e595d"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_DIRECT_SAMPLE" ref="ga745828e8de9962c7c8c42ad5039e595d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_DIRECT_SAMPLE&nbsp;&nbsp;&nbsp;(1&lt;&lt;11)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Instruments can be downloaded to this port (with SND_SEQ_EVENT_INSTR_xxx messages sent directly). </p>

</div>
</div>
<a class="anchor" id="ga7c7c4e97a41a4056c759f5398643a37f"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_HARDWARE" ref="ga7c7c4e97a41a4056c759f5398643a37f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_HARDWARE&nbsp;&nbsp;&nbsp;(1&lt;&lt;16)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is implemented in hardware. </p>

</div>
</div>
<a class="anchor" id="ga0f89faac8be715b9e2d9d885c7f644a0"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_GENERIC" ref="ga0f89faac8be715b9e2d9d885c7f644a0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_GENERIC&nbsp;&nbsp;&nbsp;(1&lt;&lt;1)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port understands MIDI messages. </p>

</div>
</div>
<a class="anchor" id="ga7202cc7b9acc0d78f59c502d7be4d2d7"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_GM" ref="ga7202cc7b9acc0d78f59c502d7be4d2d7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_GM&nbsp;&nbsp;&nbsp;(1&lt;&lt;2)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is compatible with the General MIDI specification. </p>

</div>
</div>
<a class="anchor" id="gabba1c9b09748d446bb6b20b0ae717984"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_GM2" ref="gabba1c9b09748d446bb6b20b0ae717984" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_GM2&nbsp;&nbsp;&nbsp;(1&lt;&lt;6)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is compatible with the General MIDI 2 specification. </p>

</div>
</div>
<a class="anchor" id="gadf72cb865e33a0ce1462f68303165537"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_GS" ref="gadf72cb865e33a0ce1462f68303165537" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_GS&nbsp;&nbsp;&nbsp;(1&lt;&lt;3)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is compatible with the Roland GS standard. </p>

</div>
</div>
<a class="anchor" id="ga12743fc5f31ab3718d5f86d88eef05fe"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_MT32" ref="ga12743fc5f31ab3718d5f86d88eef05fe" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_MT32&nbsp;&nbsp;&nbsp;(1&lt;&lt;5)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is compatible with the Roland MT-32. </p>

</div>
</div>
<a class="anchor" id="ga8b51348b38a543151dda96c73fbfb5d4"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_MIDI_XG" ref="ga8b51348b38a543151dda96c73fbfb5d4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_MIDI_XG&nbsp;&nbsp;&nbsp;(1&lt;&lt;4)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is compatible with the Yamaha XG specification. </p>

</div>
</div>
<a class="anchor" id="ga3c9413dbab5e6c6a18235e8b05c8fb3c"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_PORT" ref="ga3c9413dbab5e6c6a18235e8b05c8fb3c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_PORT&nbsp;&nbsp;&nbsp;(1&lt;&lt;19)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port may connect to other devices (whose characteristics are not known). </p>

</div>
</div>
<a class="anchor" id="gae4096b5c650fc3db614d8dead99ef404"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_SAMPLE" ref="gae4096b5c650fc3db614d8dead99ef404" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_SAMPLE&nbsp;&nbsp;&nbsp;(1&lt;&lt;12)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Instruments can be downloaded to this port (with SND_SEQ_EVENT_INSTR_xxx messages sent directly or through a queue). </p>

</div>
</div>
<a class="anchor" id="ga6b1a73e34cedbf61f039db614a50b27c"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_SOFTWARE" ref="ga6b1a73e34cedbf61f039db614a50b27c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_SOFTWARE&nbsp;&nbsp;&nbsp;(1&lt;&lt;17)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port is implemented in software. </p>

</div>
</div>
<a class="anchor" id="gaeb05a94bbdf256b857fcad28aeb2bb57"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_SPECIFIC" ref="gaeb05a94bbdf256b857fcad28aeb2bb57" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_SPECIFIC&nbsp;&nbsp;&nbsp;(1&lt;&lt;0)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Messages sent from/to this port have device-specific semantics. </p>

</div>
</div>
<a class="anchor" id="ga25b090c0416b501001ae05350480acfd"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_SYNTH" ref="ga25b090c0416b501001ae05350480acfd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_SYNTH&nbsp;&nbsp;&nbsp;(1&lt;&lt;10)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>This port understands SND_SEQ_EVENT_SAMPLE_xxx messages (these are not MIDI messages). </p>

</div>
</div>
<a class="anchor" id="gab873e7e613eee3af725f4a286c9c1cdf"></a><!-- doxytag: member="seq.h::SND_SEQ_PORT_TYPE_SYNTHESIZER" ref="gab873e7e613eee3af725f4a286c9c1cdf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SND_SEQ_PORT_TYPE_SYNTHESIZER&nbsp;&nbsp;&nbsp;(1&lt;&lt;18)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Messages sent to this port will generate sounds. </p>

</div>
</div>
<hr/><h2>Typedef Documentation</h2>
<a class="anchor" id="ga122b704fdab734223ef90b5e26f358e9"></a><!-- doxytag: member="seq.h::snd_seq_port_info_t" ref="ga122b704fdab734223ef90b5e26f358e9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct _snd_seq_port_info <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>port information container </p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gab40867ed02d9d6e40a75f929b5adf24d"></a><!-- doxytag: member="seq.h::snd_seq_create_port" ref="gab40867ed02d9d6e40a75f929b5adf24d" args="(snd_seq_t *handle, snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_create_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create a sequencer port on the current client </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port information for the new port </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise a negative error code</dd></dl>
<p>Creates a sequencer port on the current client. The attributes of created port is specified in <em>info</em> argument.</p>
<p>The client field in <em>info</em> argument is overwritten with the current client id. The port id to be created can be specified via <a class="el" href="group___seq_port.html#gafd4325db9167baf3e994a942577c2d5c" title="Set the port-specified mode of a port_info container.">snd_seq_port_info_set_port_specified</a>. You can get the created port id by reading the port pointer via <a class="el" href="group___seq_port.html#ga90475c2db0acf804d8959058782493ed" title="Get port id of a port_info container.">snd_seq_port_info_get_port</a>.</p>
<p>Each port has the capability bit-masks to specify the access capability of the port from other clients. The capability bit flags are defined as follows:</p>
<ul>
<li><a class="el" href="group___seq_port.html#ga81a7a5385af746364b757eb7911ec2f0">SND_SEQ_PORT_CAP_READ</a> Readable from this port</li>
<li><a class="el" href="group___seq_port.html#gae8afb5ac8f546461b4bab25454972aeb">SND_SEQ_PORT_CAP_WRITE</a> Writable to this port.</li>
<li><a class="el" href="group___seq_port.html#gaebcc3dd1ad3b42d2305290feab04005a">SND_SEQ_PORT_CAP_SYNC_READ</a> For synchronization (not implemented)</li>
<li><a class="el" href="group___seq_port.html#gabd27d66e2de0ff9556cc81cbec9ba7de">SND_SEQ_PORT_CAP_SYNC_WRITE</a> For synchronization (not implemented)</li>
<li><a class="el" href="group___seq_port.html#ga97da74dc7f0f295f000fadd1c50c1130">SND_SEQ_PORT_CAP_DUPLEX</a> Read/write duplex access is supported</li>
<li><a class="el" href="group___seq_port.html#ga4b8aa6cbeb3c99c3ad033f4ce69c06e2">SND_SEQ_PORT_CAP_SUBS_READ</a> Read subscription is allowed</li>
<li><a class="el" href="group___seq_port.html#ga52ff1c51578166e67936cfb826c966c0">SND_SEQ_PORT_CAP_SUBS_WRITE</a> Write subscription is allowed</li>
<li><a class="el" href="group___seq_port.html#gaa0a63e34744ed9faedf64fe0b364bfd4">SND_SEQ_PORT_CAP_NO_EXPORT</a> Subscription management from 3rd client is disallowed</li>
</ul>
<p>Each port has also the type bitmasks defined as follows:</p>
<ul>
<li><a class="el" href="group___seq_port.html#gaeb05a94bbdf256b857fcad28aeb2bb57">SND_SEQ_PORT_TYPE_SPECIFIC</a> Hardware specific port</li>
<li><a class="el" href="group___seq_port.html#ga0f89faac8be715b9e2d9d885c7f644a0">SND_SEQ_PORT_TYPE_MIDI_GENERIC</a> Generic MIDI device</li>
<li><a class="el" href="group___seq_port.html#ga7202cc7b9acc0d78f59c502d7be4d2d7">SND_SEQ_PORT_TYPE_MIDI_GM</a> General MIDI compatible device</li>
<li><a class="el" href="group___seq_port.html#gabba1c9b09748d446bb6b20b0ae717984">SND_SEQ_PORT_TYPE_MIDI_GM2</a> General MIDI 2 compatible device</li>
<li><a class="el" href="group___seq_port.html#gadf72cb865e33a0ce1462f68303165537">SND_SEQ_PORT_TYPE_MIDI_GS</a> GS compatible device</li>
<li><a class="el" href="group___seq_port.html#ga8b51348b38a543151dda96c73fbfb5d4">SND_SEQ_PORT_TYPE_MIDI_XG</a> XG compatible device</li>
<li><a class="el" href="group___seq_port.html#ga12743fc5f31ab3718d5f86d88eef05fe">SND_SEQ_PORT_TYPE_MIDI_MT32</a> MT-32 compatible device</li>
<li><a class="el" href="group___seq_port.html#ga7c7c4e97a41a4056c759f5398643a37f">SND_SEQ_PORT_TYPE_HARDWARE</a> Implemented in hardware</li>
<li><a class="el" href="group___seq_port.html#ga6b1a73e34cedbf61f039db614a50b27c">SND_SEQ_PORT_TYPE_SOFTWARE</a> Implemented in software</li>
<li><a class="el" href="group___seq_port.html#gab873e7e613eee3af725f4a286c9c1cdf">SND_SEQ_PORT_TYPE_SYNTHESIZER</a> Generates sound</li>
<li><a class="el" href="group___seq_port.html#ga3c9413dbab5e6c6a18235e8b05c8fb3c">SND_SEQ_PORT_TYPE_PORT</a> Connects to other device(s)</li>
<li><a class="el" href="group___seq_port.html#ga703a0651b941c583d5f8928f8f3b1b67">SND_SEQ_PORT_TYPE_APPLICATION</a> Application (sequencer/editor)</li>
</ul>
<p>A port may contain specific midi channels, midi voices and synth voices. These values could be zero as default.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#gaa79a02d8fc3d6668b0a68d5d8b172603" title="delete a sequencer port on the current client">snd_seq_delete_port()</a>, <a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_middle.html#ga9368266bde7b5c0f8d5ddeaf64914719" title="create a port - simple version">snd_seq_create_simple_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaa79a02d8fc3d6668b0a68d5d8b172603"></a><!-- doxytag: member="seq.h::snd_seq_delete_port" ref="gaa79a02d8fc3d6668b0a68d5d8b172603" args="(snd_seq_t *handle, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_delete_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>delete a sequencer port on the current client </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port to be deleted </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise a negative error code</dd></dl>
<p>Deletes the existing sequencer port on the current client.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#gab40867ed02d9d6e40a75f929b5adf24d" title="create a sequencer port on the current client">snd_seq_create_port()</a>, <a class="el" href="group___seq_middle.html#ga8ac4c3a85750550f2978ca720a6329ca" title="delete the port">snd_seq_delete_simple_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaca72792a7a96c18809768a905cefbfa4"></a><!-- doxytag: member="seq.h::snd_seq_get_any_port_info" ref="gaca72792a7a96c18809768a905cefbfa4" args="(snd_seq_t *handle, int client, int port, snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_get_any_port_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>obtain the information of a port on an arbitrary client </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>client id to get </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port id to get </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>pointer information returns </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise a negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga9de3dbd9960f6108257f38e7945ae327"></a><!-- doxytag: member="seq.h::snd_seq_get_port_info" ref="ga9de3dbd9960f6108257f38e7945ae327" args="(snd_seq_t *handle, int port, snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_get_port_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>obtain the information of a port on the current client </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port id to get </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>pointer information returns </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise a negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#gab40867ed02d9d6e40a75f929b5adf24d" title="create a sequencer port on the current client">snd_seq_create_port()</a>, <a class="el" href="group___seq_port.html#gaca72792a7a96c18809768a905cefbfa4" title="obtain the information of a port on an arbitrary client">snd_seq_get_any_port_info()</a>, <a class="el" href="group___seq_port.html#gab979b7ece475bba1d75e9d7279b912b1" title="set the information of a port on the current client">snd_seq_set_port_info()</a>, <a class="el" href="group___seq_port.html#ga9f3ba4f4a959798bd0b25b417b9ca4cd" title="query the next matching port">snd_seq_query_next_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gac1a2571b37277ca7845a078fbbd07e30"></a><!-- doxytag: member="seq.h::snd_seq_port_info_copy" ref="gac1a2571b37277ca7845a078fbbd07e30" args="(snd_seq_port_info_t *dst, const snd_seq_port_info_t *src)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_copy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>src</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>copy one <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> to another </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dst</em>&nbsp;</td><td>pointer to destination </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>pointer to source </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gac6254a78c36c8244782e18225647a06a"></a><!-- doxytag: member="seq.h::snd_seq_port_info_free" ref="gac6254a78c36c8244782e18225647a06a" args="(snd_seq_port_info_t *ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_free </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>frees a previously allocated <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>obj</em>&nbsp;</td><td>pointer to object to free </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga58c1e63db50536dbe517c4eb56884a99"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_addr" ref="ga58c1e63db50536dbe517c4eb56884a99" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structsnd__seq__addr__t.html">snd_seq_addr_t</a>* snd_seq_port_info_get_addr </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get client/port address of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>client/port address pointer</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga2cb8af4a438139a3733212ef8d9fda81" title="Set the client/port address of a port_info container.">snd_seq_port_info_set_addr()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga52d3744aa8a9ef122b350247c206ca1f"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_capability" ref="ga52d3744aa8a9ef122b350247c206ca1f" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int snd_seq_port_info_get_capability </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the capability bits of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>capability bits</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga5e66f8964ac8686437936958c50d2e08" title="set the capability bits of a port_info container">snd_seq_port_info_set_capability()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga5a9f99c028e47a549836581b3cc01705"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_client" ref="ga5a9f99c028e47a549836581b3cc01705" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_client </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get client id of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>client id</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga7ea54e7b23774e0670174cc8698cb375" title="Set the client id of a port_info container.">snd_seq_port_info_set_client()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga98f449484e99680ec24dd8a635e5c46e"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_midi_channels" ref="ga98f449484e99680ec24dd8a635e5c46e" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_midi_channels </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the midi channels of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of midi channels (default 0)</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga95fd5b48eae29be7186013a3aded24c4" title="set the midi channels of a port_info container">snd_seq_port_info_set_midi_channels()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gace0fa9154b4c7f48e582d2c6fca4d343"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_midi_voices" ref="gace0fa9154b4c7f48e582d2c6fca4d343" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_midi_voices </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the midi voices of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of midi voices (default 0)</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga9efdb4781a133315240b4da0a336935f" title="set the midi voices of a port_info container">snd_seq_port_info_set_midi_voices()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga2ce813765619784f7b6f773730bb00a3"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_name" ref="ga2ce813765619784f7b6f773730bb00a3" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* snd_seq_port_info_get_name </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the name of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>name string</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gae36f8b99f4e5a374dd69760a2d23b1a5" title="Set the name of a port_info container.">snd_seq_port_info_set_name()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga90475c2db0acf804d8959058782493ed"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_port" ref="ga90475c2db0acf804d8959058782493ed" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_port </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get port id of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>port id</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gae3d9b091002c86bc31644da0a9b48bb7" title="Set the port id of a port_info container.">snd_seq_port_info_set_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaf4a8c5c64c489321994ace0247921a87"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_port_specified" ref="gaf4a8c5c64c489321994ace0247921a87" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_port_specified </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the port-specified mode of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 if port id is specified at creation</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gafd4325db9167baf3e994a942577c2d5c" title="Set the port-specified mode of a port_info container.">snd_seq_port_info_set_port_specified()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga67ae52056047784f451f46dc0e81ca67"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_read_use" ref="ga67ae52056047784f451f46dc0e81ca67" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_read_use </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the number of read subscriptions of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of read subscriptions</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga3a7cc5d4eecf7fff98f6f8118176b352"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_synth_voices" ref="ga3a7cc5d4eecf7fff98f6f8118176b352" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_synth_voices </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the synth voices of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of synth voices (default 0)</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gad52fdf46df934c1c3ab369ee4bcb7a66" title="set the synth voices of a port_info container">snd_seq_port_info_set_synth_voices()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga25bed7f48ec3e75764c3c49b510b23b3"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_timestamp_queue" ref="ga25bed7f48ec3e75764c3c49b510b23b3" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_timestamp_queue </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the queue id to update timestamps. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the queue id to get the timestamps</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga5c4463ccb1c7f599a1b34bcac2c01ff5" title="Set the queue id for timestamping.">snd_seq_port_info_set_timestamp_queue()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga56146d9a0b992ed1fddabd787ecdd755"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_timestamp_real" ref="ga56146d9a0b992ed1fddabd787ecdd755" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_timestamp_real </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get whether the time-stamping of the given port is real-time mode. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 if the time-stamping is in the real-time mode</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga2faba31e8c97874e4be7ca95e76bdbd1" title="Set whether the timestime is updated in the real-time mode.">snd_seq_port_info_set_timestamp_real()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga2b452e4c849fc860db7879f82d4b3323"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_timestamping" ref="ga2b452e4c849fc860db7879f82d4b3323" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_timestamping </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the time-stamping mode of the given port in a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>1 if the port updates timestamps of incoming events</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gacf6441ee4622b87b450381e1cea7d7d1" title="Set the time-stamping mode of the given port.">snd_seq_port_info_set_timestamping()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga67089430166da86830b2e8d24ffcb82e"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_type" ref="ga67089430166da86830b2e8d24ffcb82e" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int snd_seq_port_info_get_type </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the type bits of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>port type bits</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gae67a71150ca0bf04f265f6df14120c8a" title="Get the type bits of a port_info container.">snd_seq_port_info_set_type()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga8278d1e6aa256e8f26191ae16202c114"></a><!-- doxytag: member="seq.h::snd_seq_port_info_get_write_use" ref="ga8278d1e6aa256e8f26191ae16202c114" args="(const snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_get_write_use </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the number of write subscriptions of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of write subscriptions</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga86ff334491c0d8c5b007e5b78d457334"></a><!-- doxytag: member="seq.h::snd_seq_port_info_malloc" ref="ga86ff334491c0d8c5b007e5b78d457334" args="(snd_seq_port_info_t **ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_port_info_malloc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> **&nbsp;</td>
          <td class="paramname"> <em>ptr</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>allocate an empty <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> using standard malloc </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ptr</em>&nbsp;</td><td>returned pointer </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise negative error code </dd></dl>

</div>
</div>
<a class="anchor" id="ga2cb8af4a438139a3733212ef8d9fda81"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_addr" ref="ga2cb8af4a438139a3733212ef8d9fda81" args="(snd_seq_port_info_t *info, const snd_seq_addr_t *addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_addr </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structsnd__seq__addr__t.html">snd_seq_addr_t</a> *&nbsp;</td>
          <td class="paramname"> <em>addr</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the client/port address of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>addr</em>&nbsp;</td><td>client/port address</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga58c1e63db50536dbe517c4eb56884a99" title="Get client/port address of a port_info container.">snd_seq_port_info_get_addr()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga5e66f8964ac8686437936958c50d2e08"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_capability" ref="ga5e66f8964ac8686437936958c50d2e08" args="(snd_seq_port_info_t *info, unsigned int capability)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_capability </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>capability</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the capability bits of a port_info container </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>capability</em>&nbsp;</td><td>capability bits</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga52d3744aa8a9ef122b350247c206ca1f" title="Get the capability bits of a port_info container.">snd_seq_port_info_get_capability()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga7ea54e7b23774e0670174cc8698cb375"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_client" ref="ga7ea54e7b23774e0670174cc8698cb375" args="(snd_seq_port_info_t *info, int client)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_client </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>client</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the client id of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>client</em>&nbsp;</td><td>client id</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga5a9f99c028e47a549836581b3cc01705" title="Get client id of a port_info container.">snd_seq_port_info_get_client()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga95fd5b48eae29be7186013a3aded24c4"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_midi_channels" ref="ga95fd5b48eae29be7186013a3aded24c4" args="(snd_seq_port_info_t *info, int channels)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_midi_channels </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>channels</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the midi channels of a port_info container </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>channels</em>&nbsp;</td><td>midi channels (default 0)</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga98f449484e99680ec24dd8a635e5c46e" title="Get the midi channels of a port_info container.">snd_seq_port_info_get_midi_channels()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga9efdb4781a133315240b4da0a336935f"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_midi_voices" ref="ga9efdb4781a133315240b4da0a336935f" args="(snd_seq_port_info_t *info, int voices)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_midi_voices </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>voices</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the midi voices of a port_info container </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>voices</em>&nbsp;</td><td>midi voices (default 0)</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gace0fa9154b4c7f48e582d2c6fca4d343" title="Get the midi voices of a port_info container.">snd_seq_port_info_get_midi_voices()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gae36f8b99f4e5a374dd69760a2d23b1a5"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_name" ref="gae36f8b99f4e5a374dd69760a2d23b1a5" args="(snd_seq_port_info_t *info, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_name </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the name of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name string</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga2ce813765619784f7b6f773730bb00a3" title="Get the name of a port_info container.">snd_seq_port_info_get_name()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gae3d9b091002c86bc31644da0a9b48bb7"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_port" ref="gae3d9b091002c86bc31644da0a9b48bb7" args="(snd_seq_port_info_t *info, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the port id of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port id</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga90475c2db0acf804d8959058782493ed" title="Get port id of a port_info container.">snd_seq_port_info_get_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gafd4325db9167baf3e994a942577c2d5c"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_port_specified" ref="gafd4325db9167baf3e994a942577c2d5c" args="(snd_seq_port_info_t *info, int val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_port_specified </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the port-specified mode of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>non-zero if specifying the port id at creation</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#gaf4a8c5c64c489321994ace0247921a87" title="Get the port-specified mode of a port_info container.">snd_seq_port_info_get_port_specified()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gad52fdf46df934c1c3ab369ee4bcb7a66"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_synth_voices" ref="gad52fdf46df934c1c3ab369ee4bcb7a66" args="(snd_seq_port_info_t *info, int voices)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_synth_voices </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>voices</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the synth voices of a port_info container </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>voices</em>&nbsp;</td><td>synth voices (default 0)</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, snd_seq_port_info_get_synth_voice() </dd></dl>

</div>
</div>
<a class="anchor" id="ga5c4463ccb1c7f599a1b34bcac2c01ff5"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_timestamp_queue" ref="ga5c4463ccb1c7f599a1b34bcac2c01ff5" args="(snd_seq_port_info_t *info, int queue)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_timestamp_queue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>queue</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the queue id for timestamping. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>queue</em>&nbsp;</td><td>the queue id to get timestamps</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga25bed7f48ec3e75764c3c49b510b23b3" title="Get the queue id to update timestamps.">snd_seq_port_info_get_timestamp_queue()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga2faba31e8c97874e4be7ca95e76bdbd1"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_timestamp_real" ref="ga2faba31e8c97874e4be7ca95e76bdbd1" args="(snd_seq_port_info_t *info, int realtime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_timestamp_real </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>enable</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set whether the timestime is updated in the real-time mode. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>enable</em>&nbsp;</td><td>non-zero if updating the timestamps in real-time mode</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga56146d9a0b992ed1fddabd787ecdd755" title="Get whether the time-stamping of the given port is real-time mode.">snd_seq_port_info_get_timestamp_real()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gacf6441ee4622b87b450381e1cea7d7d1"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_timestamping" ref="gacf6441ee4622b87b450381e1cea7d7d1" args="(snd_seq_port_info_t *info, int enable)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_timestamping </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>enable</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the time-stamping mode of the given port. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>enable</em>&nbsp;</td><td>non-zero if updating the timestamps of incoming events</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga2b452e4c849fc860db7879f82d4b3323" title="Get the time-stamping mode of the given port in a port_info container.">snd_seq_port_info_get_timestamping()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gae67a71150ca0bf04f265f6df14120c8a"></a><!-- doxytag: member="seq.h::snd_seq_port_info_set_type" ref="gae67a71150ca0bf04f265f6df14120c8a" args="(snd_seq_port_info_t *info, unsigned int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snd_seq_port_info_set_type </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the type bits of a port_info container. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port_info container </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>port type bits</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a>, <a class="el" href="group___seq_port.html#ga67089430166da86830b2e8d24ffcb82e" title="Get the type bits of a port_info container.">snd_seq_port_info_get_type()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaaf7342df4e6dcdd4b40bffab2d9383bf"></a><!-- doxytag: member="seq.h::snd_seq_port_info_sizeof" ref="gaaf7342df4e6dcdd4b40bffab2d9383bf" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t snd_seq_port_info_sizeof </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>get size of <a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>size in bytes </dd></dl>

</div>
</div>
<a class="anchor" id="ga9f3ba4f4a959798bd0b25b417b9ca4cd"></a><!-- doxytag: member="seq.h::snd_seq_query_next_port" ref="ga9f3ba4f4a959798bd0b25b417b9ca4cd" args="(snd_seq_t *handle, snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_query_next_port </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>query the next matching port </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>query pattern and result</td></tr>
  </table>
  </dd>
</dl>
<p>Queries the next matching port on the client specified in <em>info</em> argument. The search begins at the next port specified in port field of <em>info</em> argument. For finding the first port at a certain client, give -1.</p>
<p>If a matching port is found, its attributes are stored on <em>info</em> and function returns zero. Otherwise, a negative error code is returned.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#ga9de3dbd9960f6108257f38e7945ae327" title="obtain the information of a port on the current client">snd_seq_get_port_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gab979b7ece475bba1d75e9d7279b912b1"></a><!-- doxytag: member="seq.h::snd_seq_set_port_info" ref="gab979b7ece475bba1d75e9d7279b912b1" args="(snd_seq_t *handle, int port, snd_seq_port_info_t *info)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_port_info </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *&nbsp;</td>
          <td class="paramname"> <em>seq</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group___seq_port.html#ga122b704fdab734223ef90b5e26f358e9">snd_seq_port_info_t</a> *&nbsp;</td>
          <td class="paramname"> <em>info</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the information of a port on the current client </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>seq</em>&nbsp;</td><td>sequencer handle </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>port</em>&nbsp;</td><td>port to be set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>info</em>&nbsp;</td><td>port information to be set </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success otherwise a negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_port.html#gab979b7ece475bba1d75e9d7279b912b1" title="set the information of a port on the current client">snd_seq_set_port_info()</a> </dd></dl>

</div>
</div>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr class="footer"/><address style="text-align: right;"><small>Generated on Sat Nov 20 07:42:24 2010 for ALSA project - the C library reference by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>