Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > media > main-release > by-pkgid > eebe3e0b47589a6371b9bc07addc51ff > files > 104

libalsa2-docs-1.0.23-2mdv2010.1.x86_64.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 Middle Level 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 Middle Level 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_middle.html#gafa496482a21b231621b385d1f1675b58">snd_seq_ev_clear</a>(ev)&nbsp;&nbsp;&nbsp;memset(ev, 0, sizeof(<a class="el" href="structsnd__seq__event__t.html">snd_seq_event_t</a>))</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">initialize event record  <a href="#gafa496482a21b231621b385d1f1675b58"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga2d78011c3d4618ff47f7f60e3553ea02">snd_seq_ev_set_tag</a>(ev, t)&nbsp;&nbsp;&nbsp;((ev)-&gt;tag = (t))</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the tag for given event  <a href="#ga2d78011c3d4618ff47f7f60e3553ea02"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459">snd_seq_ev_set_dest</a>(ev, c, p)&nbsp;&nbsp;&nbsp;((ev)-&gt;dest.client = (c), (ev)-&gt;dest.port = (p))</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the explicit destination  <a href="#gaff2d03c7db0d6d5cfeec429d160d9459"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga1eb546b3a1a23044d0ba7818731ed6d7">snd_seq_ev_set_subs</a>(ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set broadcasting to subscribers  <a href="#ga1eb546b3a1a23044d0ba7818731ed6d7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gab06bf27dd5d0c94d78d935311fec1124">snd_seq_ev_set_broadcast</a>(ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set broadcasting to all clients/ports  <a href="#gab06bf27dd5d0c94d78d935311fec1124"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga457525dcca4a8a7e8cdb599a8ad6e8ff">snd_seq_ev_set_source</a>(ev, p)&nbsp;&nbsp;&nbsp;((ev)-&gt;source.port = (p))</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the source port  <a href="#ga457525dcca4a8a7e8cdb599a8ad6e8ff"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gae2674210b5601e8aa3e787c1ddbdcb62">snd_seq_ev_set_direct</a>(ev)&nbsp;&nbsp;&nbsp;((ev)-&gt;queue = SND_SEQ_QUEUE_DIRECT)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set direct passing mode (without queued)  <a href="#gae2674210b5601e8aa3e787c1ddbdcb62"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga589469c27715bfae205ce26d5801d8b1">snd_seq_ev_schedule_tick</a>(ev, q, relative, ttick)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set tick-scheduling mode on queue  <a href="#ga589469c27715bfae205ce26d5801d8b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga713370bf29736477532e791b4ad92530">snd_seq_ev_schedule_real</a>(ev, q, relative, rtime)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set real-time-scheduling mode on queue  <a href="#ga713370bf29736477532e791b4ad92530"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga9b6fba99052fb11977559f15192581d4">snd_seq_ev_set_priority</a>(ev, high_prior)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set event priority  <a href="#ga9b6fba99052fb11977559f15192581d4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793">snd_seq_ev_set_fixed</a>(ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set fixed data  <a href="#ga8c949038f36fd3e27de8b8e419978793"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga12ac15c961d96d3122f7c2f6a0849fb1">snd_seq_ev_set_variable</a>(ev, datalen, dataptr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set variable data  <a href="#ga12ac15c961d96d3122f7c2f6a0849fb1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga993e1f46d8122a227fa0072a73af813e">snd_seq_ev_set_varusr</a>(ev, datalen, dataptr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set varusr data  <a href="#ga993e1f46d8122a227fa0072a73af813e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gacef573eba71eb2238758f1c178efd1d3">snd_seq_ev_set_queue_control</a>(ev, typ, q, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set queue controls  <a href="#gacef573eba71eb2238758f1c178efd1d3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga4fcbcb1f9e1967a1ec77b569be735d7a">snd_seq_ev_set_queue_start</a>(ev, q)&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_START, q, 0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the start queue event  <a href="#ga4fcbcb1f9e1967a1ec77b569be735d7a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga342554415f9536077408dc1c7331ab36">snd_seq_ev_set_queue_stop</a>(ev, q)&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_STOP, q, 0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the stop queue event  <a href="#ga342554415f9536077408dc1c7331ab36"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga32b0ff4c40ffde6e08a7df624193ae40">snd_seq_ev_set_queue_continue</a>(ev, q)&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_CONTINUE, q, 0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the stop queue event  <a href="#ga32b0ff4c40ffde6e08a7df624193ae40"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga3d2a17d5034eb296af311b56374f2b19">snd_seq_ev_set_queue_tempo</a>(ev, q, val)&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_TEMPO, q, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the stop queue event  <a href="#ga3d2a17d5034eb296af311b56374f2b19"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gae7cb527a1efa854ba487bb26cfa62c77">snd_seq_ev_set_queue_pos_real</a>(ev, q, rtime)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the real-time position of a queue  <a href="#gae7cb527a1efa854ba487bb26cfa62c77"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga8b6057651e037e0df565784f629b5fb8">snd_seq_ev_set_queue_pos_tick</a>(ev, q, ttime)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the tick-time position of a queue  <a href="#ga8b6057651e037e0df565784f629b5fb8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga0c7a86bb19188a00c5a3b4907d558058">snd_seq_start_queue</a>(seq, q, ev)&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_START, 0, ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">start the specified queue  <a href="#ga0c7a86bb19188a00c5a3b4907d558058"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gab62a2e964135fdff96d21835d4cddad6">snd_seq_stop_queue</a>(seq, q, ev)&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_STOP, 0, ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">stop the specified queue  <a href="#gab62a2e964135fdff96d21835d4cddad6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gad6b0c90be37eeb583318c9077f095b86">snd_seq_continue_queue</a>(seq, q, ev)&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_CONTINUE, 0, ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">continue the specified queue  <a href="#gad6b0c90be37eeb583318c9077f095b86"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gab77f13c0b39dec12ef983eb706925d00">snd_seq_change_queue_tempo</a>(seq, q, tempo, ev)&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_TEMPO, tempo, ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">change the tempo of the specified queue  <a href="#gab77f13c0b39dec12ef983eb706925d00"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga544adc6b2a43edab107962754a772778">snd_seq_ev_set_note</a>(ev, ch, key, vel, dur)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set note event  <a href="#ga544adc6b2a43edab107962754a772778"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga61fbd95aadd4a80f4ff8db5f8f28172f">snd_seq_ev_set_noteon</a>(ev, ch, key, vel)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set note-on event  <a href="#ga61fbd95aadd4a80f4ff8db5f8f28172f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gab9b466031485504fd5b4300def95de7c">snd_seq_ev_set_noteoff</a>(ev, ch, key, vel)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set note-off event  <a href="#gab9b466031485504fd5b4300def95de7c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga09c562a0d1745dc1a73e7347d51af913">snd_seq_ev_set_keypress</a>(ev, ch, key, vel)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set key-pressure event  <a href="#ga09c562a0d1745dc1a73e7347d51af913"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga1658bb76bb89c8bac1e7b0140d72c23c">snd_seq_ev_set_controller</a>(ev, ch, cc, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set MIDI controller event  <a href="#ga1658bb76bb89c8bac1e7b0140d72c23c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gab74005fe3b04460687f88ba79695d631">snd_seq_ev_set_pgmchange</a>(ev, ch, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set program change event  <a href="#gab74005fe3b04460687f88ba79695d631"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga8da40bfd56e00ebec775e5241d86a3e3">snd_seq_ev_set_pitchbend</a>(ev, ch, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set pitch-bend event  <a href="#ga8da40bfd56e00ebec775e5241d86a3e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#gaa475a6778116256734e7da45f4eb7af8">snd_seq_ev_set_chanpress</a>(ev, ch, val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set channel pressure event  <a href="#gaa475a6778116256734e7da45f4eb7af8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga104862c436dcc8f23892be44f50bc90f">snd_seq_ev_set_sysex</a>(ev, datalen, dataptr)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set sysex event  <a href="#ga104862c436dcc8f23892be44f50bc90f"></a><br/></td></tr>
<tr><td colspan="2"><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___seq_middle.html#ga36dee7982baa47ad22ab8437541ea5ef">snd_seq_control_queue</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int q, int type, int value, <a class="el" href="structsnd__seq__event__t.html">snd_seq_event_t</a> *ev)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">queue controls - start/stop/continue  <a href="#ga36dee7982baa47ad22ab8437541ea5ef"></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_middle.html#ga9368266bde7b5c0f8d5ddeaf64914719">snd_seq_create_simple_port</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, const char *name, unsigned int caps, unsigned int type)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a port - simple version  <a href="#ga9368266bde7b5c0f8d5ddeaf64914719"></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_middle.html#ga8ac4c3a85750550f2978ca720a6329ca">snd_seq_delete_simple_port</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">delete the port  <a href="#ga8ac4c3a85750550f2978ca720a6329ca"></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_middle.html#ga1382029795fa101a3b8cc0af7b83b639">snd_seq_connect_from</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int my_port, int src_client, int src_port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">simple subscription (w/o exclusive &amp; time conversion)  <a href="#ga1382029795fa101a3b8cc0af7b83b639"></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_middle.html#gab39e210c5d93e96c241644f334c6c9ca">snd_seq_connect_to</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int my_port, int dest_client, int dest_port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">simple subscription (w/o exclusive &amp; time conversion)  <a href="#gab39e210c5d93e96c241644f334c6c9ca"></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_middle.html#ga931d199c780be30524aa24e58c59f6b9">snd_seq_disconnect_from</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int my_port, int src_client, int src_port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">simple disconnection  <a href="#ga931d199c780be30524aa24e58c59f6b9"></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_middle.html#gafe5756afcd471b2d6bbd457c7abc5e89">snd_seq_disconnect_to</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int my_port, int dest_client, int dest_port)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">simple disconnection  <a href="#gafe5756afcd471b2d6bbd457c7abc5e89"></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_middle.html#gaec3acab3bfb3df3f0c9ccc4903570b9d">snd_seq_set_client_name</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, const char *name)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set client name  <a href="#gaec3acab3bfb3df3f0c9ccc4903570b9d"></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_middle.html#ga888bf17bbc8141d1624f7bbef52dddce">snd_seq_set_client_event_filter</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, int event_type)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">add client event filter  <a href="#ga888bf17bbc8141d1624f7bbef52dddce"></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_middle.html#ga38e40d84154122798c9fad8e56c60a0f">snd_seq_set_client_pool_output</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">change the output pool size of the given client  <a href="#ga38e40d84154122798c9fad8e56c60a0f"></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_middle.html#ga597d2417e0fd512f56d31464cc2ea7d7">snd_seq_set_client_pool_output_room</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">change the output room size of the given client  <a href="#ga597d2417e0fd512f56d31464cc2ea7d7"></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_middle.html#ga1344c7aadb847bd409093c179557732d">snd_seq_set_client_pool_input</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, size_t size)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">change the input pool size of the given client  <a href="#ga1344c7aadb847bd409093c179557732d"></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_middle.html#ga732ad887b457771b7db47908186e8cce">snd_seq_sync_output_queue</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">wait until all events are processed  <a href="#ga732ad887b457771b7db47908186e8cce"></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_middle.html#ga692043bd9cb709b15513b06cea5bf0e8">snd_seq_parse_address</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq, <a class="el" href="structsnd__seq__addr__t.html">snd_seq_addr_t</a> *addr, const char *str)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">parse the given string and get the sequencer address  <a href="#ga692043bd9cb709b15513b06cea5bf0e8"></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_middle.html#ga49d2acf57c4493a95eaaa19d8199f6f2">snd_seq_reset_pool_output</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">reset client output pool  <a href="#ga49d2acf57c4493a95eaaa19d8199f6f2"></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_middle.html#gae90243ea4d4e534bbca2b3965ff8efe9">snd_seq_reset_pool_input</a> (<a class="el" href="group___sequencer.html#gae141149958a7458806152ed5942a1acd">snd_seq_t</a> *seq)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">reset client input pool  <a href="#gae90243ea4d4e534bbca2b3965ff8efe9"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Sequencer Middle Level Interface </p>
<hr/><h2>Define Documentation</h2>
<a class="anchor" id="gab77f13c0b39dec12ef983eb706925d00"></a><!-- doxytag: member="seqmid.h::snd_seq_change_queue_tempo" ref="gab77f13c0b39dec12ef983eb706925d00" args="(seq, q, tempo, ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_change_queue_tempo</td>
          <td>(</td>
          <td class="paramtype">seq, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">tempo, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_TEMPO, tempo, ev)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>change the tempo of the specified queue </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>q</em>&nbsp;</td><td>queue id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>tempo</em>&nbsp;</td><td>the new tempo value </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>optional event record (see <a class="el" href="group___seq_middle.html#ga36dee7982baa47ad22ab8437541ea5ef" title="queue controls - start/stop/continue">snd_seq_control_queue</a>) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gad6b0c90be37eeb583318c9077f095b86"></a><!-- doxytag: member="seqmid.h::snd_seq_continue_queue" ref="gad6b0c90be37eeb583318c9077f095b86" args="(seq, q, ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_continue_queue</td>
          <td>(</td>
          <td class="paramtype">seq, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_CONTINUE, 0, ev)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>continue the specified queue </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>q</em>&nbsp;</td><td>queue id to continue </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>optional event record (see <a class="el" href="group___seq_middle.html#ga36dee7982baa47ad22ab8437541ea5ef" title="queue controls - start/stop/continue">snd_seq_control_queue</a>) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gafa496482a21b231621b385d1f1675b58"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_clear" ref="gafa496482a21b231621b385d1f1675b58" args="(ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_clear</td>
          <td>(</td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;memset(ev, 0, sizeof(<a class="el" href="structsnd__seq__event__t.html">snd_seq_event_t</a>))</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>initialize event record </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record pointer</td></tr>
  </table>
  </dd>
</dl>
<p>This macro clears the given event record pointer to the default status. </p>

</div>
</div>
<a class="anchor" id="ga713370bf29736477532e791b4ad92530"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_schedule_real" ref="ga713370bf29736477532e791b4ad92530" args="(ev, q, relative, rtime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_schedule_real</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">relative, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">rtime&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~(<a class="code" href="group___seq_events.html#gac7da1e1965e86a68f663babec22a99ba">SND_SEQ_TIME_STAMP_MASK</a> | <a class="code" href="group___seq_events.html#gac7c12b40ede05529ec9a66b938d62aec">SND_SEQ_TIME_MODE_MASK</a>),\
         (ev)-&gt;flags |= <a class="code" href="group___seq_events.html#ga13e36bf2f3341625f6d88858d512f50b">SND_SEQ_TIME_STAMP_REAL</a>,\
         (ev)-&gt;flags |= (relative) ? <a class="code" href="group___seq_events.html#ga167d462a14d80b2599470635dd0ee048">SND_SEQ_TIME_MODE_REL</a> : <a class="code" href="group___seq_events.html#gaa799f2aa335545bfe9dedc84105b6cf9">SND_SEQ_TIME_MODE_ABS</a>,\
         (ev)-&gt;time.time = *(rtime),\
         (ev)-&gt;queue = (q))
</pre></div>
<p>set real-time-scheduling mode on queue </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to schedule </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>relative</em>&nbsp;</td><td>relative time-stamp if non-zero </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>rtime</em>&nbsp;</td><td>time-stamp to be delivered</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the scheduling of the event in the realtime mode.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga589469c27715bfae205ce26d5801d8b1" title="set tick-scheduling mode on queue">snd_seq_ev_schedule_tick()</a>, <a class="el" href="group___seq_middle.html#gae2674210b5601e8aa3e787c1ddbdcb62" title="set direct passing mode (without queued)">snd_seq_ev_set_direct()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga589469c27715bfae205ce26d5801d8b1"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_schedule_tick" ref="ga589469c27715bfae205ce26d5801d8b1" args="(ev, q, relative, ttick)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_schedule_tick</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">relative, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ttick&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~(<a class="code" href="group___seq_events.html#gac7da1e1965e86a68f663babec22a99ba">SND_SEQ_TIME_STAMP_MASK</a> | <a class="code" href="group___seq_events.html#gac7c12b40ede05529ec9a66b938d62aec">SND_SEQ_TIME_MODE_MASK</a>),\
         (ev)-&gt;flags |= <a class="code" href="group___seq_events.html#gaf3c4c4900893680d95aa722ee6c16d2e">SND_SEQ_TIME_STAMP_TICK</a>,\
         (ev)-&gt;flags |= (relative) ? <a class="code" href="group___seq_events.html#ga167d462a14d80b2599470635dd0ee048">SND_SEQ_TIME_MODE_REL</a> : <a class="code" href="group___seq_events.html#gaa799f2aa335545bfe9dedc84105b6cf9">SND_SEQ_TIME_MODE_ABS</a>,\
         (ev)-&gt;time.tick = (ttick),\
         (ev)-&gt;queue = (q))
</pre></div>
<p>set tick-scheduling mode on queue </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to schedule </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>relative</em>&nbsp;</td><td>relative time-stamp if non-zero </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ttick</em>&nbsp;</td><td>tick time-stamp to be delivered</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the scheduling of the event in the MIDI tick mode.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga713370bf29736477532e791b4ad92530" title="set real-time-scheduling mode on queue">snd_seq_ev_schedule_real()</a>, <a class="el" href="group___seq_middle.html#gae2674210b5601e8aa3e787c1ddbdcb62" title="set direct passing mode (without queued)">snd_seq_ev_set_direct()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gab06bf27dd5d0c94d78d935311fec1124"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_broadcast" ref="gab06bf27dd5d0c94d78d935311fec1124" args="(ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_broadcast</td>
          <td>(</td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;dest.client = <a class="code" href="group___sequencer.html#gafc9dd136f59487d09d2124cef09b8c3e">SND_SEQ_ADDRESS_BROADCAST</a>,\
         (ev)-&gt;dest.port = <a class="code" href="group___sequencer.html#gafc9dd136f59487d09d2124cef09b8c3e">SND_SEQ_ADDRESS_BROADCAST</a>)
</pre></div>
<p>set broadcasting to all clients/ports </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the destination as the broadcasting.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459" title="set the explicit destination">snd_seq_ev_set_dest()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaa475a6778116256734e7da45f4eb7af8"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_chanpress" ref="gaa475a6778116256734e7da45f4eb7af8" args="(ev, ch, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_chanpress</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a7eb97df129127eb771e9800da217f1fe">SND_SEQ_EVENT_CHANPRESS</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.control.channel = (ch),\
         (ev)-&gt;data.control.value = (val))
</pre></div>
<p>set channel pressure event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>channel pressure value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga1658bb76bb89c8bac1e7b0140d72c23c"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_controller" ref="ga1658bb76bb89c8bac1e7b0140d72c23c" args="(ev, ch, cc, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_controller</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">cc, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a926c84318eb653c739e1d21fa20a0d95">SND_SEQ_EVENT_CONTROLLER</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.control.channel = (ch),\
         (ev)-&gt;data.control.param = (cc),\
         (ev)-&gt;data.control.value = (val))
</pre></div>
<p>set MIDI controller event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cc</em>&nbsp;</td><td>controller number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>control value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gaff2d03c7db0d6d5cfeec429d160d9459"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_dest" ref="gaff2d03c7db0d6d5cfeec429d160d9459" args="(ev, c, p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_dest</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">c, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">p&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;((ev)-&gt;dest.client = (c), (ev)-&gt;dest.port = (p))</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the explicit destination </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>destination client id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>destination port id</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the client and port id numbers to the given event record.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga1eb546b3a1a23044d0ba7818731ed6d7" title="set broadcasting to subscribers">snd_seq_ev_set_subs()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gae2674210b5601e8aa3e787c1ddbdcb62"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_direct" ref="gae2674210b5601e8aa3e787c1ddbdcb62" args="(ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_direct</td>
          <td>(</td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;((ev)-&gt;queue = SND_SEQ_QUEUE_DIRECT)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set direct passing mode (without queued) </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the event to the direct passing mode to be delivered immediately without queueing.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga589469c27715bfae205ce26d5801d8b1" title="set tick-scheduling mode on queue">snd_seq_ev_schedule_tick()</a>, <a class="el" href="group___seq_middle.html#ga713370bf29736477532e791b4ad92530" title="set real-time-scheduling mode on queue">snd_seq_ev_schedule_real()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga8c949038f36fd3e27de8b8e419978793"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_fixed" ref="ga8c949038f36fd3e27de8b8e419978793" args="(ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_fixed</td>
          <td>(</td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~<a class="code" href="group___seq_events.html#ga69fa938ef7ebc12e3d1b8758b39b7967">SND_SEQ_EVENT_LENGTH_MASK</a>,\
         (ev)-&gt;flags |= <a class="code" href="group___seq_events.html#ga35b6aacb44080053e0ca0eeaefbe8dc2">SND_SEQ_EVENT_LENGTH_FIXED</a>)
</pre></div>
<p>set fixed data </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance</td></tr>
  </table>
  </dd>
</dl>
<p>Sets the event length mode as fixed size.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga12ac15c961d96d3122f7c2f6a0849fb1" title="set variable data">snd_seq_ev_set_variable()</a>, <a class="el" href="group___seq_middle.html#ga993e1f46d8122a227fa0072a73af813e" title="set varusr data">snd_seq_ev_set_varusr()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga09c562a0d1745dc1a73e7347d51af913"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_keypress" ref="ga09c562a0d1745dc1a73e7347d51af913" args="(ev, ch, key, vel)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_keypress</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vel&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a6d7adef3e4f2ed96cd7e2def9d541510">SND_SEQ_EVENT_KEYPRESS</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.note.channel = (ch),\
         (ev)-&gt;data.note.note = (key),\
         (ev)-&gt;data.note.velocity = (vel))
</pre></div>
<p>set key-pressure event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>note key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vel</em>&nbsp;</td><td>velocity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga544adc6b2a43edab107962754a772778"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_note" ref="ga544adc6b2a43edab107962754a772778" args="(ev, ch, key, vel, dur)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_note</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vel, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">dur&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a783ed12805a5ecc26b36b5d469332a8c">SND_SEQ_EVENT_NOTE</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.note.channel = (ch),\
         (ev)-&gt;data.note.note = (key),\
         (ev)-&gt;data.note.velocity = (vel),\
         (ev)-&gt;data.note.duration = (dur))
</pre></div>
<p>set note event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>note key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vel</em>&nbsp;</td><td>velocity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dur</em>&nbsp;</td><td>duration (in tick or msec) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab9b466031485504fd5b4300def95de7c"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_noteoff" ref="gab9b466031485504fd5b4300def95de7c" args="(ev, ch, key, vel)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_noteoff</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vel&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40aa7359bc2f050a79c5021cfa90d0705f8">SND_SEQ_EVENT_NOTEOFF</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.note.channel = (ch),\
         (ev)-&gt;data.note.note = (key),\
         (ev)-&gt;data.note.velocity = (vel))
</pre></div>
<p>set note-off event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>note key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vel</em>&nbsp;</td><td>velocity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga61fbd95aadd4a80f4ff8db5f8f28172f"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_noteon" ref="ga61fbd95aadd4a80f4ff8db5f8f28172f" args="(ev, ch, key, vel)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_noteon</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">key, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vel&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40af35df63c334c5388ff349550e31460c2">SND_SEQ_EVENT_NOTEON</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.note.channel = (ch),\
         (ev)-&gt;data.note.note = (key),\
         (ev)-&gt;data.note.velocity = (vel))
</pre></div>
<p>set note-on event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>note key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vel</em>&nbsp;</td><td>velocity </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab74005fe3b04460687f88ba79695d631"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_pgmchange" ref="gab74005fe3b04460687f88ba79695d631" args="(ev, ch, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_pgmchange</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40ae8264fb5f3870a1e5f6c2724b916cefd">SND_SEQ_EVENT_PGMCHANGE</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.control.channel = (ch),\
         (ev)-&gt;data.control.value = (val))
