Sophie

Sophie

distrib > Fedora > 14 > i386 > by-pkgid > 598246a3099b0106d22dd5249478d3b7 > files > 69

ccrtp-devel-1.7.1-2.fc12.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ccRTP: MembershipBookkeeping Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>MembershipBookkeeping Class Reference<br>
<small>
[<a class="el" href="group__iqueue.html">Generic RTP input queues.</a>]</small>
</h1><!-- doxytag: class="MembershipBookkeeping" --><!-- doxytag: inherits="SyncSourceHandler,ParticipantHandler,ApplicationHandler,ConflictHandler,Members" -->Controls the group membership in the current session.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="iqueue_8h_source.html">iqueue.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for MembershipBookkeeping:</div>
<div class="dynsection">

<p><center><img src="class_membership_bookkeeping.png" usemap="#MembershipBookkeeping_map" border="0" alt=""></center>
<map name="MembershipBookkeeping_map">
<area href="class_sync_source_handler.html" alt="SyncSourceHandler" shape="rect" coords="0,0,153,24">
<area href="class_participant_handler.html" alt="ParticipantHandler" shape="rect" coords="163,0,316,24">
<area href="class_application_handler.html" alt="ApplicationHandler" shape="rect" coords="326,0,479,24">
<area href="class_conflict_handler.html" alt="ConflictHandler" shape="rect" coords="489,0,642,24">
<area href="class_members.html" alt="Members" shape="rect" coords="652,0,805,24">
<area href="class_incoming_data_queue.html" alt="IncomingDataQueue" shape="rect" coords="326,112,479,136">
<area href="class_r_t_p_data_queue.html" alt="RTPDataQueue" shape="rect" coords="326,168,479,192">
<area href="class_queue_r_t_c_p_manager.html" alt="QueueRTCPManager" shape="rect" coords="244,224,397,248">
<area href="class_r_t_p_duplex.html" alt="RTPDuplex" shape="rect" coords="407,224,560,248">
<area href="class_a_v_p_queue.html" alt="AVPQueue" shape="rect" coords="244,280,397,304">
</map>
</div>

