Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > updates > by-pkgid > 18785641029f14f23cccc82925607ace > files > 77

libalsa2-docs-0.9.0-0.14rc7.1mdk.ppc.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>MIDI Sequencer</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.2.18 -->
<center>
<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="modules.html">Modules</a> &nbsp; <a class="qindex" href="annotated.html">Data Structures</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Data Fields</a> &nbsp; <a class="qindex" href="globals.html">Globals</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; <a class="qindex" href="examples.html">Examples</a> &nbsp; </center>
<hr><h1>MIDI Sequencer</h1><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Modules</h2></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_client.html">Sequencer Client Interface</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_port.html">Sequencer Port Interface</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_subscribe.html">Sequencer Port Subscription</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_queue.html">Sequencer Queue Interface</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_event.html">Sequencer Event API</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_misc.html">Sequencer Miscellaneous</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_ev_type.html">Sequencer Event Type Checks</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_events.html">Sequencer Event Definitions</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___seq_middle.html">Sequencer Middle Level Interface</a></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___m_i_d_i___event.html">Sequencer event &lt;-&gt; MIDI byte stream coder</a></td></tr>
<tr><td colspan=2><br><h2>Defines</h2></td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a28">SND_SEQ_DLSYM_VERSION</a>&nbsp;&nbsp;&nbsp;_dlsym_seq_001</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a29">SND_ALLOCA</a>(type, ptr)</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a30">SND_SEQ_OPEN_OUTPUT</a>&nbsp;&nbsp;&nbsp;1</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a31">SND_SEQ_OPEN_INPUT</a>&nbsp;&nbsp;&nbsp;2</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a32">SND_SEQ_OPEN_DUPLEX</a>&nbsp;&nbsp;&nbsp;(SND_SEQ_OPEN_OUTPUT|SND_SEQ_OPEN_INPUT)</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a33">SND_SEQ_NONBLOCK</a>&nbsp;&nbsp;&nbsp;0x0001</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a34">SND_SEQ_ADDRESS_UNKNOWN</a>&nbsp;&nbsp;&nbsp;253</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a35">SND_SEQ_ADDRESS_SUBSCRIBERS</a>&nbsp;&nbsp;&nbsp;254</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a36">SND_SEQ_ADDRESS_BROADCAST</a>&nbsp;&nbsp;&nbsp;255</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a37">SND_SEQ_CLIENT_SYSTEM</a>&nbsp;&nbsp;&nbsp;0</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a38">SND_SEQ_CLIENT_DUMMY</a>&nbsp;&nbsp;&nbsp;62</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a39">SND_SEQ_CLIENT_OSS</a>&nbsp;&nbsp;&nbsp;63</td></tr>
<tr><td nowrap align=right valign=top>#define&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a40">snd_seq_system_info_alloca</a>(ptr)&nbsp;&nbsp;&nbsp;SND_ALLOCA(snd_seq_system_info, ptr)</td></tr>
<tr><td colspan=2><br><h2>Typedefs</h2></td></tr>
<tr><td nowrap align=right valign=top>typedef _snd_seq&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a0">snd_seq_t</a></td></tr>
<tr><td nowrap align=right valign=top>typedef enum <a class="el" href="group___sequencer.html#a41">_snd_seq_type</a>&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a1">snd_seq_type_t</a></td></tr>
<tr><td nowrap align=right valign=top>typedef _snd_seq_system_info&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a></td></tr>
<tr><td colspan=2><br><h2>Enumerations</h2></td></tr>
<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a41">_snd_seq_type</a> { <a class="el" href="group___sequencer.html#a41a98">SND_SEQ_TYPE_HW</a>, 
<a class="el" href="group___sequencer.html#a41a99">SND_SEQ_TYPE_SHM</a>, 
<a class="el" href="group___sequencer.html#a41a100">SND_SEQ_TYPE_INET</a>
 }</td></tr>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a3">snd_seq_open</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> **handle, const char *name, int streams, int mode)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Open the ALSA sequencer.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a4">snd_seq_open_lconf</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> **handle, const char *name, int streams, int mode, <a class="el" href="group___config.html#a1">snd_config_t</a> *lconf)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Open the ALSA sequencer using local configuration.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>const char *&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a5">snd_seq_name</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *seq)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>get identifier of sequencer handle</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top><a class="el" href="group___sequencer.html#a1">snd_seq_type_t</a>&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a6">snd_seq_type</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *seq)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>get type of sequencer handle</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a7">snd_seq_close</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Close the sequencer.</em> <a href="#a7"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a8">snd_seq_poll_descriptors_count</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, short events)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Returns the number of poll descriptors.</em> <a href="#a8"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a9">snd_seq_poll_descriptors</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, struct pollfd *pfds, unsigned int space, short events)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get poll descriptors.</em> <a href="#a9"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a10">snd_seq_poll_descriptors_revents</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *seq, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>get returned events from poll descriptors</em> <a href="#a10"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a11">snd_seq_nonblock</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, int nonblock)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Set nonblock mode.</em> <a href="#a11"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a12">snd_seq_client_id</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get the client id.</em> <a href="#a12"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>size_t&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a13">snd_seq_get_output_buffer_size</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Return the size of output buffer.</em> <a href="#a13"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>size_t&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a14">snd_seq_get_input_buffer_size</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Return the size of input buffer.</em> <a href="#a14"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a15">snd_seq_set_output_buffer_size</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, size_t size)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Change the size of output buffer.</em> <a href="#a15"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a16">snd_seq_set_input_buffer_size</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, size_t size)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Resize the input buffer.</em> <a href="#a16"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>size_t&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a17">snd_seq_system_info_sizeof</a> (void)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get size of <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a>.</em> <a href="#a17"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a18">snd_seq_system_info_malloc</a> (<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> **ptr)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Allocate an empty <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> using standard malloc.</em> <a href="#a18"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a19">snd_seq_system_info_free</a> (<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *ptr)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Frees a previously allocated <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a>.</em> <a href="#a19"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a20">snd_seq_system_info_copy</a> (<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *dst, const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *src)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Copy one <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> to another.</em> <a href="#a20"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a21">snd_seq_system_info_get_queues</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get maximum number of queues.</em> <a href="#a21"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a22">snd_seq_system_info_get_clients</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get maximum number of clients.</em> <a href="#a22"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a23">snd_seq_system_info_get_ports</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get maximum number of ports.</em> <a href="#a23"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a24">snd_seq_system_info_get_channels</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get maximum number of channels.</em> <a href="#a24"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a25">snd_seq_system_info_get_cur_clients</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get the current number of clients.</em> <a href="#a25"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a26">snd_seq_system_info_get_cur_queues</a> (const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>Get the current number of queues.</em> <a href="#a26"></a><em></em></font><br><br></td></tr>
<tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="group___sequencer.html#a27">snd_seq_system_info</a> (<a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *handle, <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *info)</td></tr>
<tr><td>&nbsp;</td><td><font size=-1><em>obtain the sequencer system information</em> <a href="#a27"></a><em></em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
MIDI Sequencer Interface. See <a href="seq.html#seq">Sequencer interface</a> page for more details. <hr><h2>Define Documentation</h2>
<a name="a29" doxytag="seq.h::SND_ALLOCA"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_ALLOCA</td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">type,         <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>ptr&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap>
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<b>Value:</b><div class="fragment"><pre><span class="keywordflow">do</span> {\
        assert(ptr);\
        *ptr = (type##_t *)alloca(type##_sizeof());\
        memset(*ptr, 0, type##_sizeof());\
} <span class="keywordflow">while</span> (0)</pre></div>Allocate and initialize array on stack     </td>
  </tr>
</table>
<a name="a36" doxytag="seq.h::SND_SEQ_ADDRESS_BROADCAST"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_ADDRESS_BROADCAST&nbsp;&nbsp;&nbsp;255
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
send event to all queues/clients/ports/channels     </td>
  </tr>
</table>
<a name="a35" doxytag="seq.h::SND_SEQ_ADDRESS_SUBSCRIBERS"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_ADDRESS_SUBSCRIBERS&nbsp;&nbsp;&nbsp;254
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
send event to all subscribed ports     </td>
  </tr>
</table>
<a name="a34" doxytag="seq.h::SND_SEQ_ADDRESS_UNKNOWN"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_ADDRESS_UNKNOWN&nbsp;&nbsp;&nbsp;253
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
unknown source     </td>
  </tr>
</table>
<a name="a38" doxytag="seq.h::SND_SEQ_CLIENT_DUMMY"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_CLIENT_DUMMY&nbsp;&nbsp;&nbsp;62
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
dummy ports     </td>
  </tr>
</table>
<a name="a39" doxytag="seq.h::SND_SEQ_CLIENT_OSS"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_CLIENT_OSS&nbsp;&nbsp;&nbsp;63
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
OSS sequencer emulator     </td>
  </tr>
</table>
<a name="a37" doxytag="seq.h::SND_SEQ_CLIENT_SYSTEM"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_CLIENT_SYSTEM&nbsp;&nbsp;&nbsp;0
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
system client     </td>
  </tr>
</table>
<a name="a28" doxytag="seq.h::SND_SEQ_DLSYM_VERSION"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_DLSYM_VERSION&nbsp;&nbsp;&nbsp;_dlsym_seq_001
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
dlsym version for interface entry callback     </td>
  </tr>
</table>
<a name="a33" doxytag="seq.h::SND_SEQ_NONBLOCK"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_NONBLOCK&nbsp;&nbsp;&nbsp;0x0001
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
non-blocking mode (flag to open mode)     </td>
  </tr>
</table>
<a name="a32" doxytag="seq.h::SND_SEQ_OPEN_DUPLEX"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_OPEN_DUPLEX&nbsp;&nbsp;&nbsp;(SND_SEQ_OPEN_OUTPUT|SND_SEQ_OPEN_INPUT)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
open for both input and output (read/write)     </td>
  </tr>
</table>
<a name="a31" doxytag="seq.h::SND_SEQ_OPEN_INPUT"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_OPEN_INPUT&nbsp;&nbsp;&nbsp;2
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
open for input (read)     </td>
  </tr>
</table>
<a name="a30" doxytag="seq.h::SND_SEQ_OPEN_OUTPUT"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define SND_SEQ_OPEN_OUTPUT&nbsp;&nbsp;&nbsp;1
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
open for output (write)     </td>
  </tr>
</table>
<a name="a40" doxytag="seq.h::snd_seq_system_info_alloca"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> #define snd_seq_system_info_alloca</td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">ptr&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;SND_ALLOCA(snd_seq_system_info, ptr)
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
allocate a <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container on stack     </td>
  </tr>
</table>
<hr><h2>Typedef Documentation</h2>
<a name="a2" doxytag="seq.h::snd_seq_system_info_t"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef struct _snd_seq_system_info snd_seq_system_info_t
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
system information container     </td>
  </tr>
</table>
<a name="a0" doxytag="seq.h::snd_seq_t"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef struct _snd_seq snd_seq_t
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sequencer handle     </td>
  </tr>
</table>
<a name="a1" doxytag="seq.h::snd_seq_type_t"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> typedef enum <a class="el" href="group___sequencer.html#a41">_snd_seq_type</a>  snd_seq_type_t
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
sequencer handle type     </td>
  </tr>
</table>
<hr><h2>Enumeration Type Documentation</h2>
<a name="a41" doxytag="seq.h::_snd_seq_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> enum _snd_seq_type
      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
sequencer handle type <dl compact><dt><b>Enumeration values: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em><a name="a41a98" doxytag="SND_SEQ_TYPE_HW"></a><em>SND_SEQ_TYPE_HW</em></em>&nbsp;</td><td>
hardware </td></tr>
<tr><td valign=top><em><a name="a41a99" doxytag="SND_SEQ_TYPE_SHM"></a><em>SND_SEQ_TYPE_SHM</em></em>&nbsp;</td><td>
shared memory (NYI) </td></tr>
<tr><td valign=top><em><a name="a41a100" doxytag="SND_SEQ_TYPE_INET"></a><em>SND_SEQ_TYPE_INET</em></em>&nbsp;</td><td>
network (NYI) </td></tr>
</table>
</dl>
    </td>
  </tr>
</table>
<hr><h2>Function Documentation</h2>
<a name="a12" doxytag="seq.h::snd_seq_client_id"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_client_id </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the client id.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
the client id</dl>Returns the id of the specified client. If an error occurs, function returns the negative error code. A client id is necessary to inquiry or to set the client information. A user client is assigned from 128 to 191.     </td>
  </tr>
</table>
<a name="a7" doxytag="seq.h::snd_seq_close"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_close </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Close the sequencer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>handle</em>&nbsp;</td><td>
Handle returned from <a class="el" href="group___sequencer.html#a3">snd_seq_open()</a> </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Closes the sequencer client and releases its resources. After a client is closed, an event with <a class="el" href="group___seq_events.html#a39a73">SND_SEQ_EVENT_CLIENT_EXIT</a> is broadcast to announce port. The connection between other clients are disconnected. Call this just before exiting your program.     </td>
  </tr>
</table>
<a name="a14" doxytag="seq.h::snd_seq_get_input_buffer_size"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> size_t snd_seq_get_input_buffer_size </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return the size of input buffer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
the size of input buffer in bytes</dl>Obtains the size of input buffer. This buffer is used to read byte-stream of input events from sequencer.     </td>
  </tr>
</table>
<a name="a13" doxytag="seq.h::snd_seq_get_output_buffer_size"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> size_t snd_seq_get_output_buffer_size </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return the size of output buffer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
the size of output buffer in bytes</dl>Obtains the size of output buffer. This buffer is used to store decoded byte-stream of output events before transferring to sequencer.     </td>
  </tr>
</table>
<a name="a5" doxytag="seq.h::snd_seq_name"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const char* snd_seq_name </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
get identifier of sequencer handle
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
ascii identifier of sequencer handle</dl>Returns the ASCII identifier of the given sequencer handle. It's the same identifier specified in <a class="el" href="group___sequencer.html#a3">snd_seq_open()</a>.     </td>
  </tr>
</table>
<a name="a11" doxytag="seq.h::snd_seq_nonblock"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_nonblock </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>nonblock</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set nonblock mode.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>nonblock</em>&nbsp;</td><td>
0 = block, 1 = nonblock mode </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Change the blocking mode of the given client. In block mode, the client falls into sleep when it fills the output memory pool with full events. The client will be woken up after a certain amount of free space becomes available.     </td>
  </tr>
</table>
<a name="a3" doxytag="seq.h::snd_seq_open"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_open </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> **&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seqp</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>name</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>streams</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>mode</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Open the ALSA sequencer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seqp</em>&nbsp;</td><td>
Pointer to a snd_seq_t pointer. This pointer must be kept and passed to most of the other sequencer functions. </td></tr>
<tr><td valign=top><em>name</em>&nbsp;</td><td>
The sequencer's "name". This is <em>not</em> a name you make up for your own purposes; it has special significance to the ALSA library. Usually you need to pass <code>"default"</code> here. </td></tr>
<tr><td valign=top><em>streams</em>&nbsp;</td><td>
The read/write mode of the sequencer. Can be one of three values:<ul>
<li><a class="el" href="group___sequencer.html#a30">SND_SEQ_OPEN_OUTPUT</a> - open the sequencer for output only<li><a class="el" href="group___sequencer.html#a31">SND_SEQ_OPEN_INPUT</a> - open the sequencer for input only<li><a class="el" href="group___sequencer.html#a32">SND_SEQ_OPEN_DUPLEX</a> - open the sequencer for output and input </ul>
</td></tr>
</table>
</dl><dl compact><dt><b>Note: </b></dt><dd>
Internally, these are translated to <code>O_WRONLY</code>, <code>O_RDONLY</code> and \O_RDWR respectively and used as the second argument to the C library open() call. </dl><dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>mode</em>&nbsp;</td><td>
Optional modifier. Can be either 0, or <a class="el" href="group___sequencer.html#a33">SND_SEQ_NONBLOCK</a>, which will make read/write operations non-blocking. This can also be set later using <a class="el" href="group___sequencer.html#a11">snd_seq_nonblock()</a>. </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Creates a new handle and opens a connection to the kernel sequencer interface. After a client is created successfully, an event with <a class="el" href="group___seq_events.html#a39a72">SND_SEQ_EVENT_CLIENT_START</a> is broadcast to announce port.     </td>
  </tr>
</table>
<a name="a4" doxytag="seq.h::snd_seq_open_lconf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_open_lconf </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> **&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seqp</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>name</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>streams</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>mode</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="group___config.html#a1">snd_config_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>lconf</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Open the ALSA sequencer using local configuration.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seqp</em>&nbsp;</td><td>
Pointer to a snd_seq_t pointer. </td></tr>
<tr><td valign=top><em>streams</em>&nbsp;</td><td>
The read/write mode of the sequencer. </td></tr>
<tr><td valign=top><em>mode</em>&nbsp;</td><td>
Optional modifier </td></tr>
<tr><td valign=top><em>lconf</em>&nbsp;</td><td>
Local configuration </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>See the <a class="el" href="group___sequencer.html#a3">snd_seq_open()</a> function for further details. The extension is that the given configuration is used to resolve abstract name.     </td>
  </tr>
</table>
<a name="a9" doxytag="seq.h::snd_seq_poll_descriptors"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_poll_descriptors </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>struct pollfd *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>pfds</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>unsigned int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>space</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>short&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>events</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get poll descriptors.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>pfds</em>&nbsp;</td><td>
array of poll descriptors </td></tr>
<tr><td valign=top><em>space</em>&nbsp;</td><td>
space in the poll descriptor array </td></tr>
<tr><td valign=top><em>events</em>&nbsp;</td><td>
polling events to be checked (<code>POLLIN</code> and <code>POLLOUT)</code> </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
count of filled descriptors</dl>Get poll descriptors assigned to the sequencer handle.     </td>
  </tr>
</table>
<a name="a8" doxytag="seq.h::snd_seq_poll_descriptors_count"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_poll_descriptors_count </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>short&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>events</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the number of poll descriptors.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>events</em>&nbsp;</td><td>
the poll events to be checked (<code>POLLIN</code> and <code>POLLOUT)</code> </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
the number of poll descriptors.</dl>Get the number of poll descriptors. The polling events to be checked can be specified by the second argument. When both input and output are checked, pass <code>POLLIN|POLLOUT</code>     </td>
  </tr>
</table>
<a name="a10" doxytag="seq.h::snd_seq_poll_descriptors_revents"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_poll_descriptors_revents </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>struct pollfd *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>pfds</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>unsigned int&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>nfds</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>unsigned short *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>revents</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
get returned events from poll descriptors
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>pfds</em>&nbsp;</td><td>
array of poll descriptors </td></tr>
<tr><td valign=top><em>nfds</em>&nbsp;</td><td>
count of poll descriptors </td></tr>
<tr><td valign=top><em>revents</em>&nbsp;</td><td>
returned events </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
zero if success, otherwise a negative error code </dl>    </td>
  </tr>
</table>
<a name="a16" doxytag="seq.h::snd_seq_set_input_buffer_size"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_set_input_buffer_size </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Resize the input buffer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the size of input buffer to be changed in bytes </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Changes the size of input buffer.     </td>
  </tr>
</table>
<a name="a15" doxytag="seq.h::snd_seq_set_output_buffer_size"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_set_output_buffer_size </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>size_t&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>size</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Change the size of output buffer.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>size</em>&nbsp;</td><td>
the size of output buffer to be changed in bytes </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Changes the size of output buffer.     </td>
  </tr>
</table>
<a name="a27" doxytag="seq.h::snd_seq_system_info"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>seq</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap><a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>info</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
obtain the sequencer system information
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
the pointer to be stored </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise a negative error code</dl>Stores the global system information of ALSA sequencer system. The returned data contains the maximum available numbers of queues, clients, ports and channels.     </td>
  </tr>
</table>
<a name="a20" doxytag="seq.h::snd_seq_system_info_copy"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void snd_seq_system_info_copy </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>dst</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname" nowrap>&nbsp; <em>src</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Copy one <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> to another.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>dst</em>&nbsp;</td><td>
pointer to destination </td></tr>
<tr><td valign=top><em>src</em>&nbsp;</td><td>
pointer to source </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a19" doxytag="seq.h::snd_seq_system_info_free"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void snd_seq_system_info_free </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>obj</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Frees a previously allocated <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a>.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>pointer</em>&nbsp;</td><td>
to object to free </td></tr>
</table>
</dl>    </td>
  </tr>
</table>
<a name="a24" doxytag="seq.h::snd_seq_system_info_get_channels"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_channels </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get maximum number of channels.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
maximum number of channels </dl>    </td>
  </tr>
</table>
<a name="a22" doxytag="seq.h::snd_seq_system_info_get_clients"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_clients </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get maximum number of clients.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
maximum number of clients </dl>    </td>
  </tr>
</table>
<a name="a25" doxytag="seq.h::snd_seq_system_info_get_cur_clients"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_cur_clients </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the current number of clients.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
current number of clients </dl>    </td>
  </tr>
</table>
<a name="a26" doxytag="seq.h::snd_seq_system_info_get_cur_queues"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_cur_queues </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the current number of queues.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
current number of queues </dl>    </td>
  </tr>
</table>
<a name="a23" doxytag="seq.h::snd_seq_system_info_get_ports"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_ports </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get maximum number of ports.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
maximum number of ports </dl>    </td>
  </tr>
</table>
<a name="a21" doxytag="seq.h::snd_seq_system_info_get_queues"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_get_queues </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>info</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get maximum number of queues.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>info</em>&nbsp;</td><td>
<a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> container </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
maximum number of queues </dl>    </td>
  </tr>
</table>
<a name="a18" doxytag="seq.h::snd_seq_system_info_malloc"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> int snd_seq_system_info_malloc </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> **&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>ptr</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Allocate an empty <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a> using standard malloc.
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>ptr</em>&nbsp;</td><td>
returned pointer </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
0 on success otherwise negative error code </dl>    </td>
  </tr>
</table>
<a name="a17" doxytag="seq.h::snd_seq_system_info_sizeof"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> size_t snd_seq_system_info_sizeof </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of <a class="el" href="group___sequencer.html#a2">snd_seq_system_info_t</a>.
<p>
<dl compact><dt><b>Returns: </b></dt><dd>
size in bytes </dl>    </td>
  </tr>
</table>
<a name="a6" doxytag="seq.h::snd_seq_type"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
  <tr>
    <td class="md">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> <a class="el" href="group___sequencer.html#a1">snd_seq_type_t</a> snd_seq_type </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top"><a class="el" href="group___sequencer.html#a0">snd_seq_t</a> *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>&nbsp; <em>seq</em>          </td>
          <td class="md" valign="top">)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
get type of sequencer handle
<p>
<dl compact><dt><b>Parameters: </b></dt><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>seq</em>&nbsp;</td><td>
sequencer handle </td></tr>
</table>
</dl><dl compact><dt><b>Returns: </b></dt><dd>
type of sequencer handle</dl>Returns the type <a class="el" href="group___sequencer.html#a1">snd_seq_type_t</a> of the given sequencer handle.     </td>
  </tr>
</table>
<hr><address style="align: right;"><small>Generated on Wed Apr 2 16:06:38 2003 for ALSA project - the C library reference by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border=0 
width=110 height=53></a>1.2.18 </small></address>
</body>
</html>