</pre></div>
<p>set program change event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>program number </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8da40bfd56e00ebec775e5241d86a3e3"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_pitchbend" ref="ga8da40bfd56e00ebec775e5241d86a3e3" args="(ev, ch, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_pitchbend</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ch, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40ab1bb9ffa38e5247f993f9368a144336b">SND_SEQ_EVENT_PITCHBEND</a>,\
         <a class="code" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed</a>(ev),\
         (ev)-&gt;data.control.channel = (ch),\
         (ev)-&gt;data.control.value = (val))
</pre></div>
<p>set pitch-bend event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>channel number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>pitch bend; zero centered from -8192 to 8191 </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga9b6fba99052fb11977559f15192581d4"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_priority" ref="ga9b6fba99052fb11977559f15192581d4" args="(ev, high_prior)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_priority</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">high_prior&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~<a class="code" href="group___seq_events.html#gaea7b84a517451282036dad991a45239c">SND_SEQ_PRIORITY_MASK</a>,\
         (ev)-&gt;flags |= (high_prior) ? <a class="code" href="group___seq_events.html#ga6816c4987d7dc2efe4b9949223964165">SND_SEQ_PRIORITY_HIGH</a> : <a class="code" href="group___seq_events.html#gad40a7212be7f3c8b27ad641d7e4210ad">SND_SEQ_PRIORITY_NORMAL</a>)
