KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21573/root/usr/share/devhelp/books/dbus/api/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21573/root/usr/share/devhelp/books/dbus/api/group__DBusTimeoutInternals.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>D-Bus: DBusTimeout implementation details</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.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul></div>
<h1>DBusTimeout implementation details<br>
<small>
[<a class="el" href="group__DBusInternals.html">D-Bus secret internal implementation details</a>]</small>
</h1>implementation details for <a class="el" href="structDBusTimeout.html">DBusTimeout</a>  
<a href="#_details">More...</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusTimeout.html">DBusTimeout</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internals of <a class="el" href="structDBusTimeout.html">DBusTimeout</a>.  <a href="structDBusTimeout.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> implementation details.  <a href="structDBusTimeoutList.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gbc3cb66aa2ec450d298fe7ec3b480fa1">DBusTimeoutList</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Opaque data type representing a list of timeouts and a set of DBusAddTimeoutFunction/DBusRemoveTimeoutFunction.  <a href="#gbc3cb66aa2ec450d298fe7ec3b480fa1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd0b4e101391bd7f0a42f951178cdb090"></a><!-- doxytag: member="DBusTimeoutInternals::DBusTimeoutHandler" ref="gd0b4e101391bd7f0a42f951178cdb090" args="(void *data)" -->
typedef <a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a>(*)&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gd0b4e101391bd7f0a42f951178cdb090">DBusTimeoutHandler</a> (void *data)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">function to run when the timeout is handled <br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g3f63abde6bb7ebecf6fa8774ba501a26">_dbus_timeout_new</a> (int interval, <a class="el" href="group__DBusTimeoutInternals.html#gd0b4e101391bd7f0a42f951178cdb090">DBusTimeoutHandler</a> handler, void *data, <a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a> free_data_function)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new <a class="el" href="structDBusTimeout.html">DBusTimeout</a>, enabled by default.  <a href="#g3f63abde6bb7ebecf6fa8774ba501a26"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gdf014caa89efb09ae72c300ae5c4fda5">_dbus_timeout_ref</a> (<a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Increments the reference count of a <a class="el" href="structDBusTimeout.html">DBusTimeout</a> object.  <a href="#gdf014caa89efb09ae72c300ae5c4fda5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gea6359793576a2eec42e27267bae7bbd">_dbus_timeout_unref</a> (<a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Decrements the reference count of a <a class="el" href="structDBusTimeout.html">DBusTimeout</a> object and finalizes the object if the count reaches zero.  <a href="#gea6359793576a2eec42e27267bae7bbd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gdbd32136416a555ad737b533c8e713ef">_dbus_timeout_set_interval</a> (<a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout, int interval)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Changes the timeout interval.  <a href="#gdbd32136416a555ad737b533c8e713ef"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g1b85d28ab11e4e2f8916b786e13dbcc4">_dbus_timeout_set_enabled</a> (<a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout, <a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> enabled)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Changes the timeout's enabled-ness.  <a href="#g1b85d28ab11e4e2f8916b786e13dbcc4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g5b122b35cdb3926b7dc2d084ddff9d62">_dbus_timeout_list_new</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new timeout list.  <a href="#g5b122b35cdb3926b7dc2d084ddff9d62"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g1b399ef2d7f128e59bb32dbb5b590e1b">_dbus_timeout_list_free</a> (<a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *timeout_list)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Frees a <a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a>.  <a href="#g1b399ef2d7f128e59bb32dbb5b590e1b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g6760d1963b870b45f855501e38b49fd9">_dbus_timeout_list_set_functions</a> (<a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *timeout_list, <a class="el" href="group__DBusConnection.html#g0f4e9f850546dfbe3a27edea05e5e590">DBusAddTimeoutFunction</a> add_function, <a class="el" href="group__DBusConnection.html#gb11e8c56bd8637deca1439be635f6ca7">DBusRemoveTimeoutFunction</a> remove_function, <a class="el" href="group__DBusConnection.html#g1e98eb88ce848204d419495be5e1d228">DBusTimeoutToggledFunction</a> toggled_function, void *data, <a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a> free_data_function)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the timeout functions.  <a href="#g6760d1963b870b45f855501e38b49fd9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g14955f061551ece122808b9e6ddc0757">_dbus_timeout_list_add_timeout</a> (<a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *timeout_list, <a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new timeout to the timeout list, invoking the application DBusAddTimeoutFunction if appropriate.  <a href="#g14955f061551ece122808b9e6ddc0757"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#gec0ffafdcac87f23878a2ddded044822">_dbus_timeout_list_remove_timeout</a> (<a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *timeout_list, <a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes a timeout from the timeout list, invoking the application's DBusRemoveTimeoutFunction if appropriate.  <a href="#gec0ffafdcac87f23878a2ddded044822"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__DBusTimeoutInternals.html#g3d1ee0968a47651c5428ebf48711b217">_dbus_timeout_list_toggle_timeout</a> (<a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *timeout_list, <a class="el" href="structDBusTimeout.html">DBusTimeout</a> *timeout, <a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> enabled)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets a timeout to the given enabled state, invoking the application's DBusTimeoutToggledFunction if appropriate.  <a href="#g3d1ee0968a47651c5428ebf48711b217"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
implementation details for <a class="el" href="structDBusTimeout.html">DBusTimeout</a> 
<p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="gbc3cb66aa2ec450d298fe7ec3b480fa1"></a><!-- doxytag: member="dbus-timeout.h::DBusTimeoutList" ref="gbc3cb66aa2ec450d298fe7ec3b480fa1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Opaque data type representing a list of timeouts and a set of DBusAddTimeoutFunction/DBusRemoveTimeoutFunction. 
<p>
Automatically handles removing/re-adding timeouts when the DBusAddTimeoutFunction is updated or changed. Holds a reference count to each timeout. 
<p>
Definition at line <a class="el" href="dbus-timeout_8h-source.html#l00038">38</a> of file <a class="el" href="dbus-timeout_8h-source.html">dbus-timeout.h</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="g14955f061551ece122808b9e6ddc0757"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_add_timeout" ref="g14955f061551ece122808b9e6ddc0757" args="(DBusTimeoutList *timeout_list, DBusTimeout *timeout)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> _dbus_timeout_list_add_timeout           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout_list</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Adds a new timeout to the timeout list, invoking the application DBusAddTimeoutFunction if appropriate. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout_list</em>&nbsp;</td><td>the timeout list. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout to add. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a> on success, <a class="el" href="group__DBusMacros.html#ga93f0eb578d23995850d61f7d61c55c1">FALSE</a> If no memory. </dd></dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00309">309</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-list_8c-source.html#l00246">_dbus_list_append()</a>, <a class="el" href="dbus-list_8c-source.html#l00453">_dbus_list_remove_last()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00092">_dbus_timeout_ref()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00106">_dbus_timeout_unref()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00179">DBusTimeoutList::add_timeout_function</a>, <a class="el" href="group__DBusMacros.html#ga93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-timeout_8c-source.html#l00182">DBusTimeoutList::timeout_data</a>, <a class="el" href="dbus-timeout_8c-source.html#l00177">DBusTimeoutList::timeouts</a>, and <a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.
<p>
Referenced by <a class="el" href="dbus-connection_8c-source.html#l00823">_dbus_connection_add_timeout_unlocked()</a>, and <a class="el" href="dbus-server_8c-source.html#l00381">_dbus_server_add_timeout()</a>.
</div>
</div><p>
<a class="anchor" name="g1b399ef2d7f128e59bb32dbb5b590e1b"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_free" ref="g1b399ef2d7f128e59bb32dbb5b590e1b" args="(DBusTimeoutList *timeout_list)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_list_free           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout_list</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Frees a <a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout_list</em>&nbsp;</td><td>the timeout list. </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00210">210</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-list_8c-source.html#l00549">_dbus_list_clear()</a>, <a class="el" href="dbus-list_8c-source.html#l00789">_dbus_list_foreach()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00238">_dbus_timeout_list_set_functions()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00106">_dbus_timeout_unref()</a>, <a class="el" href="dbus-memory_8c-source.html#l00617">dbus_free()</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00177">DBusTimeoutList::timeouts</a>.
<p>
Referenced by <a class="el" href="dbus-connection_8c-source.html#l01163">_dbus_connection_new_for_transport()</a>, <a class="el" href="dbus-server_8c-source.html#l00168">_dbus_server_finalize_base()</a>, and <a class="el" href="dbus-server_8c-source.html#l00096">_dbus_server_init_base()</a>.
</div>
</div><p>
<a class="anchor" name="g5b122b35cdb3926b7dc2d084ddff9d62"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_new" ref="g5b122b35cdb3926b7dc2d084ddff9d62" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> * _dbus_timeout_list_new           </td>
          <td>(</td>
          <td class="paramtype">void&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new timeout list. 
<p>
Returns <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> if insufficient memory exists.<p>
<dl compact><dt><b>Returns:</b></dt><dd>the new timeout list, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> on failure. </dd></dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00193">193</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-memory_8h-source.html#l00047">dbus_new0</a>, and <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.
<p>
Referenced by <a class="el" href="dbus-connection_8c-source.html#l01163">_dbus_connection_new_for_transport()</a>, and <a class="el" href="dbus-server_8c-source.html#l00096">_dbus_server_init_base()</a>.
</div>
</div><p>
<a class="anchor" name="gec0ffafdcac87f23878a2ddded044822"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_remove_timeout" ref="gec0ffafdcac87f23878a2ddded044822" args="(DBusTimeoutList *timeout_list, DBusTimeout *timeout)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_list_remove_timeout           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout_list</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Removes a timeout from the timeout list, invoking the application's DBusRemoveTimeoutFunction if appropriate. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout_list</em>&nbsp;</td><td>the timeout list. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout to remove. </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00339">339</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-internals_8h-source.html#l00121">_dbus_assert_not_reached</a>, <a class="el" href="dbus-list_8c-source.html#l00422">_dbus_list_remove()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00106">_dbus_timeout_unref()</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-timeout_8c-source.html#l00180">DBusTimeoutList::remove_timeout_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00182">DBusTimeoutList::timeout_data</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00177">DBusTimeoutList::timeouts</a>.
<p>
Referenced by <a class="el" href="dbus-connection_8c-source.html#l00841">_dbus_connection_remove_timeout_unlocked()</a>, and <a class="el" href="dbus-server_8c-source.html#l00396">_dbus_server_remove_timeout()</a>.
</div>
</div><p>
<a class="anchor" name="g6760d1963b870b45f855501e38b49fd9"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_set_functions" ref="g6760d1963b870b45f855501e38b49fd9" args="(DBusTimeoutList *timeout_list, DBusAddTimeoutFunction add_function, DBusRemoveTimeoutFunction remove_function, DBusTimeoutToggledFunction toggled_function, void *data, DBusFreeFunction free_data_function)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a> _dbus_timeout_list_set_functions           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout_list</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusConnection.html#g0f4e9f850546dfbe3a27edea05e5e590">DBusAddTimeoutFunction</a>&nbsp;</td>
          <td class="paramname"> <em>add_function</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusConnection.html#gb11e8c56bd8637deca1439be635f6ca7">DBusRemoveTimeoutFunction</a>&nbsp;</td>
          <td class="paramname"> <em>remove_function</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusConnection.html#g1e98eb88ce848204d419495be5e1d228">DBusTimeoutToggledFunction</a>&nbsp;</td>
          <td class="paramname"> <em>toggled_function</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a>&nbsp;</td>
          <td class="paramname"> <em>free_data_function</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets the timeout functions. 
<p>
This function is the "backend" for <a class="el" href="group__DBusConnection.html#g1e827990ea677cbe69ead0b3ccc4b91c">dbus_connection_set_timeout_functions()</a>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout_list</em>&nbsp;</td><td>the timeout list </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>add_function</em>&nbsp;</td><td>the add timeout function. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>remove_function</em>&nbsp;</td><td>the remove timeout function. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>toggled_function</em>&nbsp;</td><td>toggle notify function, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>the data for those functions. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>free_data_function</em>&nbsp;</td><td>the function to free the data. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><a class="el" href="group__DBusMacros.html#ga93f0eb578d23995850d61f7d61c55c1">FALSE</a> if no memory </dd></dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00238">238</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-list_8c-source.html#l00789">_dbus_list_foreach()</a>, <a class="el" href="dbus-list_8c-source.html#l00574">_dbus_list_get_first_link()</a>, <a class="el" href="dbus-list_8h-source.html#l00093">_dbus_list_get_next_link</a>, <a class="el" href="dbus-timeout_8c-source.html#l00179">DBusTimeoutList::add_timeout_function</a>, <a class="el" href="dbus-list_8h-source.html#l00038">DBusList::data</a>, <a class="el" href="group__DBusMacros.html#ga93f0eb578d23995850d61f7d61c55c1">FALSE</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-timeout_8c-source.html#l00180">DBusTimeoutList::remove_timeout_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00182">DBusTimeoutList::timeout_data</a>, <a class="el" href="dbus-timeout_8c-source.html#l00183">DBusTimeoutList::timeout_free_data_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00181">DBusTimeoutList::timeout_toggled_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00177">DBusTimeoutList::timeouts</a>, and <a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.
<p>
Referenced by <a class="el" href="dbus-timeout_8c-source.html#l00210">_dbus_timeout_list_free()</a>, <a class="el" href="dbus-connection_8c-source.html#l04649">dbus_connection_set_timeout_functions()</a>, and <a class="el" href="dbus-server_8c-source.html#l00952">dbus_server_set_timeout_functions()</a>.
</div>
</div><p>
<a class="anchor" name="g3d1ee0968a47651c5428ebf48711b217"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_list_toggle_timeout" ref="g3d1ee0968a47651c5428ebf48711b217" args="(DBusTimeoutList *timeout_list, DBusTimeout *timeout, dbus_bool_t enabled)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_list_toggle_timeout           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeoutList.html">DBusTimeoutList</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout_list</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a>&nbsp;</td>
          <td class="paramname"> <em>enabled</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets a timeout to the given enabled state, invoking the application's DBusTimeoutToggledFunction if appropriate. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout_list</em>&nbsp;</td><td>the timeout list. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout to toggle. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>enabled</em>&nbsp;</td><td><a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a> to enable </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00361">361</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-timeout_8c-source.html#l00050">DBusTimeout::enabled</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-timeout_8c-source.html#l00182">DBusTimeoutList::timeout_data</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00181">DBusTimeoutList::timeout_toggled_function</a>.
<p>
Referenced by <a class="el" href="dbus-connection_8c-source.html#l00861">_dbus_connection_toggle_timeout_unlocked()</a>, and <a class="el" href="dbus-server_8c-source.html#l00415">_dbus_server_toggle_timeout()</a>.
</div>
</div><p>
<a class="anchor" name="g3f63abde6bb7ebecf6fa8774ba501a26"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_new" ref="g3f63abde6bb7ebecf6fa8774ba501a26" args="(int interval, DBusTimeoutHandler handler, void *data, DBusFreeFunction free_data_function)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> * _dbus_timeout_new           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>interval</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusTimeoutInternals.html#gd0b4e101391bd7f0a42f951178cdb090">DBusTimeoutHandler</a>&nbsp;</td>
          <td class="paramname"> <em>handler</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a>&nbsp;</td>
          <td class="paramname"> <em>free_data_function</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a new <a class="el" href="structDBusTimeout.html">DBusTimeout</a>, enabled by default. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>interval</em>&nbsp;</td><td>the timeout interval in milliseconds. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handler</em>&nbsp;</td><td>function to call when the timeout occurs. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>data to pass to the handler </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>free_data_function</em>&nbsp;</td><td>function to be called to free the data. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>the new <a class="el" href="structDBusTimeout.html">DBusTimeout</a> object, </dd></dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00062">62</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-memory_8h-source.html#l00047">dbus_new0</a>, <a class="el" href="dbus-timeout_8c-source.html#l00050">DBusTimeout::enabled</a>, <a class="el" href="dbus-timeout_8c-source.html#l00046">DBusTimeout::free_handler_data_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00044">DBusTimeout::handler</a>, <a class="el" href="dbus-timeout_8c-source.html#l00045">DBusTimeout::handler_data</a>, <a class="el" href="dbus-timeout_8c-source.html#l00042">DBusTimeout::interval</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, <a class="el" href="dbus-timeout_8c-source.html#l00041">DBusTimeout::refcount</a>, and <a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a>.
<p>
Referenced by <a class="el" href="dbus-pending-call_8c-source.html#l00091">_dbus_pending_call_new_unlocked()</a>.
</div>
</div><p>
<a class="anchor" name="gdf014caa89efb09ae72c300ae5c4fda5"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_ref" ref="gdf014caa89efb09ae72c300ae5c4fda5" args="(DBusTimeout *timeout)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> * _dbus_timeout_ref           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Increments the reference count of a <a class="el" href="structDBusTimeout.html">DBusTimeout</a> object. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout object. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>the timeout object. </dd></dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00092">92</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-timeout_8c-source.html#l00041">DBusTimeout::refcount</a>.
<p>
Referenced by <a class="el" href="dbus-timeout_8c-source.html#l00309">_dbus_timeout_list_add_timeout()</a>.
</div>
</div><p>
<a class="anchor" name="g1b85d28ab11e4e2f8916b786e13dbcc4"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_set_enabled" ref="g1b85d28ab11e4e2f8916b786e13dbcc4" args="(DBusTimeout *timeout, dbus_bool_t enabled)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_set_enabled           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__DBusTypes.html#g39c9cb0f3a2a8ad6f55cc4855d035349">dbus_bool_t</a>&nbsp;</td>
          <td class="paramname"> <em>enabled</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Changes the timeout's enabled-ness. 
<p>
Note that you should use <a class="el" href="group__DBusConnectionInternals.html#g165dcfd8b995ff0edd19aebcf3e1a61a">_dbus_connection_toggle_timeout_unlocked()</a> etc. instead, if the timeout is passed out to an application main loop. i.e. you can't use this function in the D-Bus library, it's only used in the message bus daemon implementation.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>enabled</em>&nbsp;</td><td><a class="el" href="group__DBusMacros.html#ga8cecfc5c5c054d2875c03e77b7be15d">TRUE</a> if timeout should be enabled. </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00152">152</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-timeout_8c-source.html#l00050">DBusTimeout::enabled</a>, and <a class="el" href="group__DBusMacros.html#ga93f0eb578d23995850d61f7d61c55c1">FALSE</a>.
</div>
</div><p>
<a class="anchor" name="gdbd32136416a555ad737b533c8e713ef"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_set_interval" ref="gdbd32136416a555ad737b533c8e713ef" args="(DBusTimeout *timeout, int interval)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_set_interval           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>interval</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Changes the timeout interval. 
<p>
Note that you have to disable and re-enable the timeout using the timeout toggle function (<a class="el" href="group__DBusConnectionInternals.html#g165dcfd8b995ff0edd19aebcf3e1a61a">_dbus_connection_toggle_timeout_unlocked()</a> etc.) to notify the application of this change.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>interval</em>&nbsp;</td><td>the new interval </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00133">133</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-internals_8h-source.html#l00109">_dbus_assert</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00042">DBusTimeout::interval</a>.
</div>
</div><p>
<a class="anchor" name="gea6359793576a2eec42e27267bae7bbd"></a><!-- doxytag: member="dbus-timeout.c::_dbus_timeout_unref" ref="gea6359793576a2eec42e27267bae7bbd" args="(DBusTimeout *timeout)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void _dbus_timeout_unref           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structDBusTimeout.html">DBusTimeout</a> *&nbsp;</td>
          <td class="paramname"> <em>timeout</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Decrements the reference count of a <a class="el" href="structDBusTimeout.html">DBusTimeout</a> object and finalizes the object if the count reaches zero. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>timeout</em>&nbsp;</td><td>the timeout object. </td></tr>
  </table>
</dl>

<p>
Definition at line <a class="el" href="dbus-timeout_8c-source.html#l00106">106</a> of file <a class="el" href="dbus-timeout_8c-source.html">dbus-timeout.c</a>.
<p>
References <a class="el" href="dbus-internals_8h-source.html#l00109">_dbus_assert</a>, <a class="el" href="dbus-memory_8c-source.html#l00617">dbus_free()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00445">dbus_timeout_set_data()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00046">DBusTimeout::free_handler_data_function</a>, <a class="el" href="dbus-timeout_8c-source.html#l00045">DBusTimeout::handler_data</a>, <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00041">DBusTimeout::refcount</a>.
<p>
Referenced by <a class="el" href="dbus-timeout_8c-source.html#l00309">_dbus_timeout_list_add_timeout()</a>, <a class="el" href="dbus-timeout_8c-source.html#l00210">_dbus_timeout_list_free()</a>, and <a class="el" href="dbus-timeout_8c-source.html#l00339">_dbus_timeout_list_remove_timeout()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Mon Dec 14 22:26:15 2009 for D-Bus by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>

Anon7 - 2021