<!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>Timer Interface</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>Timer Interface</h1><table border=0 cellpadding=0 cellspacing=0> <tr><td></td></tr> <tr><td colspan=2><br><h2>Data Structures</h2></td></tr> <tr><td nowrap align=right valign=top>struct </td><td valign=bottom><a class="el" href="struct__snd__timer__read.html">_snd_timer_read</a></td></tr> <tr><td colspan=2><br><h2>Defines</h2></td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a69">SND_TIMER_DLSYM_VERSION</a> _dlsym_timer_001</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a70">SND_TIMER_QUERY_DLSYM_VERSION</a> _dlsym_timer_query_001</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a71">SND_TIMER_GLOBAL_SYSTEM</a> 0</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a72">SND_TIMER_GLOBAL_RTC</a> 1</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a73">SND_TIMER_OPEN_NONBLOCK</a> 0x0001</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a74">snd_timer_id_alloca</a>(ptr) do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *) alloca(snd_timer_id_sizeof()); memset(*ptr, 0, snd_timer_id_sizeof()); } while (0)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a75">snd_timer_info_alloca</a>(ptr) do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *) alloca(snd_timer_info_sizeof()); memset(*ptr, 0, snd_timer_info_sizeof()); } while (0)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a76">snd_timer_params_alloca</a>(ptr) do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *) alloca(snd_timer_params_sizeof()); memset(*ptr, 0, snd_timer_params_sizeof()); } while (0)</td></tr> <tr><td nowrap align=right valign=top>#define </td><td valign=bottom><a class="el" href="group___timer.html#a77">snd_timer_status_alloca</a>(ptr) do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *) alloca(snd_timer_status_sizeof()); memset(*ptr, 0, snd_timer_status_sizeof()); } while (0)</td></tr> <tr><td colspan=2><br><h2>Typedefs</h2></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer_id </td><td valign=bottom><a class="el" href="group___timer.html#a0">snd_timer_id_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer_info </td><td valign=bottom><a class="el" href="group___timer.html#a1">snd_timer_info_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer_params </td><td valign=bottom><a class="el" href="group___timer.html#a2">snd_timer_params_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer_status </td><td valign=bottom><a class="el" href="group___timer.html#a3">snd_timer_status_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef <a class="el" href="struct__snd__timer__read.html">_snd_timer_read</a> </td><td valign=bottom><a class="el" href="group___timer.html#a4">snd_timer_read_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef enum <a class="el" href="group___timer.html#a78">_snd_timer_class</a> </td><td valign=bottom><a class="el" href="group___timer.html#a5">snd_timer_class_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef enum <a class="el" href="group___timer.html#a79">_snd_timer_slave_class</a> </td><td valign=bottom><a class="el" href="group___timer.html#a6">snd_timer_slave_class_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef enum <a class="el" href="group___timer.html#a80">_snd_timer_type</a> </td><td valign=bottom><a class="el" href="group___timer.html#a7">snd_timer_type_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer_query </td><td valign=bottom><a class="el" href="group___timer.html#a8">snd_timer_query_t</a></td></tr> <tr><td nowrap align=right valign=top>typedef _snd_timer </td><td valign=bottom><a class="el" href="group___timer.html#a9">snd_timer_t</a></td></tr> <tr><td colspan=2><br><h2>Enumerations</h2></td></tr> <tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group___timer.html#a78">_snd_timer_class</a> { <br> <a class="el" href="group___timer.html#a78a19">SND_TIMER_CLASS_NONE</a> = -1, <a class="el" href="group___timer.html#a78a20">SND_TIMER_CLASS_SLAVE</a> = 0, <a class="el" href="group___timer.html#a78a21">SND_TIMER_CLASS_GLOBAL</a>, <a class="el" href="group___timer.html#a78a22">SND_TIMER_CLASS_CARD</a>, <br> <a class="el" href="group___timer.html#a78a23">SND_TIMER_CLASS_PCM</a>, <a class="el" href="group___timer.html#a78a24">SND_TIMER_CLASS_LAST</a> = SND_TIMER_CLASS_PCM <br> }</td></tr> <tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group___timer.html#a79">_snd_timer_slave_class</a> { <br> <a class="el" href="group___timer.html#a79a25">SND_TIMER_SCLASS_NONE</a> = 0, <a class="el" href="group___timer.html#a79a26">SND_TIMER_SCLASS_APPLICATION</a>, <a class="el" href="group___timer.html#a79a27">SND_TIMER_SCLASS_SEQUENCER</a>, <a class="el" href="group___timer.html#a79a28">SND_TIMER_SCLASS_OSS_SEQUENCER</a>, <br> <a class="el" href="group___timer.html#a79a29">SND_TIMER_SCLASS_LAST</a> = SND_TIMER_SCLASS_OSS_SEQUENCER <br> }</td></tr> <tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="group___timer.html#a80">_snd_timer_type</a> { <a class="el" href="group___timer.html#a80a30">SND_TIMER_TYPE_HW</a> = 0, <a class="el" href="group___timer.html#a80a31">SND_TIMER_TYPE_SHM</a>, <a class="el" href="group___timer.html#a80a32">SND_TIMER_TYPE_INET</a> }</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="group___timer.html#a10">snd_timer_query_open</a> (<a class="el" href="group___timer.html#a8">snd_timer_query_t</a> **handle, const char *name, int mode)</td></tr> <tr><td> </td><td><font size=-1><em>Opens a new connection to the timer query interface.</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="group___timer.html#a11">snd_timer_query_open_lconf</a> (<a class="el" href="group___timer.html#a8">snd_timer_query_t</a> **handle, 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 timer query interface using local configuration.</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="group___timer.html#a12">snd_timer_query_close</a> (<a class="el" href="group___timer.html#a8">snd_timer_query_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>close timer query handle</em> <a href="#a12"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a13">snd_timer_query_next_device</a> (<a class="el" href="group___timer.html#a8">snd_timer_query_t</a> *handle, <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *tid)</td></tr> <tr><td> </td><td><font size=-1><em>obtain the next timer identification</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="group___timer.html#a14">snd_timer_open</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> **handle, const char *name, int mode)</td></tr> <tr><td> </td><td><font size=-1><em>Opens a new connection to the timer interface.</em> <a href="#a14"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a15">snd_timer_open_lconf</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> **handle, 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 timer interface using local configuration.</em> <a href="#a15"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a16">snd_timer_close</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>close timer handle</em> <a href="#a16"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a17">snd_timer_poll_descriptors_count</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>get count of poll descriptors for timer handle</em> <a href="#a17"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a18">snd_timer_poll_descriptors</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle, struct pollfd *pfds, unsigned int space)</td></tr> <tr><td> </td><td><font size=-1><em>get poll descriptors</em> <a href="#a18"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a19">snd_timer_poll_descriptors_revents</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *timer, 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="#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="group___timer.html#a20">snd_timer_info</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle, <a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *timer)</td></tr> <tr><td> </td><td><font size=-1><em>get information about timer handle</em> <a href="#a20"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a21">snd_timer_params</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle, <a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>set parameters for timer handle</em> <a href="#a21"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a22">snd_timer_status</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle, <a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get status from timer handle</em> <a href="#a22"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a23">snd_timer_start</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>start the timer</em> <a href="#a23"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a24">snd_timer_stop</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>stop the timer</em> <a href="#a24"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a25">snd_timer_continue</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle)</td></tr> <tr><td> </td><td><font size=-1><em>continue the timer</em> <a href="#a25"></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="group___timer.html#a26">snd_timer_read</a> (<a class="el" href="group___timer.html#a9">snd_timer_t</a> *handle, void *buffer, size_t size)</td></tr> <tr><td> </td><td><font size=-1><em>read bytes using timer handle</em> <a href="#a26"></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="group___timer.html#a27">snd_timer_id_sizeof</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_timer_id_t structure in bytes</em> <a href="#a27"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a28">snd_timer_id_malloc</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> **ptr)</td></tr> <tr><td> </td><td><font size=-1><em>allocate a new snd_timer_id_t structure</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="group___timer.html#a29">snd_timer_id_free</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *obj)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_timer_id_t structure</em> <a href="#a29"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a30">snd_timer_id_copy</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *dst, const <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_timer_id_t structure to another</em> <a href="#a30"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a31">snd_timer_id_set_class</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id, int dev_class)</td></tr> <tr><td> </td><td><font size=-1><em>set timer class</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="group___timer.html#a32">snd_timer_id_get_class</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id)</td></tr> <tr><td> </td><td><font size=-1><em>get timer class</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="group___timer.html#a33">snd_timer_id_set_sclass</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id, int dev_sclass)</td></tr> <tr><td> </td><td><font size=-1><em>set timer sub-class</em> <a href="#a33"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a34">snd_timer_id_get_sclass</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id)</td></tr> <tr><td> </td><td><font size=-1><em>get timer sub-class</em> <a href="#a34"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a35">snd_timer_id_set_card</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id, int card)</td></tr> <tr><td> </td><td><font size=-1><em>set timer card</em> <a href="#a35"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a36">snd_timer_id_get_card</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id)</td></tr> <tr><td> </td><td><font size=-1><em>get timer card</em> <a href="#a36"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a37">snd_timer_id_set_device</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id, int device)</td></tr> <tr><td> </td><td><font size=-1><em>set timer device</em> <a href="#a37"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a38">snd_timer_id_get_device</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id)</td></tr> <tr><td> </td><td><font size=-1><em>get timer device</em> <a href="#a38"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a39">snd_timer_id_set_subdevice</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id, int subdevice)</td></tr> <tr><td> </td><td><font size=-1><em>set timer subdevice</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="group___timer.html#a40">snd_timer_id_get_subdevice</a> (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *id)</td></tr> <tr><td> </td><td><font size=-1><em>get timer subdevice</em> <a href="#a40"></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="group___timer.html#a41">snd_timer_info_sizeof</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_timer_info_t structure in bytes</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="group___timer.html#a42">snd_timer_info_malloc</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> **ptr)</td></tr> <tr><td> </td><td><font size=-1><em>allocate a new snd_timer_info_t structure</em> <a href="#a42"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a43">snd_timer_info_free</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *obj)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_timer_info_t structure</em> <a href="#a43"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a44">snd_timer_info_copy</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *dst, const <a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_timer_info_t structure to another</em> <a href="#a44"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a45">snd_timer_info_is_slave</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>determine, if timer is slave</em> <a href="#a45"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a46">snd_timer_info_get_card</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get timer card</em> <a href="#a46"></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="group___timer.html#a47">snd_timer_info_get_id</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get timer id</em> <a href="#a47"></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="group___timer.html#a48">snd_timer_info_get_name</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get timer name</em> <a href="#a48"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a49">snd_timer_info_get_ticks</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get maximum timer ticks</em> <a href="#a49"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a50">snd_timer_info_get_resolution</a> (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *info)</td></tr> <tr><td> </td><td><font size=-1><em>get timer resolution in us</em> <a href="#a50"></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="group___timer.html#a51">snd_timer_params_sizeof</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_timer_params_t structure in bytes</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="group___timer.html#a52">snd_timer_params_malloc</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> **ptr)</td></tr> <tr><td> </td><td><font size=-1><em>allocate a new snd_timer_params_t structure</em> <a href="#a52"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a53">snd_timer_params_free</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *obj)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_timer_params_t structure</em> <a href="#a53"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a54">snd_timer_params_copy</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *dst, const <a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_timer_params_t structure to another</em> <a href="#a54"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a55">snd_timer_params_set_auto_start</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params, int auto_start)</td></tr> <tr><td> </td><td><font size=-1><em>set timer auto start</em> <a href="#a55"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a56">snd_timer_params_set_ticks</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params, long ticks)</td></tr> <tr><td> </td><td><font size=-1><em>set timer ticks</em> <a href="#a56"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a57">snd_timer_params_get_ticks</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get timer ticks</em> <a href="#a57"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a58">snd_timer_params_set_queue_size</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params, long queue_size)</td></tr> <tr><td> </td><td><font size=-1><em>set timer queue size (32-1024)</em> <a href="#a58"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a59">snd_timer_params_get_queue_size</a> (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *params)</td></tr> <tr><td> </td><td><font size=-1><em>get queue size</em> <a href="#a59"></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="group___timer.html#a60">snd_timer_status_sizeof</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>get size of the snd_timer_status_t structure in bytes</em> <a href="#a60"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___timer.html#a61">snd_timer_status_malloc</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> **ptr)</td></tr> <tr><td> </td><td><font size=-1><em>allocate a new snd_timer_status_t structure</em> <a href="#a61"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a62">snd_timer_status_free</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *obj)</td></tr> <tr><td> </td><td><font size=-1><em>frees the snd_timer_status_t structure</em> <a href="#a62"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="group___timer.html#a63">snd_timer_status_copy</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *dst, const <a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *src)</td></tr> <tr><td> </td><td><font size=-1><em>copy one snd_timer_status_t structure to another</em> <a href="#a63"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>timeval </td><td valign=bottom><a class="el" href="group___timer.html#a64">snd_timer_status_get_timestamp</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get timestamp</em> <a href="#a64"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a65">snd_timer_status_get_resolution</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get resolution in us</em> <a href="#a65"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a66">snd_timer_status_get_lost</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get master tick lost count</em> <a href="#a66"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a67">snd_timer_status_get_overrun</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get overrun count</em> <a href="#a67"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>long </td><td valign=bottom><a class="el" href="group___timer.html#a68">snd_timer_status_get_queue</a> (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *status)</td></tr> <tr><td> </td><td><font size=-1><em>get count of used queue elements</em> <a href="#a68"></a><em></em></font><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Timer Interface. See <a href="timer.html#timer">Timer interface</a> page for more details. <hr><h2>Define Documentation</h2> <a name="a69" doxytag="timer.h::SND_TIMER_DLSYM_VERSION"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define SND_TIMER_DLSYM_VERSION _dlsym_timer_001 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> dlsym version for interface entry callback </td> </tr> </table> <a name="a72" doxytag="timer.h::SND_TIMER_GLOBAL_RTC"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define SND_TIMER_GLOBAL_RTC 1 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> global timer - RTC </td> </tr> </table> <a name="a71" doxytag="timer.h::SND_TIMER_GLOBAL_SYSTEM"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define SND_TIMER_GLOBAL_SYSTEM 0 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> global timer - system </td> </tr> </table> <a name="a74" doxytag="timer.h::snd_timer_id_alloca"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define snd_timer_id_alloca</td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">ptr </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap> do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a0">snd_timer_id_t</a> *) alloca(snd_timer_id_sizeof()); memset(*ptr, 0, snd_timer_id_sizeof()); } while (0) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> container on stack <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a11">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a75" doxytag="timer.h::snd_timer_info_alloca"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define snd_timer_info_alloca</td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">ptr </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap> do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a1">snd_timer_info_t</a> *) alloca(snd_timer_info_sizeof()); memset(*ptr, 0, snd_timer_info_sizeof()); } while (0) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate <a class="el" href="group___timer.html#a1">snd_timer_info_t</a> container on stack <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a12">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a73" doxytag="timer.h::SND_TIMER_OPEN_NONBLOCK"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define SND_TIMER_OPEN_NONBLOCK 0x0001 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer open mode flag - non-blocking behaviour </td> </tr> </table> <a name="a76" doxytag="timer.h::snd_timer_params_alloca"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define snd_timer_params_alloca</td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">ptr </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap> do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a2">snd_timer_params_t</a> *) alloca(snd_timer_params_sizeof()); memset(*ptr, 0, snd_timer_params_sizeof()); } while (0) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate <a class="el" href="group___timer.html#a2">snd_timer_params_t</a> container on stack <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a13">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a70" doxytag="timer.h::SND_TIMER_QUERY_DLSYM_VERSION"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define SND_TIMER_QUERY_DLSYM_VERSION _dlsym_timer_query_001 </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> dlsym version for interface entry callback </td> </tr> </table> <a name="a77" doxytag="timer.h::snd_timer_status_alloca"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> #define snd_timer_status_alloca</td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">ptr </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap> do { assert(ptr); *ptr = (<a class="el" href="group___timer.html#a3">snd_timer_status_t</a> *) alloca(snd_timer_status_sizeof()); memset(*ptr, 0, snd_timer_status_sizeof()); } while (0) </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> allocate <a class="el" href="group___timer.html#a3">snd_timer_status_t</a> container on stack <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a0">/test/timer.c</a>.</dl> </td> </tr> </table> <hr><h2>Typedef Documentation</h2> <a name="a5" doxytag="timer.h::snd_timer_class_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef enum <a class="el" href="group___timer.html#a78">_snd_timer_class</a> snd_timer_class_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer master class </td> </tr> </table> <a name="a0" doxytag="timer.h::snd_timer_id_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer_id snd_timer_id_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer identification structure </td> </tr> </table> <a name="a1" doxytag="timer.h::snd_timer_info_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer_info snd_timer_info_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer info structure </td> </tr> </table> <a name="a2" doxytag="timer.h::snd_timer_params_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer_params snd_timer_params_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer params structure </td> </tr> </table> <a name="a8" doxytag="timer.h::snd_timer_query_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer_query snd_timer_query_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer query handle </td> </tr> </table> <a name="a4" doxytag="timer.h::snd_timer_read_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct <a class="el" href="struct__snd__timer__read.html">_snd_timer_read</a> snd_timer_read_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer read structure </td> </tr> </table> <a name="a6" doxytag="timer.h::snd_timer_slave_class_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef enum <a class="el" href="group___timer.html#a79">_snd_timer_slave_class</a> snd_timer_slave_class_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer slave class </td> </tr> </table> <a name="a3" doxytag="timer.h::snd_timer_status_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer_status snd_timer_status_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer status structure </td> </tr> </table> <a name="a9" doxytag="timer.h::snd_timer_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef struct _snd_timer snd_timer_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer handle </td> </tr> </table> <a name="a7" doxytag="timer.h::snd_timer_type_t"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> typedef enum <a class="el" href="group___timer.html#a80">_snd_timer_type</a> snd_timer_type_t </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer handle type </td> </tr> </table> <hr><h2>Enumeration Type Documentation</h2> <a name="a78" doxytag="timer.h::_snd_timer_class"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> enum _snd_timer_class </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer master class <dl compact><dt><b>Enumeration values: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em><a name="a78a19" doxytag="SND_TIMER_CLASS_NONE"></a><em>SND_TIMER_CLASS_NONE</em></em> </td><td> invalid </td></tr> <tr><td valign=top><em><a name="a78a20" doxytag="SND_TIMER_CLASS_SLAVE"></a><em>SND_TIMER_CLASS_SLAVE</em></em> </td><td> slave timer </td></tr> <tr><td valign=top><em><a name="a78a21" doxytag="SND_TIMER_CLASS_GLOBAL"></a><em>SND_TIMER_CLASS_GLOBAL</em></em> </td><td> global timer </td></tr> <tr><td valign=top><em><a name="a78a22" doxytag="SND_TIMER_CLASS_CARD"></a><em>SND_TIMER_CLASS_CARD</em></em> </td><td> card timer </td></tr> <tr><td valign=top><em><a name="a78a23" doxytag="SND_TIMER_CLASS_PCM"></a><em>SND_TIMER_CLASS_PCM</em></em> </td><td> PCM timer </td></tr> <tr><td valign=top><em><a name="a78a24" doxytag="SND_TIMER_CLASS_LAST"></a><em>SND_TIMER_CLASS_LAST</em></em> </td><td> last timer </td></tr> </table> </dl> </td> </tr> </table> <a name="a79" doxytag="timer.h::_snd_timer_slave_class"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> enum _snd_timer_slave_class </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer slave class <dl compact><dt><b>Enumeration values: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em><a name="a79a25" doxytag="SND_TIMER_SCLASS_NONE"></a><em>SND_TIMER_SCLASS_NONE</em></em> </td><td> none </td></tr> <tr><td valign=top><em><a name="a79a26" doxytag="SND_TIMER_SCLASS_APPLICATION"></a><em>SND_TIMER_SCLASS_APPLICATION</em></em> </td><td> for internal use </td></tr> <tr><td valign=top><em><a name="a79a27" doxytag="SND_TIMER_SCLASS_SEQUENCER"></a><em>SND_TIMER_SCLASS_SEQUENCER</em></em> </td><td> sequencer timer </td></tr> <tr><td valign=top><em><a name="a79a28" doxytag="SND_TIMER_SCLASS_OSS_SEQUENCER"></a><em>SND_TIMER_SCLASS_OSS_SEQUENCER</em></em> </td><td> OSS sequencer timer </td></tr> <tr><td valign=top><em><a name="a79a29" doxytag="SND_TIMER_SCLASS_LAST"></a><em>SND_TIMER_SCLASS_LAST</em></em> </td><td> last slave timer </td></tr> </table> </dl> </td> </tr> </table> <a name="a80" doxytag="timer.h::_snd_timer_type"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> enum _snd_timer_type </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> timer handle type <dl compact><dt><b>Enumeration values: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em><a name="a80a30" doxytag="SND_TIMER_TYPE_HW"></a><em>SND_TIMER_TYPE_HW</em></em> </td><td> Kernel level HwDep </td></tr> <tr><td valign=top><em><a name="a80a31" doxytag="SND_TIMER_TYPE_SHM"></a><em>SND_TIMER_TYPE_SHM</em></em> </td><td> Shared memory client timer (not yet implemented) </td></tr> <tr><td valign=top><em><a name="a80a32" doxytag="SND_TIMER_TYPE_INET"></a><em>SND_TIMER_TYPE_INET</em></em> </td><td> INET client timer (not yet implemented) </td></tr> </table> </dl> </td> </tr> </table> <hr><h2>Function Documentation</h2> <a name="a16" doxytag="timer.h::snd_timer_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_timer_close </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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 timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer 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 timer handle and frees all associated resources. <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a36">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a25" doxytag="timer.h::snd_timer_continue"></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_timer_continue </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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> continue the timer <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer 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="timer.h::snd_timer_id_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_timer_id_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_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___timer.html#a0">snd_timer_id_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_timer_id_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_timer_id_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_timer_id_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a29" doxytag="timer.h::snd_timer_id_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_timer_id_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_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_timer_id_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_timer_id_t structure to free</td></tr> </table> </dl>Frees the given snd_timer_id_t structure using the standard free C library function. </td> </tr> </table> <a name="a36" doxytag="timer.h::snd_timer_id_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_timer_id_get_card </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>tid</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 timer card <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 class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer card number </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a19">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a32" doxytag="timer.h::snd_timer_id_get_class"></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_timer_id_get_class </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>tid</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 timer class <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer class </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a17">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a38" doxytag="timer.h::snd_timer_id_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"> int snd_timer_id_get_device </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>tid</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 timer device <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 class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer device number </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a20">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a34" doxytag="timer.h::snd_timer_id_get_sclass"></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_timer_id_get_sclass </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>tid</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 timer sub-class <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 class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer sub-class </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a18">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a40" doxytag="timer.h::snd_timer_id_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"> int snd_timer_id_get_subdevice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>tid</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 timer subdevice <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 class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer subdevice number </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a21">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a28" doxytag="timer.h::snd_timer_id_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_timer_id_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_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_timer_id_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_timer_id_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a35" doxytag="timer.h::snd_timer_id_set_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"> void snd_timer_id_set_card </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>card</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 timer card <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> <tr><td valign=top><em>card</em> </td><td> card number </td></tr> </table> </dl> </td> </tr> </table> <a name="a31" doxytag="timer.h::snd_timer_id_set_class"></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_timer_id_set_class </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>dev_class</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 timer class <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> <tr><td valign=top><em>dev_class</em> </td><td> class of timer device </td></tr> </table> </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a15">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a37" doxytag="timer.h::snd_timer_id_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_timer_id_set_device </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>device</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 timer device <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> <tr><td valign=top><em>device</em> </td><td> device number </td></tr> </table> </dl> </td> </tr> </table> <a name="a33" doxytag="timer.h::snd_timer_id_set_sclass"></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_timer_id_set_sclass </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>dev_sclass</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 timer sub-class <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> <tr><td valign=top><em>dev_sclass</em> </td><td> sub-class of timer device </td></tr> </table> </dl> </td> </tr> </table> <a name="a39" doxytag="timer.h::snd_timer_id_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_timer_id_set_subdevice </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>subdevice</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 timer subdevice <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>tid</em> </td><td> pointer to <a class="el" href="group___timer.html#a0">snd_timer_id_t</a> structure </td></tr> <tr><td valign=top><em>subdevice</em> </td><td> subdevice number </td></tr> </table> </dl> </td> </tr> </table> <a name="a27" doxytag="timer.h::snd_timer_id_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_timer_id_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_timer_id_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_timer_id_t structure in bytes </dl> </td> </tr> </table> <a name="a20" doxytag="timer.h::snd_timer_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_timer_info </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___timer.html#a1">snd_timer_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 timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> <tr><td valign=top><em>info</em> </td><td> pointer to a snd_timer_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><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a24">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a44" doxytag="timer.h::snd_timer_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_timer_info_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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___timer.html#a1">snd_timer_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_timer_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_timer_info_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_timer_info_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a43" doxytag="timer.h::snd_timer_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_timer_info_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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_timer_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_timer_info_t structure to free</td></tr> </table> </dl>Frees the given snd_timer_info_t structure using the standard free C library function. </td> </tr> </table> <a name="a46" doxytag="timer.h::snd_timer_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_timer_info_get_card </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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 timer card <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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer card number </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a26">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a47" doxytag="timer.h::snd_timer_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_timer_info_get_id </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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 timer id <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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer id </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a27">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a48" doxytag="timer.h::snd_timer_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_timer_info_get_name </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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 timer 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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer name </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a28">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a50" doxytag="timer.h::snd_timer_info_get_resolution"></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"> long snd_timer_info_get_resolution </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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 timer resolution in us <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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer resolution </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a30">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a49" doxytag="timer.h::snd_timer_info_get_ticks"></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"> long snd_timer_info_get_ticks </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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 maximum timer ticks <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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> maximum timer ticks </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a29">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a45" doxytag="timer.h::snd_timer_info_is_slave"></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_timer_info_is_slave </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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> determine, if timer is slave <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 class="el" href="group___timer.html#a1">snd_timer_info_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> nonzero if timer is slave </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a25">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a42" doxytag="timer.h::snd_timer_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_timer_info_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a1">snd_timer_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_timer_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_timer_info_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a41" doxytag="timer.h::snd_timer_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_timer_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_timer_info_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_timer_info_t structure in bytes </dl> </td> </tr> </table> <a name="a14" doxytag="timer.h::snd_timer_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_timer_open </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> ** </td> <td class="mdname" nowrap> <em>timer</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 timer interface. <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> Returned handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>name</em> </td><td> ASCII identifier of the timer 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 timer interface specified with an ASCII identifier and mode. <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a23">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a15" doxytag="timer.h::snd_timer_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_timer_open_lconf </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> ** </td> <td class="mdname" nowrap> <em>timer</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 timer 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>timer</em> </td><td> Returned handle (NULL if not wanted) </td></tr> <tr><td valign=top><em>name</em> </td><td> ASCII identifier of the timer 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 timer interface specified with an ASCII identifier and mode. </td> </tr> </table> <a name="a21" doxytag="timer.h::snd_timer_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_timer_params </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___timer.html#a2">snd_timer_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> set parameters for timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> <tr><td valign=top><em>params</em> </td><td> pointer to a <a class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a34">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a54" doxytag="timer.h::snd_timer_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_timer_params_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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___timer.html#a2">snd_timer_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_timer_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_timer_params_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_timer_params_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a53" doxytag="timer.h::snd_timer_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_timer_params_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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_timer_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 snd_timer_params_t structure to free</td></tr> </table> </dl>Frees the given snd_timer_params_t structure using the standard free C library function. </td> </tr> </table> <a name="a59" doxytag="timer.h::snd_timer_params_get_queue_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"> long snd_timer_params_get_queue_size </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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 queue 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 class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> queue size </dl> </td> </tr> </table> <a name="a57" doxytag="timer.h::snd_timer_params_get_ticks"></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"> long snd_timer_params_get_ticks </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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 timer ticks <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 class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timer ticks </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a33">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a52" doxytag="timer.h::snd_timer_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_timer_params_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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 a new snd_timer_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_timer_params_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a55" doxytag="timer.h::snd_timer_params_set_auto_start"></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_timer_params_set_auto_start </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_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>auto_start</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 timer auto start <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 class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a31">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a58" doxytag="timer.h::snd_timer_params_set_queue_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"> void snd_timer_params_set_queue_size </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>long </td> <td class="mdname" nowrap> <em>queue_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> set timer queue size (32-1024) <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 class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a56" doxytag="timer.h::snd_timer_params_set_ticks"></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_timer_params_set_ticks </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a2">snd_timer_params_t</a> * </td> <td class="mdname" nowrap> <em>params</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>long </td> <td class="mdname" nowrap> <em>ticks</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 timer ticks <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 class="el" href="group___timer.html#a2">snd_timer_params_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a32">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a51" doxytag="timer.h::snd_timer_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_timer_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_timer_params_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_timer_params_t structure in bytes </dl> </td> </tr> </table> <a name="a18" doxytag="timer.h::snd_timer_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_timer_poll_descriptors </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</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>timer</em> </td><td> timer 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><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a9">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a17" doxytag="timer.h::snd_timer_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_timer_poll_descriptors_count </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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 timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> count of poll descriptors </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a8">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a19" doxytag="timer.h::snd_timer_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_timer_poll_descriptors_revents </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</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>timer</em> </td><td> timer 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="a12" doxytag="timer.h::snd_timer_query_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_timer_query_close </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a8">snd_timer_query_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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 timer query handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer 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 timer handle and frees all associated resources. <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a22">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a13" doxytag="timer.h::snd_timer_query_next_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"> int snd_timer_query_next_device </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a8">snd_timer_query_t</a> * </td> <td class="mdname" nowrap> <em>timer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___timer.html#a0">snd_timer_id_t</a> * </td> <td class="mdname" nowrap> <em>tid</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> obtain the next timer identification <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> <tr><td valign=top><em>tid</em> </td><td> timer identification </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code</dl>if tid->dev_class is -1, then the first device is returned if result tid->dev_class is -1, no more devices are left <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a16">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a10" doxytag="timer.h::snd_timer_query_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_timer_query_open </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a8">snd_timer_query_t</a> ** </td> <td class="mdname" nowrap> <em>timer</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 timer query interface. <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> Returned 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. <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a14">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a11" doxytag="timer.h::snd_timer_query_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_timer_query_open_lconf </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a8">snd_timer_query_t</a> ** </td> <td class="mdname" nowrap> <em>timer</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 timer query 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>timer</em> </td><td> Returned 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="a26" doxytag="timer.h::snd_timer_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_timer_read </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</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 bytes using timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> <tr><td valign=top><em>buffer</em> </td><td> buffer to store the input bytes </td></tr> <tr><td valign=top><em>size</em> </td><td> input buffer size in bytes </td></tr> </table> </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a10">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a23" doxytag="timer.h::snd_timer_start"></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_timer_start </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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> start the timer <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> 0 on success otherwise a negative error code </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a35">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a22" doxytag="timer.h::snd_timer_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_timer_status </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname" nowrap> <em>timer</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap><a class="el" href="group___timer.html#a3">snd_timer_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 from timer handle <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer handle </td></tr> <tr><td valign=top><em>status</em> </td><td> pointer to a <a class="el" href="group___timer.html#a3">snd_timer_status_t</a> 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><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a1">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a63" doxytag="timer.h::snd_timer_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_timer_status_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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___timer.html#a3">snd_timer_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_timer_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_timer_status_t structure </td></tr> <tr><td valign=top><em>src</em> </td><td> source snd_timer_status_t structure </td></tr> </table> </dl> </td> </tr> </table> <a name="a62" doxytag="timer.h::snd_timer_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_timer_status_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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_timer_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_timer_status_t structure to free</td></tr> </table> </dl>Frees the given snd_timer_status_t structure using the standard free C library function. </td> </tr> </table> <a name="a66" doxytag="timer.h::snd_timer_status_get_lost"></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"> long snd_timer_status_get_lost </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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 master tick lost count <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 class="el" href="group___timer.html#a3">snd_timer_status_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> master tick lost count </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a4">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a67" doxytag="timer.h::snd_timer_status_get_overrun"></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"> long snd_timer_status_get_overrun </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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 overrun count <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 class="el" href="group___timer.html#a3">snd_timer_status_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> overrun count </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a5">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a68" doxytag="timer.h::snd_timer_status_get_queue"></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"> long snd_timer_status_get_queue </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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 used queue elements <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 class="el" href="group___timer.html#a3">snd_timer_status_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> count of used queue elements </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a6">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a65" doxytag="timer.h::snd_timer_status_get_resolution"></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"> long snd_timer_status_get_resolution </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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 resolution in us <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 class="el" href="group___timer.html#a3">snd_timer_status_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> resolution </dl><dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="_2test_2timer_8c-example.html#a3">/test/timer.c</a>.</dl> </td> </tr> </table> <a name="a64" doxytag="timer.h::snd_timer_status_get_timestamp"></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"> struct timeval snd_timer_status_get_timestamp </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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 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 class="el" href="group___timer.html#a3">snd_timer_status_t</a> structure </td></tr> </table> </dl><dl compact><dt><b>Returns: </b></dt><dd> timestamp </dl> </td> </tr> </table> <a name="a61" doxytag="timer.h::snd_timer_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_timer_status_malloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a3">snd_timer_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> allocate a new snd_timer_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_timer_status_t structure using the standard malloc C library function. </td> </tr> </table> <a name="a60" doxytag="timer.h::snd_timer_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_timer_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_timer_status_t structure in bytes <p> <dl compact><dt><b>Returns: </b></dt><dd> size of the snd_timer_status_t structure in bytes </dl> </td> </tr> </table> <a name="a24" doxytag="timer.h::snd_timer_stop"></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_timer_stop </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group___timer.html#a9">snd_timer_t</a> * </td> <td class="mdname1" valign="top" nowrap> <em>timer</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> stop the timer <p> <dl compact><dt><b>Parameters: </b></dt><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>timer</em> </td><td> timer 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> <hr><address style="align: right;"><small>Generated on Wed Apr 2 16:06:38 2003 for ALSA project - the C library reference by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.18 </small></address> </body> </html>