</pre></div>
<p>set event priority </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>high_prior</em>&nbsp;</td><td>1 for high priority mode </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga32b0ff4c40ffde6e08a7df624193ae40"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_continue" ref="ga32b0ff4c40ffde6e08a7df624193ae40" args="(ev, q)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_continue</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_CONTINUE, q, 0)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the stop queue event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to continue</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga4fcbcb1f9e1967a1ec77b569be735d7a" title="set the start queue event">snd_seq_ev_set_queue_start()</a>, <a class="el" href="group___seq_middle.html#ga342554415f9536077408dc1c7331ab36" title="set the stop queue event">snd_seq_ev_set_queue_stop()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gacef573eba71eb2238758f1c178efd1d3"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_control" ref="gacef573eba71eb2238758f1c178efd1d3" args="(ev, typ, q, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_control</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">typ, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = (typ),\
         <a class="code" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459" title="set the explicit destination">snd_seq_ev_set_dest</a>(ev, <a class="code" href="group___sequencer.html#ga5437f98c59679c92ee4d940ac643169e">SND_SEQ_CLIENT_SYSTEM</a>, <a class="code" href="group___seq_port.html#ga02870ceddec24d3cc5609ec728b0cb92">SND_SEQ_PORT_SYSTEM_TIMER</a>),\
         (ev)-&gt;data.queue.queue = (q),\
         (ev)-&gt;data.queue.param.value = (val))
