<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>PulseAudio: timeval.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.5 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="classes.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> </div> <div class="contents"> <h1>timeval.h File Reference</h1>Utility functions for handling timeval calculations. <a href="#_details">More...</a> <p> <p> <a href="timeval_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#dc226d28cef9e36fca56c355a03903f5">PA_MSEC_PER_SEC</a> 1000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#65605026fb393422df650916ef7e3e32">PA_USEC_PER_SEC</a> 1000000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#98cd21cdaba8d04b078ad3f4e8139a11">PA_NSEC_PER_SEC</a> 1000000000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#13ded4b857d4148545f7e59022700a95">PA_USEC_PER_MSEC</a> 1000</td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct timeval * </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#6b172af60031b694582956e8b4ed6785">pa_gettimeofday</a> (struct timeval *tv)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current timestamp, just like UNIX gettimeofday(). <a href="#6b172af60031b694582956e8b4ed6785"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#30ef3f1f4aa7a57fe6fcf6b217725161">pa_timeval_diff</a> (const struct timeval *a, const struct timeval *b) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate the difference between the two specified timeval structs. <a href="#30ef3f1f4aa7a57fe6fcf6b217725161"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#dda5cdd65f7d07a457849d230c8ed066">pa_timeval_cmp</a> (const struct timeval *a, const struct timeval *b) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compare the two timeval structs and return 0 when equal, negative when a < b, positive otherwse. <a href="#dda5cdd65f7d07a457849d230c8ed066"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#8d9a66f93e843d5e777eae6363b3aafc">pa_timeval_age</a> (const struct timeval *tv)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the time difference between now and the specified timestamp. <a href="#8d9a66f93e843d5e777eae6363b3aafc"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct timeval * </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#f0d6694ed18aae48ec598d5755c6bd6c">pa_timeval_add</a> (struct timeval *tv, <a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> v) PA_GCC_PURE</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add the specified time inmicroseconds to the specified timeval structure. <a href="#f0d6694ed18aae48ec598d5755c6bd6c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct timeval * </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#f57d5b7c72056fb96737394952f13ba1">pa_timeval_store</a> (struct timeval *tv, <a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> v)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Store the specified uec value in the timeval struct. <a href="#f57d5b7c72056fb96737394952f13ba1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="timeval_8h.html#4ad23ae783a93d0da964b2e026f54dc2">pa_timeval_load</a> (const struct timeval *tv)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Load the specified tv value and return it in usec. <a href="#4ad23ae783a93d0da964b2e026f54dc2"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Utility functions for handling timeval calculations. <p> <hr><h2>Define Documentation</h2> <a class="anchor" name="dc226d28cef9e36fca56c355a03903f5"></a><!-- doxytag: member="timeval.h::PA_MSEC_PER_SEC" ref="dc226d28cef9e36fca56c355a03903f5" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_MSEC_PER_SEC 1000 </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="98cd21cdaba8d04b078ad3f4e8139a11"></a><!-- doxytag: member="timeval.h::PA_NSEC_PER_SEC" ref="98cd21cdaba8d04b078ad3f4e8139a11" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_NSEC_PER_SEC 1000000000 </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="13ded4b857d4148545f7e59022700a95"></a><!-- doxytag: member="timeval.h::PA_USEC_PER_MSEC" ref="13ded4b857d4148545f7e59022700a95" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_USEC_PER_MSEC 1000 </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="65605026fb393422df650916ef7e3e32"></a><!-- doxytag: member="timeval.h::PA_USEC_PER_SEC" ref="65605026fb393422df650916ef7e3e32" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PA_USEC_PER_SEC 1000000 </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="6b172af60031b694582956e8b4ed6785"></a><!-- doxytag: member="timeval.h::pa_gettimeofday" ref="6b172af60031b694582956e8b4ed6785" args="(struct timeval *tv)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct timeval* pa_gettimeofday </td> <td>(</td> <td class="paramtype">struct timeval * </td> <td class="paramname"> <em>tv</em> </td> <td> ) </td> <td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return the current timestamp, just like UNIX gettimeofday(). <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a79">pacat.c</a>.</dl> </div> </div><p> <a class="anchor" name="f0d6694ed18aae48ec598d5755c6bd6c"></a><!-- doxytag: member="timeval.h::pa_timeval_add" ref="f0d6694ed18aae48ec598d5755c6bd6c" args="(struct timeval *tv, pa_usec_t v) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct timeval* pa_timeval_add </td> <td>(</td> <td class="paramtype">struct timeval * </td> <td class="paramname"> <em>tv</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> </td> <td class="paramname"> <em>v</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Add the specified time inmicroseconds to the specified timeval structure. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a80">pacat.c</a>.</dl> </div> </div><p> <a class="anchor" name="8d9a66f93e843d5e777eae6363b3aafc"></a><!-- doxytag: member="timeval.h::pa_timeval_age" ref="8d9a66f93e843d5e777eae6363b3aafc" args="(const struct timeval *tv)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> pa_timeval_age </td> <td>(</td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>tv</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the time difference between now and the specified timestamp. <p> </div> </div><p> <a class="anchor" name="dda5cdd65f7d07a457849d230c8ed066"></a><!-- doxytag: member="timeval.h::pa_timeval_cmp" ref="dda5cdd65f7d07a457849d230c8ed066" args="(const struct timeval *a, const struct timeval *b) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_timeval_cmp </td> <td>(</td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Compare the two timeval structs and return 0 when equal, negative when a < b, positive otherwse. <p> </div> </div><p> <a class="anchor" name="30ef3f1f4aa7a57fe6fcf6b217725161"></a><!-- doxytag: member="timeval.h::pa_timeval_diff" ref="30ef3f1f4aa7a57fe6fcf6b217725161" args="(const struct timeval *a, const struct timeval *b) PA_GCC_PURE" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> pa_timeval_diff </td> <td>(</td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>b</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Calculate the difference between the two specified timeval structs. <p> </div> </div><p> <a class="anchor" name="4ad23ae783a93d0da964b2e026f54dc2"></a><!-- doxytag: member="timeval.h::pa_timeval_load" ref="4ad23ae783a93d0da964b2e026f54dc2" args="(const struct timeval *tv)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> pa_timeval_load </td> <td>(</td> <td class="paramtype">const struct timeval * </td> <td class="paramname"> <em>tv</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Load the specified tv value and return it in usec. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.9.7 </dd></dl> </div> </div><p> <a class="anchor" name="f57d5b7c72056fb96737394952f13ba1"></a><!-- doxytag: member="timeval.h::pa_timeval_store" ref="f57d5b7c72056fb96737394952f13ba1" args="(struct timeval *tv, pa_usec_t v)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct timeval* pa_timeval_store </td> <td>(</td> <td class="paramtype">struct timeval * </td> <td class="paramname"> <em>tv</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="sample_8h.html#885df3b973773f0dccbbec6bc6777f89">pa_usec_t</a> </td> <td class="paramname"> <em>v</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [read]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Store the specified uec value in the timeval struct. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.9.7 </dd></dl> </div> </div><p> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Wed Mar 26 12:02:40 2008 for PulseAudio by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address> </body> </html>