<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>rawmidi.c File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.2.18 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> <a class="qindex" href="pages.html">Related Pages</a> <a class="qindex" href="examples.html">Examples</a> </center> <hr><h1>rawmidi.c File Reference</h1>RawMidi Interface. <a href="#_details">More...</a> <p> <table border=0 cellpadding=0 cellspacing=0> <tr><td></td></tr> <tr><td colspan=2><br><h2>Functions</h2></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a3">snd_rawmidi_open</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> **inputp, <a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> **outputp, const char *name, int mode)</td></tr> <tr><td> </td><td><font size=-1><em>Opens a new connection to the RawMidi interface.</em> <a href="#a3"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a4">snd_rawmidi_open_lconf</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> **inputp, <a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> **outputp, const char *name, int mode, <a class="el" href="group___config.html#a1">snd_config_t</a> *lconf)</td></tr> <tr><td> </td><td><font size=-1><em>Opens a new connection to the RawMidi interface using local configuration.</em> <a href="#a4"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a5">snd_rawmidi_close</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>close RawMidi handle</em> <a href="#a5"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a6">snd_rawmidi_name</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>get identifier of RawMidi handle</em> <a href="#a6"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="group___raw_midi.html#a5">snd_rawmidi_type_t</a> </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a7">snd_rawmidi_type</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>get type of RawMidi handle</em> <a href="#a7"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a8">snd_rawmidi_stream</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>get stream (direction) of RawMidi handle</em> <a href="#a8"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a9">snd_rawmidi_poll_descriptors_count</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>get count of poll descriptors for RawMidi handle</em> <a href="#a9"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a10">snd_rawmidi_poll_descriptors</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, struct pollfd *pfds, unsigned int space)</td></tr> <tr><td> </td><td><font size=-1><em>get poll descriptors</em> <a href="#a10"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a11">snd_rawmidi_poll_descriptors_revents</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)</td></tr> <tr><td> </td><td><font size=-1><em>get returned events from poll descriptors</em> <a href="#a11"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a12">snd_rawmidi_nonblock</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, int nonblock)</td></tr> <tr><td> </td><td><font size=-1><em>set nonblock mode</em> <a href="#a12"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a13">snd_rawmidi_info_sizeof</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_rawmidi_info_t structure in bytes</em> <a href="#a13"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a14">snd_rawmidi_info_malloc</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> **info)</td></tr> <tr><td> </td><td><font size=-1><em>allocate a new snd_rawmidi_info_t structure</em> <a href="#a14"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a15">snd_rawmidi_info_free</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_rawmidi_info_t structure</em> <a href="#a15"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a16">snd_rawmidi_info_copy</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *dst, const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_rawmidi_info_t structure to another</em> <a href="#a16"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a17">snd_rawmidi_info_get_device</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi device number</em> <a href="#a17"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a18">snd_rawmidi_info_get_subdevice</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi subdevice number</em> <a href="#a18"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a19">snd_rawmidi_info_get_stream</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi stream identification</em> <a href="#a19"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a20">snd_rawmidi_info_get_card</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi card number</em> <a href="#a20"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a21">snd_rawmidi_info_get_flags</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi flags</em> <a href="#a21"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a22">snd_rawmidi_info_get_id</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi hardware driver identifier</em> <a href="#a22"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a23">snd_rawmidi_info_get_name</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi hardware driver name</em> <a href="#a23"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>const char * </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a24">snd_rawmidi_info_get_subdevice_name</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi subdevice name</em> <a href="#a24"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a25">snd_rawmidi_info_get_subdevices_count</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi count of subdevices</em> <a href="#a25"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a26">snd_rawmidi_info_get_subdevices_avail</a> (const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi available count of subdevices</em> <a href="#a26"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a27">snd_rawmidi_info_set_device</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info, unsigned int val)</td></tr> <tr><td> </td><td><font size=-1><em>set rawmidi device number</em> <a href="#a27"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a28">snd_rawmidi_info_set_subdevice</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info, unsigned int val)</td></tr> <tr><td> </td><td><font size=-1><em>set rawmidi subdevice number</em> <a href="#a28"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a29">snd_rawmidi_info_set_stream</a> (<a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info, <a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> val)</td></tr> <tr><td> </td><td><font size=-1><em>set rawmidi stream identifier</em> <a href="#a29"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a30">snd_rawmidi_info</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get information about RawMidi handle</em> <a href="#a30"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a31">snd_rawmidi_params_sizeof</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_rawmidi_params_t structure in bytes</em> <a href="#a31"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a32">snd_rawmidi_params_malloc</a> (<a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> **params)</td></tr> <tr><td> </td><td><font size=-1><em>allocate the snd_rawmidi_params_t structure</em> <a href="#a32"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a33">snd_rawmidi_params_free</a> (<a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_rawmidi_params_t structure</em> <a href="#a33"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a34">snd_rawmidi_params_copy</a> (<a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *dst, const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_rawmidi_params_t structure to another</em> <a href="#a34"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a35">snd_rawmidi_params_set_buffer_size</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params, size_t val)</td></tr> <tr><td> </td><td><font size=-1><em>set rawmidi I/O ring buffer size</em> <a href="#a35"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a36">snd_rawmidi_params_get_buffer_size</a> (const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get rawmidi I/O ring buffer size</em> <a href="#a36"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a37">snd_rawmidi_params_set_avail_min</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params, size_t val)</td></tr> <tr><td> </td><td><font size=-1><em>set minimum available bytes in rawmidi I/O ring buffer for wakeup</em> <a href="#a37"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a38">snd_rawmidi_params_get_avail_min</a> (const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get minimum available bytes in rawmidi I/O ring buffer for wakeup</em> <a href="#a38"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a39">snd_rawmidi_params_set_no_active_sensing</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params, int val)</td></tr> <tr><td> </td><td><font size=-1><em>set no-active-sensing action on <a class="el" href="rawmidi_8c.html#a5">snd_rawmidi_close()</a></em> <a href="#a39"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a40">snd_rawmidi_params_get_no_active_sensing</a> (const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get no-active-sensing action status</em> <a href="#a40"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a41">snd_rawmidi_params</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get parameters about rawmidi stream</em> <a href="#a41"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a42">snd_rawmidi_params_current</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get current parameters about rawmidi stream</em> <a href="#a42"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a43">snd_rawmidi_status_sizeof</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_rawmidi_status_t structure in bytes</em> <a href="#a43"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a44">snd_rawmidi_status_malloc</a> (<a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> **ptr)</td></tr> <tr><td> </td><td><font size=-1><em>allocate the snd_rawmidi_status_t structure</em> <a href="#a44"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a45">snd_rawmidi_status_free</a> (<a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_rawmidi_status_t structure</em> <a href="#a45"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a46">snd_rawmidi_status_copy</a> (<a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *dst, const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_rawmidi_status_t structure to another</em> <a href="#a46"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a47">snd_rawmidi_status_get_tstamp</a> (const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *status, <a class="el" href="group___p_c_m.html#a19">snd_timestamp_t</a> *tstamp)</td></tr> <tr><td> </td><td><font size=-1><em>get the start timestamp</em> <a href="#a47"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a48">snd_rawmidi_status_get_avail</a> (const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get current available bytes in the rawmidi I/O ring buffer</em> <a href="#a48"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>size_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a49">snd_rawmidi_status_get_xruns</a> (const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get count of xruns</em> <a href="#a49"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a50">snd_rawmidi_status</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get status of rawmidi stream</em> <a href="#a50"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a51">snd_rawmidi_drop</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>drop all bytes in the rawmidi I/O ring buffer immediately</em> <a href="#a51"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a52">snd_rawmidi_drain</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi)</td></tr> <tr><td> </td><td><font size=-1><em>drain all bytes in the rawmidi I/O ring buffer</em> <a href="#a52"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>ssize_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a53">snd_rawmidi_write</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, const void *buffer, size_t size)</td></tr> <tr><td> </td><td><font size=-1><em>write MIDI bytes to MIDI stream</em> <a href="#a53"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>ssize_t </td><td valign=bottom><a class="el" href="rawmidi_8c.html#a54">snd_rawmidi_read</a> (<a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> *rawmidi, void *buffer, size_t size)</td></tr> <tr><td> </td><td><font size=-1><em>read MIDI bytes from MIDI stream</em> <a href="#a54"></a><em></em></font><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> RawMidi Interface. <p> <p> <dl compact><dt><b>Author: </b></dt><dd> Jaroslav Kysela <<a href="mailto:perex@suse.cz">perex@suse.cz</a>> , Abramo Bagnara <<a href="mailto:abramo@alsa-project.org">abramo@alsa-project.org</a>> </dl><dl compact><dt><b>Date: </b></dt><dd> 2000-2001</dl>See the <a href="rawmidi.html#rawmidi">RawMidi interface</a> page for more details. <p> <hr><h2>Function Documentation</h2> <a name="a5" doxytag="rawmidi.c::snd_rawmidi_close"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_close </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> close RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>Closes the specified RawMidi handle and frees all associated resources. </td> </tr> </table> <a name="a52" doxytag="rawmidi.c::snd_rawmidi_drain"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_drain </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> drain all bytes in the rawmidi I/O ring buffer <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>Waits until all MIDI bytes are not drained (sent) to the hardware device. </td> </tr> </table> <a name="a51" doxytag="rawmidi.c::snd_rawmidi_drop"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_drop </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> drop all bytes in the rawmidi I/O ring buffer immediately <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a30" doxytag="rawmidi.c::snd_rawmidi_info"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_info </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>info</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get information about RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure to be filled </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a16" doxytag="rawmidi.c::snd_rawmidi_info_copy"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_info_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>dst</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>src</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> copy one snd_rawmidi_info_t structure to another <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>dst</em> </td><td> destination snd_rawmidi_info_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_rawmidi_info_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a15" doxytag="rawmidi.c::snd_rawmidi_info_free"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_info_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> frees the snd_rawmidi_info_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to the snd_rawmidi_info_t structure to free</td></tr> </table> </dl>Frees the given snd_rawmidi_params_t structure using the standard free C library function. </td> </tr> </table> <a name="a20" doxytag="rawmidi.c::snd_rawmidi_info_get_card"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_info_get_card </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi card number <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi card number </dl> </td> </tr> </table> <a name="a17" doxytag="rawmidi.c::snd_rawmidi_info_get_device"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> unsigned int snd_rawmidi_info_get_device </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi device number <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi device number </dl> </td> </tr> </table> <a name="a21" doxytag="rawmidi.c::snd_rawmidi_info_get_flags"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> unsigned int snd_rawmidi_info_get_flags </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi flags <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi flags </dl> </td> </tr> </table> <a name="a22" doxytag="rawmidi.c::snd_rawmidi_info_get_id"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char* snd_rawmidi_info_get_id </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi hardware driver identifier <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi hardware driver identifier </dl> </td> </tr> </table> <a name="a23" doxytag="rawmidi.c::snd_rawmidi_info_get_name"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char* snd_rawmidi_info_get_name </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi hardware driver name <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi hardware driver name </dl> </td> </tr> </table> <a name="a19" doxytag="rawmidi.c::snd_rawmidi_info_get_stream"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> snd_rawmidi_info_get_stream </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi stream identification <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi stream identification </dl> </td> </tr> </table> <a name="a18" doxytag="rawmidi.c::snd_rawmidi_info_get_subdevice"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> unsigned int snd_rawmidi_info_get_subdevice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi subdevice number <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi subdevice number </dl> </td> </tr> </table> <a name="a24" doxytag="rawmidi.c::snd_rawmidi_info_get_subdevice_name"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char* snd_rawmidi_info_get_subdevice_name </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi subdevice name <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi subdevice name </dl> </td> </tr> </table> <a name="a26" doxytag="rawmidi.c::snd_rawmidi_info_get_subdevices_avail"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> unsigned int snd_rawmidi_info_get_subdevices_avail </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi available count of subdevices <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi available count of subdevices </dl> </td> </tr> </table> <a name="a25" doxytag="rawmidi.c::snd_rawmidi_info_get_subdevices_count"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> unsigned int snd_rawmidi_info_get_subdevices_count </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi count of subdevices <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> rawmidi count of subdevices </dl> </td> </tr> </table> <a name="a14" doxytag="rawmidi.c::snd_rawmidi_info_malloc"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_info_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> ** </td> <td class="mdname1" valign="top" nowrap> <em>info</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate a new snd_rawmidi_info_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>ptr</em> </td><td> returned pointer </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code if fails</dl>Allocates a new snd_rawmidi_params_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a27" doxytag="rawmidi.c::snd_rawmidi_info_set_device"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_info_set_device </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>info</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set rawmidi device number <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> device number </td></tr> </table> </dl> </td> </tr> </table> <a name="a29" doxytag="rawmidi.c::snd_rawmidi_info_set_stream"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_info_set_stream </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>info</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set rawmidi stream identifier <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> rawmidi stream identifier </td></tr> </table> </dl> </td> </tr> </table> <a name="a28" doxytag="rawmidi.c::snd_rawmidi_info_set_subdevice"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_info_set_subdevice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a0">snd_rawmidi_info_t</a> * </td> <td class="mdname" nowrap> <em>info</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set rawmidi subdevice number <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_rawmidi_info_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> subdevice number </td></tr> </table> </dl> </td> </tr> </table> <a name="a13" doxytag="rawmidi.c::snd_rawmidi_info_sizeof"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_info_sizeof </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get size of the snd_rawmidi_info_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_rawmidi_info_t structure in bytes </dl> </td> </tr> </table> <a name="a6" doxytag="rawmidi.c::snd_rawmidi_name"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> const char* snd_rawmidi_name </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get identifier of RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> a RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> ascii identifier of RawMidi handle</dl>Returns the ASCII identifier of given RawMidi handle. It's the same identifier specified in <a class="el" href="rawmidi_8c.html#a3">snd_rawmidi_open()</a>. </td> </tr> </table> <a name="a12" doxytag="rawmidi.c::snd_rawmidi_nonblock"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_nonblock </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>nonblock</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set nonblock mode <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>nonblock</em> </td><td> 0 = block, 1 = nonblock mode </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>The nonblock mode cannot be used when the stream is in <a class="el" href="group___raw_midi.html#a59">SND_RAWMIDI_APPEND</a> state. </td> </tr> </table> <a name="a3" doxytag="rawmidi.c::snd_rawmidi_open"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_open </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> ** </td> <td class="mdname" nowrap> <em>inputp</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> ** </td> <td class="mdname" nowrap> <em>outputp</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const char * </td> <td class="mdname" nowrap> <em>name</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>mode</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Opens a new connection to the RawMidi interface. <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>inputp</em> </td><td> Returned input handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>outputp</em> </td><td> Returned output handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>name</em> </td><td> ASCII identifier of the RawMidi handle </td></tr> <tr><td valign=top><em>mode</em> </td><td> Open mode </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>Opens a new connection to the RawMidi interface specified with an ASCII identifier and mode. </td> </tr> </table> <a name="a4" doxytag="rawmidi.c::snd_rawmidi_open_lconf"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_open_lconf </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> ** </td> <td class="mdname" nowrap> <em>inputp</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> ** </td> <td class="mdname" nowrap> <em>outputp</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const char * </td> <td class="mdname" nowrap> <em>name</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>mode</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___config.html#a1">snd_config_t</a> * </td> <td class="mdname" nowrap> <em>lconf</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Opens a new connection to the RawMidi interface using local configuration. <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>inputp</em> </td><td> Returned input handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>outputp</em> </td><td> Returned output handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>name</em> </td><td> ASCII identifier of the RawMidi handle </td></tr> <tr><td valign=top><em>mode</em> </td><td> Open mode </td></tr> <tr><td valign=top><em>lconf</em> </td><td> Local configuration </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>Opens a new connection to the RawMidi interface specified with an ASCII identifier and mode. </td> </tr> </table> <a name="a41" doxytag="rawmidi.c::snd_rawmidi_params"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get parameters about rawmidi stream <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to a snd_rawmidi_params_t structure to be filled </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a34" doxytag="rawmidi.c::snd_rawmidi_params_copy"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_params_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>dst</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>src</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> copy one snd_rawmidi_params_t structure to another <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>dst</em> </td><td> destination snd_rawmidi_params_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_rawmidi_params_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a42" doxytag="rawmidi.c::snd_rawmidi_params_current"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_current </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get current parameters about rawmidi stream <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to a snd_rawmidi_params_t structure to be filled </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a33" doxytag="rawmidi.c::snd_rawmidi_params_free"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_params_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>params</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> frees the snd_rawmidi_params_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>params</em> </td><td> pointer to the <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> structure to free</td></tr> </table> </dl>Frees the given snd_rawmidi_params_t structure using the standard free C library function. </td> </tr> </table> <a name="a38" doxytag="rawmidi.c::snd_rawmidi_params_get_avail_min"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_params_get_avail_min </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>params</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get minimum available bytes in rawmidi I/O ring buffer for wakeup <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>params</em> </td><td> pointer to snd_rawmidi_params_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> minimum available bytes </dl> </td> </tr> </table> <a name="a36" doxytag="rawmidi.c::snd_rawmidi_params_get_buffer_size"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_params_get_buffer_size </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>params</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get rawmidi I/O ring buffer size <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>params</em> </td><td> pointer to a snd_rawmidi_params_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> size of rawmidi I/O ring buffer in bytes </dl> </td> </tr> </table> <a name="a40" doxytag="rawmidi.c::snd_rawmidi_params_get_no_active_sensing"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_get_no_active_sensing </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>params</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get no-active-sensing action status <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>params</em> </td><td> pointer to snd_rawmidi_params_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> the current status (0 = enable, 1 = disable the active sensing message) </dl> </td> </tr> </table> <a name="a32" doxytag="rawmidi.c::snd_rawmidi_params_malloc"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> ** </td> <td class="mdname1" valign="top" nowrap> <em>params</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate the snd_rawmidi_params_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>ptr</em> </td><td> returned pointer </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code if fails</dl>Allocates a new snd_rawmidi_params_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a37" doxytag="rawmidi.c::snd_rawmidi_params_set_avail_min"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_set_avail_min </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>size_t </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set minimum available bytes in rawmidi I/O ring buffer for wakeup <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to a snd_rawmidi_params_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> desired value </td></tr> </table> </dl> </td> </tr> </table> <a name="a35" doxytag="rawmidi.c::snd_rawmidi_params_set_buffer_size"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_set_buffer_size </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>size_t </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set rawmidi I/O ring buffer size <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to a snd_rawmidi_params_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> size in bytes </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a39" doxytag="rawmidi.c::snd_rawmidi_params_set_no_active_sensing"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_params_set_no_active_sensing </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a1">snd_rawmidi_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>val</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> set no-active-sensing action on <a class="el" href="rawmidi_8c.html#a5">snd_rawmidi_close()</a> <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to snd_rawmidi_params_t structure </td></tr> <tr><td valign=top><em>val</em> </td><td> value: 0 = enable to send the active sensing message, 1 = disable </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a31" doxytag="rawmidi.c::snd_rawmidi_params_sizeof"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_params_sizeof </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get size of the snd_rawmidi_params_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_rawmidi_params_t structure in bytes </dl> </td> </tr> </table> <a name="a10" doxytag="rawmidi.c::snd_rawmidi_poll_descriptors"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_poll_descriptors </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>struct pollfd * </td> <td class="mdname" nowrap> <em>pfds</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>space</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get poll descriptors <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>pfds</em> </td><td> array of poll descriptors </td></tr> <tr><td valign=top><em>space</em> </td><td> space in the poll descriptor array </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> count of filled descriptors </dl> </td> </tr> </table> <a name="a9" doxytag="rawmidi.c::snd_rawmidi_poll_descriptors_count"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_poll_descriptors_count </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get count of poll descriptors for RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> count of poll descriptors </dl> </td> </tr> </table> <a name="a11" doxytag="rawmidi.c::snd_rawmidi_poll_descriptors_revents"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_poll_descriptors_revents </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>struct pollfd * </td> <td class="mdname" nowrap> <em>pfds</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned int </td> <td class="mdname" nowrap> <em>nfds</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>unsigned short * </td> <td class="mdname" nowrap> <em>revents</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get returned events from poll descriptors <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>pcm</em> </td><td> rawmidi RawMidi handle </td></tr> <tr><td valign=top><em>pfds</em> </td><td> array of poll descriptors </td></tr> <tr><td valign=top><em>nfds</em> </td><td> count of poll descriptors </td></tr> <tr><td valign=top><em>revents</em> </td><td> returned events </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> zero if success, otherwise a negative error code </dl> </td> </tr> </table> <a name="a54" doxytag="rawmidi.c::snd_rawmidi_read"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> ssize_t snd_rawmidi_read </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>void * </td> <td class="mdname" nowrap> <em>buffer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>size_t </td> <td class="mdname" nowrap> <em>size</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> read MIDI bytes from MIDI stream <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>buffer</em> </td><td> buffer to store the input MIDI bytes </td></tr> <tr><td valign=top><em>size</em> </td><td> input buffer size in bytes </td></tr> </table> </dl> </td> </tr> </table> <a name="a50" doxytag="rawmidi.c::snd_rawmidi_status"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_status </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname" nowrap> <em>status</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get status of rawmidi stream <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>status</em> </td><td> pointer to a snd_rawmidi_status_t structure to be filled </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl> </td> </tr> </table> <a name="a46" doxytag="rawmidi.c::snd_rawmidi_status_copy"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_status_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname" nowrap> <em>dst</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname" nowrap> <em>src</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> copy one snd_rawmidi_status_t structure to another <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>dst</em> </td><td> destination snd_rawmidi_status_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_rawmidi_status_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a45" doxytag="rawmidi.c::snd_rawmidi_status_free"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_status_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>status</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> frees the snd_rawmidi_status_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>status</em> </td><td> pointer to the snd_rawmidi_status_t structure to free</td></tr> </table> </dl>Frees the given snd_rawmidi_status_t structure using the standard free C library function. </td> </tr> </table> <a name="a48" doxytag="rawmidi.c::snd_rawmidi_status_get_avail"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_status_get_avail </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>status</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get current available bytes in the rawmidi I/O ring buffer <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>status</em> </td><td> pointer to a snd_rawmidi_status_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> current available bytes in the rawmidi I/O ring buffer </dl> </td> </tr> </table> <a name="a47" doxytag="rawmidi.c::snd_rawmidi_status_get_tstamp"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void snd_rawmidi_status_get_tstamp </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname" nowrap> <em>status</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___p_c_m.html#a19">snd_timestamp_t</a> * </td> <td class="mdname" nowrap> <em>tstamp</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get the start timestamp <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>status</em> </td><td> pointer to a snd_rawmidi_status_t structure </td></tr> <tr><td valign=top><em>tstamp</em> </td><td> returned timestamp value </td></tr> </table> </dl> </td> </tr> </table> <a name="a49" doxytag="rawmidi.c::snd_rawmidi_status_get_xruns"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_status_get_xruns </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>status</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get count of xruns <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>status</em> </td><td> pointer to a snd_rawmidi_status_t structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> count of xruns </dl> </td> </tr> </table> <a name="a44" doxytag="rawmidi.c::snd_rawmidi_status_malloc"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int snd_rawmidi_status_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a2">snd_rawmidi_status_t</a> ** </td> <td class="mdname1" valign="top" nowrap> <em>ptr</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate the snd_rawmidi_status_t structure <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>ptr</em> </td><td> returned pointer </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code if fails</dl>Allocates a new snd_rawmidi_status_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a43" doxytag="rawmidi.c::snd_rawmidi_status_sizeof"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> size_t snd_rawmidi_status_sizeof </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get size of the snd_rawmidi_status_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_rawmidi_status_t structure in bytes </dl> </td> </tr> </table> <a name="a8" doxytag="rawmidi.c::snd_rawmidi_stream"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> snd_rawmidi_stream </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get stream (direction) of RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> a RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> stream of RawMidi handle</dl>Returns the stream <a class="el" href="group___raw_midi.html#a3">snd_rawmidi_stream_t</a> of given RawMidi handle. </td> </tr> </table> <a name="a7" doxytag="rawmidi.c::snd_rawmidi_type"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="group___raw_midi.html#a5">snd_rawmidi_type_t</a> snd_rawmidi_type </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>rawmidi</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> get type of RawMidi handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> a RawMidi handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> type of RawMidi handle</dl>Returns the type <a class="el" href="group___raw_midi.html#a5">snd_rawmidi_type_t</a> of given RawMidi handle. </td> </tr> </table> <a name="a53" doxytag="rawmidi.c::snd_rawmidi_write"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> ssize_t snd_rawmidi_write </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___raw_midi.html#a4">snd_rawmidi_t</a> * </td> <td class="mdname" nowrap> <em>rawmidi</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>const void * </td> <td class="mdname" nowrap> <em>buffer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>size_t </td> <td class="mdname" nowrap> <em>size</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> write MIDI bytes to MIDI stream <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>rawmidi</em> </td><td> RawMidi handle </td></tr> <tr><td valign=top><em>buffer</em> </td><td> buffer containing MIDI bytes </td></tr> <tr><td valign=top><em>size</em> </td><td> output buffer size in bytes </td></tr> </table> </dl> </td> </tr> </table> <hr><address style="align: right;"><small>Generated on Thu Feb 20 16:45:46 2003 for ALSA project - the C library reference by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address> </body> </html>