</pre></div>
<p>set queue controls </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>typ</em>&nbsp;</td><td>event type </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>control value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gae7cb527a1efa854ba487bb26cfa62c77"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_pos_real" ref="gae7cb527a1efa854ba487bb26cfa62c77" args="(ev, q, rtime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_pos_real</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">rtime&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a0ff211e23d32cbb1e3bcc4a63f61c2bd">SND_SEQ_EVENT_SETPOS_TIME</a>,\
         <a class="code" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459" title="set the explicit destination">snd_seq_ev_set_dest</a>(ev, <a class="code" href="group___sequencer.html#ga5437f98c59679c92ee4d940ac643169e">SND_SEQ_CLIENT_SYSTEM</a>, <a class="code" href="group___seq_port.html#ga02870ceddec24d3cc5609ec728b0cb92">SND_SEQ_PORT_SYSTEM_TIMER</a>),\
         (ev)-&gt;data.queue.queue = (q),\
         (ev)-&gt;data.queue.param.time.time = *(rtime))
</pre></div>
<p>set the real-time position of a queue </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to change tempo </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>rtime</em>&nbsp;</td><td>the new real-time pointer </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga8b6057651e037e0df565784f629b5fb8"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_pos_tick" ref="ga8b6057651e037e0df565784f629b5fb8" args="(ev, q, ttime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_pos_tick</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ttime&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40aeb233aee7f0548cd3b0fdc811c15d3ec">SND_SEQ_EVENT_SETPOS_TICK</a>,\
         <a class="code" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459" title="set the explicit destination">snd_seq_ev_set_dest</a>(ev, <a class="code" href="group___sequencer.html#ga5437f98c59679c92ee4d940ac643169e">SND_SEQ_CLIENT_SYSTEM</a>, <a class="code" href="group___seq_port.html#ga02870ceddec24d3cc5609ec728b0cb92">SND_SEQ_PORT_SYSTEM_TIMER</a>),\
         (ev)-&gt;data.queue.queue = (q),\
         (ev)-&gt;data.queue.param.time.tick = (ttime))
