|
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 : /usr/share/devhelp/books/dbus/api/ |
Upload File : |
<!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: DBusHashTable Struct 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.4.7 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li id="current"><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="functions.html"><span>Data Fields</span></a></li>
</ul></div>
<h1>DBusHashTable Struct Reference<br>
<small>
[<a class="el" href="group__DBusHashTableInternals.html">Hash table implementation details</a>]</small>
</h1><!-- doxytag: class="DBusHashTable" -->Internals of <a class="el" href="structDBusHashTable.html">DBusHashTable</a>.
<a href="#_details">More...</a>
<p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Fields</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb2b7bcba65da77f7ecf67da355ff770"></a><!-- doxytag: member="DBusHashTable::refcount" ref="cb2b7bcba65da77f7ecf67da355ff770" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#cb2b7bcba65da77f7ecf67da355ff770">refcount</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reference count. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structDBusHashEntry.html">DBusHashEntry</a> ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#1f974e2cb3038685b3edf493406ad99d">buckets</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Pointer to bucket array. <a href="#1f974e2cb3038685b3edf493406ad99d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f71877d64657c34a783caf6b82b016e9"></a><!-- doxytag: member="DBusHashTable::static_buckets" ref="f71877d64657c34a783caf6b82b016e9" args="[DBUS_SMALL_HASH_TABLE]" -->
<a class="el" href="structDBusHashEntry.html">DBusHashEntry</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#f71877d64657c34a783caf6b82b016e9">static_buckets</a> [DBUS_SMALL_HASH_TABLE]</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Bucket array used for small tables (to avoid mallocs and frees). <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2dd2b9389d65d30e31e596dd786a9aa7"></a><!-- doxytag: member="DBusHashTable::n_buckets" ref="2dd2b9389d65d30e31e596dd786a9aa7" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#2dd2b9389d65d30e31e596dd786a9aa7">n_buckets</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Total number of buckets allocated at **buckets. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ffbf11a9c3dd72d55b7976891f7b4650"></a><!-- doxytag: member="DBusHashTable::n_entries" ref="ffbf11a9c3dd72d55b7976891f7b4650" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#ffbf11a9c3dd72d55b7976891f7b4650">n_entries</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Total number of entries present in table. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29c408110c0d189d89b60c6c01cfb0cf"></a><!-- doxytag: member="DBusHashTable::hi_rebuild_size" ref="29c408110c0d189d89b60c6c01cfb0cf" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#29c408110c0d189d89b60c6c01cfb0cf">hi_rebuild_size</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Enlarge table when n_entries gets to be this large. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae6ea7cb15d618866854b2b6bd468419"></a><!-- doxytag: member="DBusHashTable::lo_rebuild_size" ref="ae6ea7cb15d618866854b2b6bd468419" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#ae6ea7cb15d618866854b2b6bd468419">lo_rebuild_size</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Shrink table when n_entries gets below this. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#2e7e7b92bb9633ab95cfaa592b89025c">down_shift</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Shift count used in hashing function. <a href="#2e7e7b92bb9633ab95cfaa592b89025c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec1230eebce3d256ca9ceebe372647e9"></a><!-- doxytag: member="DBusHashTable::mask" ref="ec1230eebce3d256ca9ceebe372647e9" args="" -->
int </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#ec1230eebce3d256ca9ceebe372647e9">mask</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Mask value used in hashing function. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="28f326a2947b6be0b0b852db376a1092"></a><!-- doxytag: member="DBusHashTable::key_type" ref="28f326a2947b6be0b0b852db376a1092" args="" -->
<a class="el" href="group__DBusHashTable.html#gb0ab9767ffa5b6720a13b3d741630852">DBusHashType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#28f326a2947b6be0b0b852db376a1092">key_type</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Type of keys used in this table. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b98bafddf1b1ce1dad01c5595e278e35"></a><!-- doxytag: member="DBusHashTable::find_function" ref="b98bafddf1b1ce1dad01c5595e278e35" args="" -->
<a class="el" href="group__DBusHashTableInternals.html#gf7aa30377ff1074657bfef5e834bf931">DBusFindEntryFunction</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#b98bafddf1b1ce1dad01c5595e278e35">find_function</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Function for finding entries. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5f6541574ea8e6bedd80773dce8e52a6"></a><!-- doxytag: member="DBusHashTable::free_key_function" ref="5f6541574ea8e6bedd80773dce8e52a6" args="" -->
<a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#5f6541574ea8e6bedd80773dce8e52a6">free_key_function</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Function to free keys. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fbb42b5326b9c79352b168eace1687ca"></a><!-- doxytag: member="DBusHashTable::free_value_function" ref="fbb42b5326b9c79352b168eace1687ca" args="" -->
<a class="el" href="group__DBusMemory.html#g8792ec2b2b8626ca28022faf51ec415a">DBusFreeFunction</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#fbb42b5326b9c79352b168eace1687ca">free_value_function</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Function to free values. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1224e6c3c632afb265b78f8f6e30f97"></a><!-- doxytag: member="DBusHashTable::entry_pool" ref="d1224e6c3c632afb265b78f8f6e30f97" args="" -->
<a class="el" href="structDBusMemPool.html">DBusMemPool</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structDBusHashTable.html#d1224e6c3c632afb265b78f8f6e30f97">entry_pool</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Memory pool for hash entries. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Internals of <a class="el" href="structDBusHashTable.html">DBusHashTable</a>.
<p>
Hash table internals. Hash tables are opaque objects, they must be used via accessor functions.
<p>
<p>
Definition at line <a class="el" href="dbus-hash_8c-source.html#l00167">167</a> of file <a class="el" href="dbus-hash_8c-source.html">dbus-hash.c</a>.<hr><h2>Field Documentation</h2>
<a class="anchor" name="1f974e2cb3038685b3edf493406ad99d"></a><!-- doxytag: member="DBusHashTable::buckets" ref="1f974e2cb3038685b3edf493406ad99d" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structDBusHashEntry.html">DBusHashEntry</a>** <a class="el" href="structDBusHashTable.html#1f974e2cb3038685b3edf493406ad99d">DBusHashTable::buckets</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Pointer to bucket array.
<p>
Each element points to first entry in bucket's hash chain, or <a class="el" href="group__DBusMacros.html#g070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.
<p>
Definition at line <a class="el" href="dbus-hash_8c-source.html#l00170">170</a> of file <a class="el" href="dbus-hash_8c-source.html">dbus-hash.c</a>.
<p>
Referenced by <a class="el" href="dbus-hash_8c-source.html#l00773">_dbus_hash_iter_lookup()</a>, <a class="el" href="dbus-hash_8c-source.html#l00556">_dbus_hash_iter_next()</a>, <a class="el" href="dbus-hash_8c-source.html#l00292">_dbus_hash_table_new()</a>, and <a class="el" href="dbus-hash_8c-source.html#l00374">_dbus_hash_table_unref()</a>.
</div>
</div><p>
<a class="anchor" name="2e7e7b92bb9633ab95cfaa592b89025c"></a><!-- doxytag: member="DBusHashTable::down_shift" ref="2e7e7b92bb9633ab95cfaa592b89025c" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="structDBusHashTable.html#2e7e7b92bb9633ab95cfaa592b89025c">DBusHashTable::down_shift</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Shift count used in hashing function.
<p>
Designed to use high- order bits of randomized keys.
<p>
Definition at line <a class="el" href="dbus-hash_8c-source.html#l00190">190</a> of file <a class="el" href="dbus-hash_8c-source.html">dbus-hash.c</a>.
<p>
Referenced by <a class="el" href="dbus-hash_8c-source.html#l00292">_dbus_hash_table_new()</a>.
</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="dbus-hash_8c-source.html">dbus-hash.c</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Mon Dec 14 22:26:15 2009 for D-Bus by
<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>