<p>
<a href="class_membership_bookkeeping-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_membership_bookkeeping_1_1_incoming_r_t_p_pkt_link.html">IncomingRTPPktLink</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Incoming RTP data packets control structure within the incoming packet queue class.  <a href="struct_membership_bookkeeping_1_1_incoming_r_t_p_pkt_link.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="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Synchronization Source internal handler within the incoming packets queue.  <a href="struct_membership_bookkeeping_1_1_sync_source_link.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#16aa1d1a8f505c3c17a952ec872bcaac">getDefaultMembersHashSize</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#e0e19e958667bb8bf638f1db14de7e25">MembershipBookkeeping</a> (uint32 initialSize=<a class="el" href="class_membership_bookkeeping.html#53ba5e9495dfdb9ec16c551206796d99">defaultMembersHashSize</a>)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The initial size is a hint to allocate the resources needed in order to keep the members' identifiers and associated information.  <a href="#e0e19e958667bb8bf638f1db14de7e25"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#01a57bbe5175adcf7a79677d6e6a7425">~MembershipBookkeeping</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Purges all RTPSource structures created during the session, as well as the hash table and the list of sources.  <a href="#01a57bbe5175adcf7a79677d6e6a7425"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#38efd69069fee738eff8bb17de488361">getLink</a> (const <a class="el" href="class_sync_source.html">SyncSource</a> &amp;source) const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#d8f223d6677c5656ecf648b4ca250fd4">isMine</a> (const <a class="el" href="class_sync_source.html">SyncSource</a> &amp;source) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get whether a synchronization source is recorded in this membership controller.  <a href="#d8f223d6677c5656ecf648b4ca250fd4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#dba066c0ebf349a07cce67a5f0f39d43">isRegistered</a> (uint32 ssrc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether there is already a synchronizacion source with "ssrc" SSRC identifier.  <a href="#dba066c0ebf349a07cce67a5f0f39d43"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#d1f6257bddecacae2e6e6091ca3139c6">getSourceBySSRC</a> (uint32 ssrc, bool &amp;created)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the description of a source by its <code>ssrc</code> identifier.  <a href="#d1f6257bddecacae2e6e6091ca3139c6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#c1a030a684b25063ab85e0fbae1fa8f5">BYESource</a> (uint32 ssrc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Mark the source identified by <code>ssrc</code> as having sent a BYE packet.  <a href="#c1a030a684b25063ab85e0fbae1fa8f5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#c37a1ac1119520b1a64845b67ab833e5">removeSource</a> (uint32 ssrc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove the description of the source identified by <code>ssrc</code>.  <a href="#c37a1ac1119520b1a64845b67ab833e5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#27e96c52e49965aa6a7ab2c9ae39233f">getFirst</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#4f1d99b0ff59e1be893087b4832abfd7">getLast</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#a9d008b64658b94d2e114c32ece8b70b">getMembersCount</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#4c5325d929921e93ab98272d3e23a180">setMembersCount</a> (uint32 n)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#8449f626c59c5549c2c9e8c79718456f">getSendersCount</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Static Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static const size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#53ba5e9495dfdb9ec16c551206796d99">defaultMembersHashSize</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static const uint32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_membership_bookkeeping.html#07aaed6db929c59a302e9cb68405ef71">SEQNUMMOD</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Controls the group membership in the current session. 
<p>
For now, this class implements only a hash table of members, but its design and relation with other classes is intented to support group membership sampling in case scalability problems arise.<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd>Federico Montesino Pouzols &lt;<a href="mailto:fedemp@altern.org">fedemp@altern.org</a>&gt; </dd></dl>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="e0e19e958667bb8bf638f1db14de7e25"></a><!-- doxytag: member="MembershipBookkeeping::MembershipBookkeeping" ref="e0e19e958667bb8bf638f1db14de7e25" args="(uint32 initialSize=defaultMembersHashSize)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">MembershipBookkeeping::MembershipBookkeeping           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>initialSize</em> = <code><a class="el" href="class_membership_bookkeeping.html#53ba5e9495dfdb9ec16c551206796d99">defaultMembersHashSize</a></code>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The initial size is a hint to allocate the resources needed in order to keep the members' identifiers and associated information. 
<p>
Although ccRTP will reallocate resources when it becomes necessary, a good hint may save a lot of unpredictable time penalties.<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>initialSize</em>&nbsp;</td><td>an estimation of how many participants the session will consist of. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="01a57bbe5175adcf7a79677d6e6a7425"></a><!-- doxytag: member="MembershipBookkeeping::~MembershipBookkeeping" ref="01a57bbe5175adcf7a79677d6e6a7425" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual MembershipBookkeeping::~MembershipBookkeeping           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Purges all RTPSource structures created during the session, as well as the hash table and the list of sources. 
<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="c1a030a684b25063ab85e0fbae1fa8f5"></a><!-- doxytag: member="MembershipBookkeeping::BYESource" ref="c1a030a684b25063ab85e0fbae1fa8f5" args="(uint32 ssrc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MembershipBookkeeping::BYESource           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>ssrc</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Mark the source identified by <code>ssrc</code> as having sent a BYE packet. 
<p>
It is not deleted until a timeout expires, so that in case some packets from this source arrive a bit later the source is not inserted again in the table of known sources.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the source had been previously identified. false if it was not in the table of known sources. </dd></dl>

</div>
</div><p>
<a class="anchor" name="16aa1d1a8f505c3c17a952ec872bcaac"></a><!-- doxytag: member="MembershipBookkeeping::getDefaultMembersHashSize" ref="16aa1d1a8f505c3c17a952ec872bcaac" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t MembershipBookkeeping::getDefaultMembersHashSize           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="27e96c52e49965aa6a7ab2c9ae39233f"></a><!-- doxytag: member="MembershipBookkeeping::getFirst" ref="27e96c52e49965aa6a7ab2c9ae39233f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a>* MembershipBookkeeping::getFirst           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="4f1d99b0ff59e1be893087b4832abfd7"></a><!-- doxytag: member="MembershipBookkeeping::getLast" ref="4f1d99b0ff59e1be893087b4832abfd7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a>* MembershipBookkeeping::getLast           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="38efd69069fee738eff8bb17de488361"></a><!-- doxytag: member="MembershipBookkeeping::getLink" ref="38efd69069fee738eff8bb17de488361" args="(const SyncSource &amp;source) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a>* MembershipBookkeeping::getLink           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_sync_source.html">SyncSource</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>source</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="class_sync_source_handler.html#1f835cb89ba9c5102e948a8c0e0102b2">SyncSourceHandler</a>.</p>