</pre></div>
<p>set the tick-time position of a queue </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to change tempo </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ttime</em>&nbsp;</td><td>the new tick-time </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga4fcbcb1f9e1967a1ec77b569be735d7a"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_start" ref="ga4fcbcb1f9e1967a1ec77b569be735d7a" args="(ev, q)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_start</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_START, q, 0)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the start queue event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to start</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga342554415f9536077408dc1c7331ab36" title="set the stop queue event">snd_seq_ev_set_queue_stop()</a>, <a class="el" href="group___seq_middle.html#ga32b0ff4c40ffde6e08a7df624193ae40" title="set the stop queue event">snd_seq_ev_set_queue_continue()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga342554415f9536077408dc1c7331ab36"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_stop" ref="ga342554415f9536077408dc1c7331ab36" args="(ev, q)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_stop</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_STOP, q, 0)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the stop queue event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to stop</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga4fcbcb1f9e1967a1ec77b569be735d7a" title="set the start queue event">snd_seq_ev_set_queue_start()</a>, <a class="el" href="group___seq_middle.html#ga32b0ff4c40ffde6e08a7df624193ae40" title="set the stop queue event">snd_seq_ev_set_queue_continue()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga3d2a17d5034eb296af311b56374f2b19"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_queue_tempo" ref="ga3d2a17d5034eb296af311b56374f2b19" args="(ev, q, val)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_queue_tempo</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">val&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_ev_set_queue_control(ev, SND_SEQ_EVENT_TEMPO, q, val)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the stop queue event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>queue id to change tempo </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>the new tempo value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga457525dcca4a8a7e8cdb599a8ad6e8ff"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_source" ref="ga457525dcca4a8a7e8cdb599a8ad6e8ff" args="(ev, p)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_source</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">p&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;((ev)-&gt;source.port = (p))</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the source 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>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>source port id</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the source port id number. </p>

