<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>PulseAudio: mainloop-api.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">PulseAudio  <span id="projectnumber">5.0.0-1.mga4</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="annotated.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 id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('mainloop-api_8h_source.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <div class="title">mainloop-api.h</div> </div> </div><!--header--> <div class="contents"> <a href="mainloop-api_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#ifndef foomainloopapihfoo</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor"></span><span class="preprocessor">#define foomainloopapihfoo</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">/***</span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> This file is part of PulseAudio.</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"></span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> Copyright 2004-2006 Lennart Poettering</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"></span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> PulseAudio is free software; you can redistribute it and/or modify</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> it under the terms of the GNU Lesser General Public License as</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> published by the Free Software Foundation; either version 2.1 of the</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> License, or (at your option) any later version.</span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"></span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> PulseAudio is distributed in the hope that it will be useful, but</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> WITHOUT ANY WARRANTY; without even the implied warranty of</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> Lesser General Public License for more details.</span></div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"></span></div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment"> You should have received a copy of the GNU Lesser General Public</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment"> License along with PulseAudio; if not, write to the Free Software</span></div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307</span></div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> USA.</span></div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment">***/</span></div> <div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div> <div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <sys/time.h></span></div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <pulse/cdecl.h></span></div> <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <<a class="code" href="version_8h.html">pulse/version.h</a>></span></div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div> <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> PA_C_DECL_BEGIN</div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div> <div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a02723ebcaea4464cd8d63845d4c2dd92"> 49</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a> <a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>;</div> <div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div> <div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1fa"> 52</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1fa">pa_io_event_flags</a> {</div> <div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa458d976392190c7626b4f789bf11b2ea"> 53</a></span>  <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa458d976392190c7626b4f789bf11b2ea">PA_IO_EVENT_NULL</a> = 0, </div> <div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faaba9fbd1e6cb3031098a2aaa144c78336"> 54</a></span>  <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faaba9fbd1e6cb3031098a2aaa144c78336">PA_IO_EVENT_INPUT</a> = 1, </div> <div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa3aff35dad0cd23ae3796b3141fee4dce"> 55</a></span>  <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa3aff35dad0cd23ae3796b3141fee4dce">PA_IO_EVENT_OUTPUT</a> = 2, </div> <div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa9b6a006b1dc3894fd6bd8d5d99be5831"> 56</a></span>  <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa9b6a006b1dc3894fd6bd8d5d99be5831">PA_IO_EVENT_HANGUP</a> = 4, </div> <div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa7e0f4c300b66f92e0c59a0d56326f488"> 57</a></span>  <a class="code" href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa7e0f4c300b66f92e0c59a0d56326f488">PA_IO_EVENT_ERROR</a> = 8 </div> <div class="line"><a name="l00058"></a><span class="lineno"> 58</span> } <a class="code" href="mainloop-api_8h.html#a01d415df4f23e46b20cd218678c4c9a7">pa_io_event_flags_t</a>;</div> <div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div> <div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3"> 61</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a> <a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a>;</div> <div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a6efed27d20bcdd5a83ca31633bbae024"> 63</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#a6efed27d20bcdd5a83ca31633bbae024">pa_io_event_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*ea, <a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a>* e, <span class="keywordtype">int</span> fd, <a class="code" href="mainloop-api_8h.html#a01d415df4f23e46b20cd218678c4c9a7">pa_io_event_flags_t</a> events, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a654d65737cc659a1613815c06d1ea5e4"> 65</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#a654d65737cc659a1613815c06d1ea5e4">pa_io_event_destroy_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a> *e, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div> <div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06"> 68</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a> <a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a>;</div> <div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a2817e719415fe5aa267de4104b4e10bb"> 70</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#a2817e719415fe5aa267de4104b4e10bb">pa_time_event_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a>* e, <span class="keyword">const</span> <span class="keyword">struct </span>timeval *tv, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a622d07a5be8276ee0d5a82797cbaa570"> 72</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#a622d07a5be8276ee0d5a82797cbaa570">pa_time_event_destroy_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a> *e, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div> <div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087"> 75</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a> <a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a>;</div> <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#a0b61fda082ff90b5a0f6e3478f8edb22"> 77</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#a0b61fda082ff90b5a0f6e3478f8edb22">pa_defer_event_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a>* e, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="mainloop-api_8h.html#ae6fb5d67b08d48d219295dc84672cdb4"> 79</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="mainloop-api_8h.html#ae6fb5d67b08d48d219295dc84672cdb4">pa_defer_event_destroy_cb_t</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a> *e, <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div> <div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html"> 82</a></span> <span class="keyword">struct </span><a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a> {</div> <div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835"> 84</a></span>  <span class="keywordtype">void</span> *<a class="code" href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835">userdata</a>;</div> <div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div> <div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#acaf8e4e2a317106ec5cda25dc82c3225"> 87</a></span>  <a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a>* (*io_new)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <span class="keywordtype">int</span> fd, <a class="code" href="mainloop-api_8h.html#a01d415df4f23e46b20cd218678c4c9a7">pa_io_event_flags_t</a> events, <a class="code" href="mainloop-api_8h.html#a6efed27d20bcdd5a83ca31633bbae024">pa_io_event_cb_t</a> cb, <span class="keywordtype">void</span> *<a class="code" href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835">userdata</a>);</div> <div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#ac8372ccaf7b5291008d6f59cf40ce3aa"> 89</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#ac8372ccaf7b5291008d6f59cf40ce3aa">io_enable</a>)(<a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a>* e, <a class="code" href="mainloop-api_8h.html#a01d415df4f23e46b20cd218678c4c9a7">pa_io_event_flags_t</a> events);</div> <div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a3a48c4fa72ef016e5c7b8cfd011a3d7a"> 91</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#a3a48c4fa72ef016e5c7b8cfd011a3d7a">io_free</a>)(<a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a>* e);</div> <div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a0b88f5970c234b62ad2cb18559d7a6d0"> 93</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#a0b88f5970c234b62ad2cb18559d7a6d0">io_set_destroy</a>)(<a class="code" href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a> *e, <a class="code" href="mainloop-api_8h.html#a654d65737cc659a1613815c06d1ea5e4">pa_io_event_destroy_cb_t</a> cb);</div> <div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div> <div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a6bb22d8fd9eb1e04c9e47ac65806bbc5"> 96</a></span>  <a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a>* (*time_new)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <span class="keyword">const</span> <span class="keyword">struct </span>timeval *tv, <a class="code" href="mainloop-api_8h.html#a2817e719415fe5aa267de4104b4e10bb">pa_time_event_cb_t</a> cb, <span class="keywordtype">void</span> *<a class="code" href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835">userdata</a>);</div> <div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a2e03bc11278275c4855c41eb2d54e826"> 98</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#a2e03bc11278275c4855c41eb2d54e826">time_restart</a>)(<a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a>* e, <span class="keyword">const</span> <span class="keyword">struct </span>timeval *tv);</div> <div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#ada2de717320b502a8fce1e30228aa1d5"> 100</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#ada2de717320b502a8fce1e30228aa1d5">time_free</a>)(<a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a>* e);</div> <div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#ad1889e86ac8aff08c31b0c5ac078bb33"> 102</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#ad1889e86ac8aff08c31b0c5ac078bb33">time_set_destroy</a>)(<a class="code" href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a> *e, <a class="code" href="mainloop-api_8h.html#a622d07a5be8276ee0d5a82797cbaa570">pa_time_event_destroy_cb_t</a> cb);</div> <div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div> <div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#ac5bfd17588bf007b0796f0e8b291dca1"> 105</a></span>  <a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a>* (*defer_new)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <a class="code" href="mainloop-api_8h.html#a0b61fda082ff90b5a0f6e3478f8edb22">pa_defer_event_cb_t</a> cb, <span class="keywordtype">void</span> *<a class="code" href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835">userdata</a>);</div> <div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#add00a04e86a34a2fcdfb022c101cb4e3"> 107</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#add00a04e86a34a2fcdfb022c101cb4e3">defer_enable</a>)(<a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a>* e, <span class="keywordtype">int</span> b);</div> <div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a6f6e81b632d910d02de3739b880c197f"> 109</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#a6f6e81b632d910d02de3739b880c197f">defer_free</a>)(<a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a>* e);</div> <div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#aa8e2109a98d9946cac1df48bf5dcc033"> 111</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#aa8e2109a98d9946cac1df48bf5dcc033">defer_set_destroy</a>)(<a class="code" href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a> *e, <a class="code" href="mainloop-api_8h.html#ae6fb5d67b08d48d219295dc84672cdb4">pa_defer_event_destroy_cb_t</a> cb);</div> <div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div> <div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structpa__mainloop__api.html#a6931949737d103f7b34628fedf5661cb"> 114</a></span>  void (*<a class="code" href="structpa__mainloop__api.html#a6931949737d103f7b34628fedf5661cb">quit</a>)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*a, <span class="keywordtype">int</span> retval);</div> <div class="line"><a name="l00115"></a><span class="lineno"> 115</span> };</div> <div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div> <div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">void</span> <a class="code" href="mainloop-api_8h.html#a0b38e33a821ac63ce99b4beb3f6313e8">pa_mainloop_api_once</a>(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*m, <span class="keywordtype">void</span> (*callback)(<a class="code" href="structpa__mainloop__api.html">pa_mainloop_api</a>*m, <span class="keywordtype">void</span> *userdata), <span class="keywordtype">void</span> *userdata);</div> <div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div> <div class="line"><a name="l00122"></a><span class="lineno"> 122</span> PA_C_DECL_END</div> <div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div> <div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="preprocessor">#endif</span></div> <div class="ttc" id="structpa__mainloop__api_html"><div class="ttname"><a href="structpa__mainloop__api.html">pa_mainloop_api</a></div><div class="ttdoc">An abstract mainloop API vtable. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:82</div></div> <div class="ttc" id="mainloop-api_8h_html_a0b61fda082ff90b5a0f6e3478f8edb22"><div class="ttname"><a href="mainloop-api_8h.html#a0b61fda082ff90b5a0f6e3478f8edb22">pa_defer_event_cb_t</a></div><div class="ttdeci">void(* pa_defer_event_cb_t)(pa_mainloop_api *a, pa_defer_event *e, void *userdata)</div><div class="ttdoc">A defer event callback prototype. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:77</div></div> <div class="ttc" id="structpa__mainloop__api_html_add00a04e86a34a2fcdfb022c101cb4e3"><div class="ttname"><a href="structpa__mainloop__api.html#add00a04e86a34a2fcdfb022c101cb4e3">pa_mainloop_api::defer_enable</a></div><div class="ttdeci">void(* defer_enable)(pa_defer_event *e, int b)</div><div class="ttdoc">Enable or disable a deferred event source temporarily. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:107</div></div> <div class="ttc" id="structpa__mainloop__api_html_a83546677d6c10792e98221996599c835"><div class="ttname"><a href="structpa__mainloop__api.html#a83546677d6c10792e98221996599c835">pa_mainloop_api::userdata</a></div><div class="ttdeci">void * userdata</div><div class="ttdoc">A pointer to some private, arbitrary data of the main loop implementation. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:84</div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1faa458d976392190c7626b4f789bf11b2ea"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa458d976392190c7626b4f789bf11b2ea">PA_IO_EVENT_NULL</a></div><div class="ttdoc">No event. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:53</div></div> <div class="ttc" id="structpa__mainloop__api_html_ac8372ccaf7b5291008d6f59cf40ce3aa"><div class="ttname"><a href="structpa__mainloop__api.html#ac8372ccaf7b5291008d6f59cf40ce3aa">pa_mainloop_api::io_enable</a></div><div class="ttdeci">void(* io_enable)(pa_io_event *e, pa_io_event_flags_t events)</div><div class="ttdoc">Enable or disable IO events on this object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:89</div></div> <div class="ttc" id="mainloop-api_8h_html_a0b38e33a821ac63ce99b4beb3f6313e8"><div class="ttname"><a href="mainloop-api_8h.html#a0b38e33a821ac63ce99b4beb3f6313e8">pa_mainloop_api_once</a></div><div class="ttdeci">void pa_mainloop_api_once(pa_mainloop_api *m, void(*callback)(pa_mainloop_api *m, void *userdata), void *userdata)</div><div class="ttdoc">Run the specified callback function once from the main loop using an anonymous defer event...</div></div> <div class="ttc" id="structpa__mainloop__api_html_a0b88f5970c234b62ad2cb18559d7a6d0"><div class="ttname"><a href="structpa__mainloop__api.html#a0b88f5970c234b62ad2cb18559d7a6d0">pa_mainloop_api::io_set_destroy</a></div><div class="ttdeci">void(* io_set_destroy)(pa_io_event *e, pa_io_event_destroy_cb_t cb)</div><div class="ttdoc">Set a function that is called when the IO event source is destroyed. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:93</div></div> <div class="ttc" id="mainloop-api_8h_html_ae7acb1df28956a7761ee5488167840a3"><div class="ttname"><a href="mainloop-api_8h.html#ae7acb1df28956a7761ee5488167840a3">pa_io_event</a></div><div class="ttdeci">struct pa_io_event pa_io_event</div><div class="ttdoc">An opaque IO event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:61</div></div> <div class="ttc" id="structpa__mainloop__api_html_ada2de717320b502a8fce1e30228aa1d5"><div class="ttname"><a href="structpa__mainloop__api.html#ada2de717320b502a8fce1e30228aa1d5">pa_mainloop_api::time_free</a></div><div class="ttdeci">void(* time_free)(pa_time_event *e)</div><div class="ttdoc">Free a deferred timer event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:100</div></div> <div class="ttc" id="mainloop-api_8h_html_a654d65737cc659a1613815c06d1ea5e4"><div class="ttname"><a href="mainloop-api_8h.html#a654d65737cc659a1613815c06d1ea5e4">pa_io_event_destroy_cb_t</a></div><div class="ttdeci">void(* pa_io_event_destroy_cb_t)(pa_mainloop_api *a, pa_io_event *e, void *userdata)</div><div class="ttdoc">A IO event destroy callback prototype \ since 0.9.3. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:65</div></div> <div class="ttc" id="structpa__mainloop__api_html_a2e03bc11278275c4855c41eb2d54e826"><div class="ttname"><a href="structpa__mainloop__api.html#a2e03bc11278275c4855c41eb2d54e826">pa_mainloop_api::time_restart</a></div><div class="ttdeci">void(* time_restart)(pa_time_event *e, const struct timeval *tv)</div><div class="ttdoc">Restart a running or expired timer event source with a new Unix time. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:98</div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1faa3aff35dad0cd23ae3796b3141fee4dce"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa3aff35dad0cd23ae3796b3141fee4dce">PA_IO_EVENT_OUTPUT</a></div><div class="ttdoc">Output event. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:55</div></div> <div class="ttc" id="structpa__mainloop__api_html_a3a48c4fa72ef016e5c7b8cfd011a3d7a"><div class="ttname"><a href="structpa__mainloop__api.html#a3a48c4fa72ef016e5c7b8cfd011a3d7a">pa_mainloop_api::io_free</a></div><div class="ttdeci">void(* io_free)(pa_io_event *e)</div><div class="ttdoc">Free a IO event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:91</div></div> <div class="ttc" id="structpa__mainloop__api_html_a6f6e81b632d910d02de3739b880c197f"><div class="ttname"><a href="structpa__mainloop__api.html#a6f6e81b632d910d02de3739b880c197f">pa_mainloop_api::defer_free</a></div><div class="ttdeci">void(* defer_free)(pa_defer_event *e)</div><div class="ttdoc">Free a deferred event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:109</div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1faaba9fbd1e6cb3031098a2aaa144c78336"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faaba9fbd1e6cb3031098a2aaa144c78336">PA_IO_EVENT_INPUT</a></div><div class="ttdoc">Input event. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:54</div></div> <div class="ttc" id="mainloop-api_8h_html_a2817e719415fe5aa267de4104b4e10bb"><div class="ttname"><a href="mainloop-api_8h.html#a2817e719415fe5aa267de4104b4e10bb">pa_time_event_cb_t</a></div><div class="ttdeci">void(* pa_time_event_cb_t)(pa_mainloop_api *a, pa_time_event *e, const struct timeval *tv, void *userdata)</div><div class="ttdoc">A time event callback prototype. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:70</div></div> <div class="ttc" id="structpa__mainloop__api_html_a6931949737d103f7b34628fedf5661cb"><div class="ttname"><a href="structpa__mainloop__api.html#a6931949737d103f7b34628fedf5661cb">pa_mainloop_api::quit</a></div><div class="ttdeci">void(* quit)(pa_mainloop_api *a, int retval)</div><div class="ttdoc">Exit the main loop and return the specified retval. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:114</div></div> <div class="ttc" id="version_8h_html"><div class="ttname"><a href="version_8h.html">version.h</a></div><div class="ttdoc">Define header version. </div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1fa"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1fa">pa_io_event_flags</a></div><div class="ttdeci">pa_io_event_flags</div><div class="ttdoc">A bitmask for IO events. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:52</div></div> <div class="ttc" id="structpa__mainloop__api_html_aa8e2109a98d9946cac1df48bf5dcc033"><div class="ttname"><a href="structpa__mainloop__api.html#aa8e2109a98d9946cac1df48bf5dcc033">pa_mainloop_api::defer_set_destroy</a></div><div class="ttdeci">void(* defer_set_destroy)(pa_defer_event *e, pa_defer_event_destroy_cb_t cb)</div><div class="ttdoc">Set a function that is called when the deferred event source is destroyed. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:111</div></div> <div class="ttc" id="mainloop-api_8h_html_a45b1a5f366caddb669789d5e69338f06"><div class="ttname"><a href="mainloop-api_8h.html#a45b1a5f366caddb669789d5e69338f06">pa_time_event</a></div><div class="ttdeci">struct pa_time_event pa_time_event</div><div class="ttdoc">An opaque timer event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:68</div></div> <div class="ttc" id="mainloop-api_8h_html_a01d415df4f23e46b20cd218678c4c9a7"><div class="ttname"><a href="mainloop-api_8h.html#a01d415df4f23e46b20cd218678c4c9a7">pa_io_event_flags_t</a></div><div class="ttdeci">enum pa_io_event_flags pa_io_event_flags_t</div><div class="ttdoc">A bitmask for IO events. </div></div> <div class="ttc" id="mainloop-api_8h_html_a6efed27d20bcdd5a83ca31633bbae024"><div class="ttname"><a href="mainloop-api_8h.html#a6efed27d20bcdd5a83ca31633bbae024">pa_io_event_cb_t</a></div><div class="ttdeci">void(* pa_io_event_cb_t)(pa_mainloop_api *ea, pa_io_event *e, int fd, pa_io_event_flags_t events, void *userdata)</div><div class="ttdoc">An IO event callback prototype. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:63</div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1faa7e0f4c300b66f92e0c59a0d56326f488"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa7e0f4c300b66f92e0c59a0d56326f488">PA_IO_EVENT_ERROR</a></div><div class="ttdoc">Error event. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:57</div></div> <div class="ttc" id="mainloop-api_8h_html_a6769e3c8a68703a81a68d5d72b32d1faa9b6a006b1dc3894fd6bd8d5d99be5831"><div class="ttname"><a href="mainloop-api_8h.html#a6769e3c8a68703a81a68d5d72b32d1faa9b6a006b1dc3894fd6bd8d5d99be5831">PA_IO_EVENT_HANGUP</a></div><div class="ttdoc">Hangup event. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:56</div></div> <div class="ttc" id="structpa__mainloop__api_html_ad1889e86ac8aff08c31b0c5ac078bb33"><div class="ttname"><a href="structpa__mainloop__api.html#ad1889e86ac8aff08c31b0c5ac078bb33">pa_mainloop_api::time_set_destroy</a></div><div class="ttdeci">void(* time_set_destroy)(pa_time_event *e, pa_time_event_destroy_cb_t cb)</div><div class="ttdoc">Set a function that is called when the timer event source is destroyed. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:102</div></div> <div class="ttc" id="mainloop-api_8h_html_a622d07a5be8276ee0d5a82797cbaa570"><div class="ttname"><a href="mainloop-api_8h.html#a622d07a5be8276ee0d5a82797cbaa570">pa_time_event_destroy_cb_t</a></div><div class="ttdeci">void(* pa_time_event_destroy_cb_t)(pa_mainloop_api *a, pa_time_event *e, void *userdata)</div><div class="ttdoc">A time event destroy callback prototype \ since 0.9.3. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:72</div></div> <div class="ttc" id="mainloop-api_8h_html_ae6fb5d67b08d48d219295dc84672cdb4"><div class="ttname"><a href="mainloop-api_8h.html#ae6fb5d67b08d48d219295dc84672cdb4">pa_defer_event_destroy_cb_t</a></div><div class="ttdeci">void(* pa_defer_event_destroy_cb_t)(pa_mainloop_api *a, pa_defer_event *e, void *userdata)</div><div class="ttdoc">A defer event destroy callback prototype \ since 0.9.3. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:79</div></div> <div class="ttc" id="mainloop-api_8h_html_a545440c2c08074c93939cb1240a7d087"><div class="ttname"><a href="mainloop-api_8h.html#a545440c2c08074c93939cb1240a7d087">pa_defer_event</a></div><div class="ttdeci">struct pa_defer_event pa_defer_event</div><div class="ttdoc">An opaque deferred event source object. </div><div class="ttdef"><b>Definition:</b> mainloop-api.h:75</div></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_ec5b0a79aff2db41fe5d1b9326f09c28.html">pulse</a></li><li class="navelem"><a class="el" href="mainloop-api_8h.html">mainloop-api.h</a></li> <li class="footer">Generated on Sat Nov 1 2014 11:15:46 for PulseAudio by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.5 </li> </ul> </div> </body> </html>