</div>
</div><p>
<a class="anchor" name="a9d008b64658b94d2e114c32ece8b70b"></a><!-- doxytag: member="MembershipBookkeeping::getMembersCount" ref="a9d008b64658b94d2e114c32ece8b70b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32 MembershipBookkeeping::getMembersCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="8449f626c59c5549c2c9e8c79718456f"></a><!-- doxytag: member="MembershipBookkeeping::getSendersCount" ref="8449f626c59c5549c2c9e8c79718456f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32 MembershipBookkeeping::getSendersCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d1f6257bddecacae2e6e6091ca3139c6"></a><!-- doxytag: member="MembershipBookkeeping::getSourceBySSRC" ref="d1f6257bddecacae2e6e6091ca3139c6" args="(uint32 ssrc, bool &amp;created)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_membership_bookkeeping_1_1_sync_source_link.html">SyncSourceLink</a>* MembershipBookkeeping::getSourceBySSRC           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>ssrc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool &amp;&nbsp;</td>
          <td class="paramname"> <em>created</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the description of a source by its <code>ssrc</code> identifier. 
<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>ssrc</em>&nbsp;</td><td>SSRC identifier, in host order. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>created</em>&nbsp;</td><td>whether a new source has been created. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Pointer to the <a class="el" href="class_sync_source.html" title="Synchronization source in an RTP session.">SyncSource</a> object identified by <code>ssrc</code>. </dd></dl>

</div>
</div><p>
<a class="anchor" name="d8f223d6677c5656ecf648b4ca250fd4"></a><!-- doxytag: member="MembershipBookkeeping::isMine" ref="d8f223d6677c5656ecf648b4ca250fd4" args="(const SyncSource &amp;source) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MembershipBookkeeping::isMine           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_sync_source.html">SyncSource</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>source</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get whether a synchronization source is recorded in this membership controller. 
<p>

</div>
</div><p>
<a class="anchor" name="dba066c0ebf349a07cce67a5f0f39d43"></a><!-- doxytag: member="MembershipBookkeeping::isRegistered" ref="dba066c0ebf349a07cce67a5f0f39d43" args="(uint32 ssrc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MembershipBookkeeping::isRegistered           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>ssrc</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns whether there is already a synchronizacion source with "ssrc" SSRC identifier. 
<p>

</div>
</div><p>
<a class="anchor" name="c37a1ac1119520b1a64845b67ab833e5"></a><!-- doxytag: member="MembershipBookkeeping::removeSource" ref="c37a1ac1119520b1a64845b67ab833e5" args="(uint32 ssrc)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool MembershipBookkeeping::removeSource           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>ssrc</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Remove the description of the source identified by <code>ssrc</code>. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>whether the source has been actually removed or it did not exist. </dd></dl>

</div>
</div><p>
<a class="anchor" name="4c5325d929921e93ab98272d3e23a180"></a><!-- doxytag: member="MembershipBookkeeping::setMembersCount" ref="4c5325d929921e93ab98272d3e23a180" args="(uint32 n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void MembershipBookkeeping::setMembersCount           </td>
          <td>(</td>
          <td class="paramtype">uint32&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="class_members.html#12075b685cfc7b7aedfe36751e555e1b">Members</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="53ba5e9495dfdb9ec16c551206796d99"></a><!-- doxytag: member="MembershipBookkeeping::defaultMembersHashSize" ref="53ba5e9495dfdb9ec16c551206796d99" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const size_t <a class="el" href="class_membership_bookkeeping.html#53ba5e9495dfdb9ec16c551206796d99">MembershipBookkeeping::defaultMembersHashSize</a><code> [static, protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="07aaed6db929c59a302e9cb68405ef71"></a><!-- doxytag: member="MembershipBookkeeping::SEQNUMMOD" ref="07aaed6db929c59a302e9cb68405ef71" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const uint32 <a class="el" href="class_membership_bookkeeping.html#07aaed6db929c59a302e9cb68405ef71">MembershipBookkeeping::SEQNUMMOD</a><code> [static, protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="iqueue_8h_source.html">iqueue.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Jul 24 21:42:25 2009 for ccRTP by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>