</div>
</div>
<a class="anchor" id="ga1eb546b3a1a23044d0ba7818731ed6d7"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_subs" ref="ga1eb546b3a1a23044d0ba7818731ed6d7" args="(ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_subs</td>
          <td>(</td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;dest.client = <a class="code" href="group___sequencer.html#ga383b235d2afbe48704952edfd3a33eed">SND_SEQ_ADDRESS_SUBSCRIBERS</a>,\
         (ev)-&gt;dest.port = <a class="code" href="group___sequencer.html#ga79353f7f2482e98b5181f03df7c807ac">SND_SEQ_ADDRESS_UNKNOWN</a>)
</pre></div>
<p>set broadcasting to subscribers </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the destination as the subscribers.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#gaff2d03c7db0d6d5cfeec429d160d9459" title="set the explicit destination">snd_seq_ev_set_dest()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga104862c436dcc8f23892be44f50bc90f"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_sysex" ref="ga104862c436dcc8f23892be44f50bc90f" args="(ev, datalen, dataptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_sysex</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">datalen, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">dataptr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;type = <a class="code" href="group___seq_events.html#ggaef39e1f267006faf7abc91c3cb32ea40a053842a32bef6aac4c8b21b2fc80fc74">SND_SEQ_EVENT_SYSEX</a>,\
         <a class="code" href="group___seq_middle.html#ga12ac15c961d96d3122f7c2f6a0849fb1" title="set variable data">snd_seq_ev_set_variable</a>(ev, datalen, dataptr))
</pre></div>
<p>set sysex event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>datalen</em>&nbsp;</td><td>length of sysex data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dataptr</em>&nbsp;</td><td>sysex data pointer</td></tr>
  </table>
  </dd>
</dl>
<p>the sysex data must contain the start byte 0xf0 and the end byte 0xf7. </p>

</div>
</div>
<a class="anchor" id="ga2d78011c3d4618ff47f7f60e3553ea02"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_tag" ref="ga2d78011c3d4618ff47f7f60e3553ea02" args="(ev, t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_tag</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">t&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;((ev)-&gt;tag = (t))</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the tag for given event </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event record </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>event tag</td></tr>
  </table>
  </dd>
</dl>
<p>This macro sets the tag to the given event record. </p>

</div>
</div>
<a class="anchor" id="ga12ac15c961d96d3122f7c2f6a0849fb1"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_variable" ref="ga12ac15c961d96d3122f7c2f6a0849fb1" args="(ev, datalen, dataptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_variable</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">datalen, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">dataptr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~<a class="code" href="group___seq_events.html#ga69fa938ef7ebc12e3d1b8758b39b7967">SND_SEQ_EVENT_LENGTH_MASK</a>,\
         (ev)-&gt;flags |= <a class="code" href="group___seq_events.html#ga273f82dce70a0284a4dcabd34f1bfe7d">SND_SEQ_EVENT_LENGTH_VARIABLE</a>,\
         (ev)-&gt;data.ext.len = (datalen),\
         (ev)-&gt;data.ext.ptr = (dataptr))
</pre></div>
<p>set variable data </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>datalen</em>&nbsp;</td><td>length of the external data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dataptr</em>&nbsp;</td><td>pointer of the external data</td></tr>
  </table>
  </dd>
</dl>
<p>Sets the event length mode as variable length and stores the data.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed()</a>, <a class="el" href="group___seq_middle.html#ga993e1f46d8122a227fa0072a73af813e" title="set varusr data">snd_seq_ev_set_varusr()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga993e1f46d8122a227fa0072a73af813e"></a><!-- doxytag: member="seqmid.h::snd_seq_ev_set_varusr" ref="ga993e1f46d8122a227fa0072a73af813e" args="(ev, datalen, dataptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_ev_set_varusr</td>
          <td>(</td>
          <td class="paramtype">ev, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">datalen, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">dataptr&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<b>Value:</b><div class="fragment"><pre class="fragment">((ev)-&gt;flags &amp;= ~<a class="code" href="group___seq_events.html#ga69fa938ef7ebc12e3d1b8758b39b7967">SND_SEQ_EVENT_LENGTH_MASK</a>,\
         (ev)-&gt;flags |= <a class="code" href="group___seq_events.html#ga5e38e6cf87f023332b797c30b74223b1">SND_SEQ_EVENT_LENGTH_VARUSR</a>,\
         (ev)-&gt;data.ext.len = (datalen),\
         (ev)-&gt;data.ext.ptr = (dataptr))
</pre></div>
<p>set varusr data </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>datalen</em>&nbsp;</td><td>length of the external data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dataptr</em>&nbsp;</td><td>pointer of the external data</td></tr>
  </table>
  </dd>
</dl>
<p>Sets the event length mode as variable user-space data and stores the data.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_middle.html#ga8c949038f36fd3e27de8b8e419978793" title="set fixed data">snd_seq_ev_set_fixed()</a>, <a class="el" href="group___seq_middle.html#ga12ac15c961d96d3122f7c2f6a0849fb1" title="set variable data">snd_seq_ev_set_variable()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga0c7a86bb19188a00c5a3b4907d558058"></a><!-- doxytag: member="seqmid.h::snd_seq_start_queue" ref="ga0c7a86bb19188a00c5a3b4907d558058" args="(seq, q, ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_start_queue</td>
          <td>(</td>
          <td class="paramtype">seq, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_START, 0, ev)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>start the specified queue </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>q</em>&nbsp;</td><td>queue id to start </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>optional event record (see <a class="el" href="group___seq_middle.html#ga36dee7982baa47ad22ab8437541ea5ef" title="queue controls - start/stop/continue">snd_seq_control_queue</a>) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab62a2e964135fdff96d21835d4cddad6"></a><!-- doxytag: member="seqmid.h::snd_seq_stop_queue" ref="gab62a2e964135fdff96d21835d4cddad6" args="(seq, q, ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define snd_seq_stop_queue</td>
          <td>(</td>
          <td class="paramtype">seq, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">q, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ev&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td>&nbsp;&nbsp;&nbsp;snd_seq_control_queue(seq, q, SND_SEQ_EVENT_STOP, 0, ev)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>stop the specified queue </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>q</em>&nbsp;</td><td>queue id to stop </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>optional event record (see <a class="el" href="group___seq_middle.html#ga36dee7982baa47ad22ab8437541ea5ef" title="queue controls - start/stop/continue">snd_seq_control_queue</a>) </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga1382029795fa101a3b8cc0af7b83b639"></a><!-- doxytag: member="seqmid.h::snd_seq_connect_from" ref="ga1382029795fa101a3b8cc0af7b83b639" args="(snd_seq_t *seq, int my_port, int src_client, int src_port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_connect_from </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>myport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>src_client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>src_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>simple subscription (w/o exclusive &amp; time conversion) </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>myport</em>&nbsp;</td><td>the port id as receiver </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src_client</em>&nbsp;</td><td>sender client id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src_port</em>&nbsp;</td><td>sender port id </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>Connect from the given sender client:port to the given destination port in the current client.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_subscribe.html#ga2b216ec66cd724af31d376398e7b4863" title="subscribe a port connection">snd_seq_subscribe_port()</a>, <a class="el" href="group___seq_middle.html#ga931d199c780be30524aa24e58c59f6b9" title="simple disconnection">snd_seq_disconnect_from()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gab39e210c5d93e96c241644f334c6c9ca"></a><!-- doxytag: member="seqmid.h::snd_seq_connect_to" ref="gab39e210c5d93e96c241644f334c6c9ca" args="(snd_seq_t *seq, int my_port, int dest_client, int dest_port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_connect_to </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>myport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dest_client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dest_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>simple subscription (w/o exclusive &amp; time conversion) </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>myport</em>&nbsp;</td><td>the port id as sender </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest_client</em>&nbsp;</td><td>destination client id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest_port</em>&nbsp;</td><td>destination port id </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>Connect from the given receiver port in the current client to the given destination client:port.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_subscribe.html#ga2b216ec66cd724af31d376398e7b4863" title="subscribe a port connection">snd_seq_subscribe_port()</a>, <a class="el" href="group___seq_middle.html#gafe5756afcd471b2d6bbd457c7abc5e89" title="simple disconnection">snd_seq_disconnect_to()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga36dee7982baa47ad22ab8437541ea5ef"></a><!-- doxytag: member="seqmid.h::snd_seq_control_queue" ref="ga36dee7982baa47ad22ab8437541ea5ef" args="(snd_seq_t *seq, int q, int type, int value, snd_seq_event_t *ev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_control_queue </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>q</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structsnd__seq__event__t.html">snd_seq_event_t</a> *&nbsp;</td>
          <td class="paramname"> <em>ev</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>queue controls - start/stop/continue </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>q</em>&nbsp;</td><td>queue id to control </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>event type </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>event value </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ev</em>&nbsp;</td><td>event instance</td></tr>
  </table>
  </dd>
</dl>
<p>This function sets up general queue control event and sends it. To send at scheduled time, set the schedule in <em>ev</em>. If <em>ev</em> is NULL, the event is composed locally and sent immediately to the specified queue. In any cases, you need to call <a class="el" href="group___seq_event.html#ga64a0ed5488504ef91b5b6b92172bc0aa" title="drain output buffer to sequencer">snd_seq_drain_output()</a> appropriately to feed the event.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_queue.html#ga036e62b321b56bee2e8d2e8280a6416a" title="allocate a queue">snd_seq_alloc_queue()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga9368266bde7b5c0f8d5ddeaf64914719"></a><!-- doxytag: member="seqmid.h::snd_seq_create_simple_port" ref="ga9368266bde7b5c0f8d5ddeaf64914719" args="(snd_seq_t *seq, const char *name, unsigned int caps, unsigned int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_create_simple_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">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>caps</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>create a port - simple version </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>name</em>&nbsp;</td><td>the name of the port </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>caps</em>&nbsp;</td><td>capability bits </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>type bits </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the created port number or negative error code</dd></dl>
<p>Creates a port with the given capability and type bits.</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="ga8ac4c3a85750550f2978ca720a6329ca"></a><!-- doxytag: member="seqmid.h::snd_seq_delete_simple_port" ref="ga8ac4c3a85750550f2978ca720a6329ca" args="(snd_seq_t *seq, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_delete_simple_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 the 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>port</em>&nbsp;</td><td>port id </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<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_middle.html#ga9368266bde7b5c0f8d5ddeaf64914719" title="create a port - simple version">snd_seq_create_simple_port()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga931d199c780be30524aa24e58c59f6b9"></a><!-- doxytag: member="seqmid.h::snd_seq_disconnect_from" ref="ga931d199c780be30524aa24e58c59f6b9" args="(snd_seq_t *seq, int my_port, int src_client, int src_port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_disconnect_from </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>myport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>src_client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>src_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>simple disconnection </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>myport</em>&nbsp;</td><td>the port id as receiver </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src_client</em>&nbsp;</td><td>sender client id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src_port</em>&nbsp;</td><td>sender port id </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>Remove connection from the given sender client:port to the given destination port in the current client.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_subscribe.html#ga962385329f27f4024276756019e8a615" title="unsubscribe a connection between ports">snd_seq_unsubscribe_port()</a>, <a class="el" href="group___seq_middle.html#ga1382029795fa101a3b8cc0af7b83b639" title="simple subscription (w/o exclusive &amp; time conversion)">snd_seq_connect_from()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gafe5756afcd471b2d6bbd457c7abc5e89"></a><!-- doxytag: member="seqmid.h::snd_seq_disconnect_to" ref="gafe5756afcd471b2d6bbd457c7abc5e89" args="(snd_seq_t *seq, int my_port, int dest_client, int dest_port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_disconnect_to </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>myport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dest_client</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>dest_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>simple disconnection </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>myport</em>&nbsp;</td><td>the port id as sender </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest_client</em>&nbsp;</td><td>destination client id </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest_port</em>&nbsp;</td><td>destination port id </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>Remove connection from the given sender client:port to the given destination port in the current client.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_subscribe.html#ga962385329f27f4024276756019e8a615" title="unsubscribe a connection between ports">snd_seq_unsubscribe_port()</a>, <a class="el" href="group___seq_middle.html#gab39e210c5d93e96c241644f334c6c9ca" title="simple subscription (w/o exclusive &amp; time conversion)">snd_seq_connect_to()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga692043bd9cb709b15513b06cea5bf0e8"></a><!-- doxytag: member="seqmid.h::snd_seq_parse_address" ref="ga692043bd9cb709b15513b06cea5bf0e8" args="(snd_seq_t *seq, snd_seq_addr_t *addr, const char *str)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_parse_address </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="structsnd__seq__addr__t.html">snd_seq_addr_t</a> *&nbsp;</td>
          <td class="paramname"> <em>addr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>arg</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>parse the given string and get the sequencer address </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>addr</em>&nbsp;</td><td>the address pointer to be returned </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>arg</em>&nbsp;</td><td>the string to be parsed </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>This function parses the sequencer client and port numbers from the given string. The client and port tokes are separated by either colon or period, e.g. 128:1. When <em>seq</em> is not NULL, the function accepts also a client name not only digit numbers. </p>

</div>
</div>
<a class="anchor" id="gae90243ea4d4e534bbca2b3965ff8efe9"></a><!-- doxytag: member="seqmid.h::snd_seq_reset_pool_input" ref="gae90243ea4d4e534bbca2b3965ff8efe9" args="(snd_seq_t *seq)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_reset_pool_input </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>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>reset client input pool </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>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>So far, this works identically like <a class="el" href="group___seq_event.html#ga6f8a93aaa55cdbff67e264fd5357de0e" title="clear input buffer and and remove events in sequencer queue">snd_seq_drop_input()</a>. </p>

</div>
</div>
<a class="anchor" id="ga49d2acf57c4493a95eaaa19d8199f6f2"></a><!-- doxytag: member="seqmid.h::snd_seq_reset_pool_output" ref="ga49d2acf57c4493a95eaaa19d8199f6f2" args="(snd_seq_t *seq)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_reset_pool_output </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>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>reset client output pool </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>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>So far, this works identically like <a class="el" href="group___seq_event.html#gae42e855dcb4745bdc78efe313d49a0ef" title="remove all events on output buffer">snd_seq_drop_output()</a>. </p>

</div>
</div>
<a class="anchor" id="ga888bf17bbc8141d1624f7bbef52dddce"></a><!-- doxytag: member="seqmid.h::snd_seq_set_client_event_filter" ref="ga888bf17bbc8141d1624f7bbef52dddce" args="(snd_seq_t *seq, int event_type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_client_event_filter </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>event_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>add client event filter </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>event_type</em>&nbsp;</td><td>event type to be added </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_client.html#ga109f62fb356c322533ddde4a6ce2c587" title="set the current client information">snd_seq_set_client_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="gaec3acab3bfb3df3f0c9ccc4903570b9d"></a><!-- doxytag: member="seqmid.h::snd_seq_set_client_name" ref="gaec3acab3bfb3df3f0c9ccc4903570b9d" args="(snd_seq_t *seq, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_client_name </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">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 client name </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>name</em>&nbsp;</td><td>name string </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_client.html#ga109f62fb356c322533ddde4a6ce2c587" title="set the current client information">snd_seq_set_client_info()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga1344c7aadb847bd409093c179557732d"></a><!-- doxytag: member="seqmid.h::snd_seq_set_client_pool_input" ref="ga1344c7aadb847bd409093c179557732d" args="(snd_seq_t *seq, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_client_pool_input </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">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>change the input pool size of the given 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>size</em>&nbsp;</td><td>input pool size </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_client.html#ga076635492cecbf740302c97a4a84ea07" title="set the pool information">snd_seq_set_client_pool()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga38e40d84154122798c9fad8e56c60a0f"></a><!-- doxytag: member="seqmid.h::snd_seq_set_client_pool_output" ref="ga38e40d84154122798c9fad8e56c60a0f" args="(snd_seq_t *seq, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_client_pool_output </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">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>change the output pool size of the given 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>size</em>&nbsp;</td><td>output pool size </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_client.html#ga076635492cecbf740302c97a4a84ea07" title="set the pool information">snd_seq_set_client_pool()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga597d2417e0fd512f56d31464cc2ea7d7"></a><!-- doxytag: member="seqmid.h::snd_seq_set_client_pool_output_room" ref="ga597d2417e0fd512f56d31464cc2ea7d7" args="(snd_seq_t *seq, size_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_set_client_pool_output_room </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">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>change the output room size of the given 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>size</em>&nbsp;</td><td>output room size </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_client.html#ga076635492cecbf740302c97a4a84ea07" title="set the pool information">snd_seq_set_client_pool()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ga732ad887b457771b7db47908186e8cce"></a><!-- doxytag: member="seqmid.h::snd_seq_sync_output_queue" ref="ga732ad887b457771b7db47908186e8cce" args="(snd_seq_t *seq)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int snd_seq_sync_output_queue </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>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>wait until all events are processed </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>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 on success or negative error code</dd></dl>
<p>This function waits until all events of this client are processed.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group___seq_event.html#ga64a0ed5488504ef91b5b6b92172bc0aa" title="drain output buffer to sequencer">snd_seq_drain_output()</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 Tue Apr 27 13:29:08 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>