Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > eeacaa4eb55fa544d622989e42fc27b1 > files > 408

libyate-devel-2.0.0-2mdv2009.1.i586.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>Yate: RefObject Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</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>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</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 class="navpath"><a class="el" href="namespaceTelEngine.html">TelEngine</a>::<a class="el" href="classTelEngine_1_1RefObject.html">RefObject</a>
  </div>
</div>
<div class="contents">
<h1>RefObject Class Reference</h1><!-- doxytag: class="TelEngine::RefObject" --><!-- doxytag: inherits="TelEngine::GenObject" --><code>#include &lt;<a class="el" href="yateclass_8h-source.html">yateclass.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for RefObject:</div>
<div class="dynsection">

<p><center><img src="classTelEngine_1_1RefObject.png" usemap="#RefObject_map" border="0" alt=""></center>
<map name="RefObject_map">
<area href="classTelEngine_1_1GenObject.html" alt="GenObject" shape="rect" coords="0,0,129,24">
<area href="classTelEngine_1_1AnalogLine.html" alt="AnalogLine" shape="rect" coords="139,112,268,136">
<area href="classTelEngine_1_1Array.html" alt="Array" shape="rect" coords="139,168,268,192">
<area href="classTelEngine_1_1CallEndpoint.html" alt="CallEndpoint" shape="rect" coords="139,224,268,248">
<area href="classTelEngine_1_1ChanAssist.html" alt="ChanAssist" shape="rect" coords="139,280,268,304">
<area href="classTelEngine_1_1ClientAccount.html" alt="ClientAccount" shape="rect" coords="139,336,268,360">
<area href="classTelEngine_1_1ClientContact.html" alt="ClientContact" shape="rect" coords="139,392,268,416">
<area href="classTelEngine_1_1ClientResource.html" alt="ClientResource" shape="rect" coords="139,448,268,472">
<area href="classTelEngine_1_1DataEndpoint.html" alt="DataEndpoint" shape="rect" coords="139,504,268,528">
<area href="classTelEngine_1_1DataNode.html" alt="DataNode" shape="rect" coords="139,560,268,584">
<area href="classTelEngine_1_1DurationUpdate.html" alt="DurationUpdate" shape="rect" coords="139,616,268,640">
<area href="classTelEngine_1_1IAXFrame.html" alt="IAXFrame" shape="rect" coords="139,672,268,696">
<area href="classTelEngine_1_1IAXInfoElement.html" alt="IAXInfoElement" shape="rect" coords="139,728,268,752">
<area href="classTelEngine_1_1IAXMetaTrunkFrame.html" alt="IAXMetaTrunkFrame" shape="rect" coords="139,784,268,808">
<area href="classTelEngine_1_1IAXTransaction.html" alt="IAXTransaction" shape="rect" coords="139,840,268,864">
<area href="classTelEngine_1_1ISDNFrame.html" alt="ISDNFrame" shape="rect" coords="139,896,268,920">
<area href="classTelEngine_1_1JBEvent.html" alt="JBEvent" shape="rect" coords="139,952,268,976">
<area href="classTelEngine_1_1JBStream.html" alt="JBStream" shape="rect" coords="139,1008,268,1032">
<area href="classTelEngine_1_1JGSession.html" alt="JGSession" shape="rect" coords="139,1064,268,1088">
<area href="classTelEngine_1_1JGTransport.html" alt="JGTransport" shape="rect" coords="139,1120,268,1144">
<area href="classTelEngine_1_1JIDFeature.html" alt="JIDFeature" shape="rect" coords="139,1176,268,1200">
<area href="classTelEngine_1_1JIDIdentity.html" alt="JIDIdentity" shape="rect" coords="139,1232,268,1256">
<area href="classTelEngine_1_1JIDResource.html" alt="JIDResource" shape="rect" coords="139,1288,268,1312">
<area href="classTelEngine_1_1MGCPEndpoint.html" alt="MGCPEndpoint" shape="rect" coords="139,1344,268,1368">
<area href="classTelEngine_1_1MGCPMessage.html" alt="MGCPMessage" shape="rect" coords="139,1400,268,1424">
<area href="classTelEngine_1_1MGCPTransaction.html" alt="MGCPTransaction" shape="rect" coords="139,1456,268,1480">
<area href="classTelEngine_1_1SignallingCall.html" alt="SignallingCall" shape="rect" coords="139,1512,268,1536">
<area href="classTelEngine_1_1SignallingCircuit.html" alt="SignallingCircuit" shape="rect" coords="139,1568,268,1592">
<area href="classTelEngine_1_1SignallingMessage.html" alt="SignallingMessage" shape="rect" coords="139,1624,268,1648">
<area href="classTelEngine_1_1SIPMessage.html" alt="SIPMessage" shape="rect" coords="139,1680,268,1704">
<area href="classTelEngine_1_1SIPTransaction.html" alt="SIPTransaction" shape="rect" coords="139,1736,268,1760">
<area href="classTelEngine_1_1XMLElementOut.html" alt="XMLElementOut" shape="rect" coords="139,1792,268,1816">
<area href="classTelEngine_1_1XMPPServerInfo.html" alt="XMPPServerInfo" shape="rect" coords="139,1848,268,1872">
<area href="classTelEngine_1_1XMPPUser.html" alt="XMPPUser" shape="rect" coords="139,1904,268,1928">
<area href="classTelEngine_1_1XMPPUserRoster.html" alt="XMPPUserRoster" shape="rect" coords="139,1960,268,1984">
</map>
</div>

<p>
<a href="classTelEngine_1_1RefObject-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public 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="classTelEngine_1_1RefObject.html#54e7592a1879afe888737819461f0bd6">RefObject</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#926c5f9b99365954b5d7865b52e9bb4b">~RefObject</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#2dba76da1e354723fa3706afa44e913d">alive</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#fd5b5f6e5ffcc86fbb0f0707b6144f8d">ref</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#de4d3f74b88a085b2e905c3a108c57f6">deref</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#0726c0740f2bb623637837b2dddc035a">refcount</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#757ca89703a72ac56715edb379958716">destruct</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classTelEngine_1_1Mutex.html">Mutex</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#61d56d4e0cc0dd5c3c4df10ab65fff17">refMutex</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#0a76988705940cb01d55d360049f57e4">zeroRefs</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#928bb60a116c681cfb21402ceb2cf178">zeroRefsTest</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#d2ed9cb956842e67d1d4fa352279320b">refInternal</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#1d5f0ab3ebf91381a8b3ccb698f606e4">resurrect</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1RefObject.html#29e169c1327513d2db6127ddb301dc19">destroyed</a> ()</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A reference counted object. Whenever using multiple inheritance you should inherit this class virtually. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="54e7592a1879afe888737819461f0bd6"></a><!-- doxytag: member="TelEngine::RefObject::RefObject" ref="54e7592a1879afe888737819461f0bd6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classTelEngine_1_1RefObject.html">RefObject</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The constructor initializes the reference counter to 1! Use <a class="el" href="classTelEngine_1_1RefObject.html#de4d3f74b88a085b2e905c3a108c57f6">deref()</a> to destruct the object when safe 
</div>
</div><p>
<a class="anchor" name="926c5f9b99365954b5d7865b52e9bb4b"></a><!-- doxytag: member="TelEngine::RefObject::~RefObject" ref="926c5f9b99365954b5d7865b52e9bb4b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual ~<a class="el" href="classTelEngine_1_1RefObject.html">RefObject</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. 
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="2dba76da1e354723fa3706afa44e913d"></a><!-- doxytag: member="TelEngine::RefObject::alive" ref="2dba76da1e354723fa3706afa44e913d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool alive           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if the object is still referenced and safe to access. Note that you should not trust this result unless the object is locked by other means. <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object is referenced and safe to access </dd></dl>

<p>Reimplemented from <a class="el" href="classTelEngine_1_1GenObject.html#2dba76da1e354723fa3706afa44e913d">GenObject</a>.</p>

</div>
</div><p>
<a class="anchor" name="de4d3f74b88a085b2e905c3a108c57f6"></a><!-- doxytag: member="TelEngine::RefObject::deref" ref="de4d3f74b88a085b2e905c3a108c57f6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool deref           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Decrements the reference counter, destroys the object if it reaches zero <pre>
 // Deref this object, return quickly if the object was deleted
 if (<a class="el" href="classTelEngine_1_1RefObject.html#de4d3f74b88a085b2e905c3a108c57f6">deref()</a>) return;
 </pre> <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object may have been deleted, false if it still exists and is safe to access </dd></dl>

</div>
</div><p>
<a class="anchor" name="29e169c1327513d2db6127ddb301dc19"></a><!-- doxytag: member="TelEngine::RefObject::destroyed" ref="29e169c1327513d2db6127ddb301dc19" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void destroyed           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Pre-destruction notification, called just before the object is deleted. Unlike in the destructor it is safe to call virtual methods here. Reimplementing this method allows to perform any object cleanups. 
<p>Reimplemented in <a class="el" href="classTelEngine_1_1DataConsumer.html#29e169c1327513d2db6127ddb301dc19">DataConsumer</a>, <a class="el" href="classTelEngine_1_1DataSource.html#29e169c1327513d2db6127ddb301dc19">DataSource</a>, <a class="el" href="classTelEngine_1_1ThreadedSource.html#29e169c1327513d2db6127ddb301dc19">ThreadedSource</a>, <a class="el" href="classTelEngine_1_1DataEndpoint.html#29e169c1327513d2db6127ddb301dc19">DataEndpoint</a>, <a class="el" href="classTelEngine_1_1CallEndpoint.html#29e169c1327513d2db6127ddb301dc19">CallEndpoint</a>, <a class="el" href="classTelEngine_1_1ClientChannel.html#29e169c1327513d2db6127ddb301dc19">ClientChannel</a>, <a class="el" href="classTelEngine_1_1ClientAccount.html#29e169c1327513d2db6127ddb301dc19">ClientAccount</a>, <a class="el" href="classTelEngine_1_1ClientContact.html#29e169c1327513d2db6127ddb301dc19">ClientContact</a>, <a class="el" href="classTelEngine_1_1DurationUpdate.html#29e169c1327513d2db6127ddb301dc19">DurationUpdate</a>, <a class="el" href="classTelEngine_1_1JBStream.html#29e169c1327513d2db6127ddb301dc19">JBStream</a>, <a class="el" href="classTelEngine_1_1JGSession.html#29e169c1327513d2db6127ddb301dc19">JGSession</a>, <a class="el" href="classTelEngine_1_1MGCPTransaction.html#29e169c1327513d2db6127ddb301dc19">MGCPTransaction</a>, and <a class="el" href="classTelEngine_1_1AnalogLine.html#29e169c1327513d2db6127ddb301dc19">AnalogLine</a>.</p>

<p>Referenced by <a class="el" href="yatecbase_8h-source.html#l02608">DurationUpdate::destroyed()</a>.</p>

</div>
</div><p>
<a class="anchor" name="757ca89703a72ac56715edb379958716"></a><!-- doxytag: member="TelEngine::RefObject::destruct" ref="757ca89703a72ac56715edb379958716" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void destruct           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Refcounted objects should just have the counter decremented. That will destroy them only when the refcount reaches zero. 
<p>Reimplemented from <a class="el" href="classTelEngine_1_1GenObject.html#757ca89703a72ac56715edb379958716">GenObject</a>.</p>

</div>
</div><p>
<a class="anchor" name="fd5b5f6e5ffcc86fbb0f0707b6144f8d"></a><!-- doxytag: member="TelEngine::RefObject::ref" ref="fd5b5f6e5ffcc86fbb0f0707b6144f8d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ref           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Increments the reference counter if not already zero <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object was successfully referenced and is safe to access </dd></dl>

<p>Referenced by <a class="el" href="yatesig_8h-source.html#l02640">AnalogLineEvent::AnalogLineEvent()</a>.</p>

</div>
</div><p>
<a class="anchor" name="0726c0740f2bb623637837b2dddc035a"></a><!-- doxytag: member="TelEngine::RefObject::refcount" ref="0726c0740f2bb623637837b2dddc035a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int refcount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the current value of the reference counter <dl class="return" compact><dt><b>Returns:</b></dt><dd>The value of the reference counter </dd></dl>

</div>
</div><p>
<a class="anchor" name="d2ed9cb956842e67d1d4fa352279320b"></a><!-- doxytag: member="TelEngine::RefObject::refInternal" ref="d2ed9cb956842e67d1d4fa352279320b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool refInternal           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Increments the reference counter if not already zero without locking the mutex. The caller must make sure to hold the <a class="el" href="classTelEngine_1_1RefObject.html#61d56d4e0cc0dd5c3c4df10ab65fff17">refMutex()</a> locked. <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object was successfully referenced </dd></dl>

</div>
</div><p>
<a class="anchor" name="61d56d4e0cc0dd5c3c4df10ab65fff17"></a><!-- doxytag: member="TelEngine::RefObject::refMutex" ref="61d56d4e0cc0dd5c3c4df10ab65fff17" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classTelEngine_1_1Mutex.html">Mutex</a>&amp; refMutex           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Retrieve the mutex that protects <a class="el" href="classTelEngine_1_1RefObject.html#fd5b5f6e5ffcc86fbb0f0707b6144f8d">ref()</a> and <a class="el" href="classTelEngine_1_1RefObject.html#de4d3f74b88a085b2e905c3a108c57f6">deref()</a> for all objects <dl class="return" compact><dt><b>Returns:</b></dt><dd>Reference to the global mutex used for all counter operations </dd></dl>

</div>
</div><p>
<a class="anchor" name="1d5f0ab3ebf91381a8b3ccb698f606e4"></a><!-- doxytag: member="TelEngine::RefObject::resurrect" ref="1d5f0ab3ebf91381a8b3ccb698f606e4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool resurrect           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Bring the object back alive by setting the reference counter to one. Note that it works only if the counter was zero previously <dl class="return" compact><dt><b>Returns:</b></dt><dd>True if the object was resurrected - its name may be Lazarus ;-) </dd></dl>

</div>
</div><p>
<a class="anchor" name="0a76988705940cb01d55d360049f57e4"></a><!-- doxytag: member="TelEngine::RefObject::zeroRefs" ref="0a76988705940cb01d55d360049f57e4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void zeroRefs           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This method is called when the reference count reaches zero after unlocking the mutex if the call to <a class="el" href="classTelEngine_1_1RefObject.html#928bb60a116c681cfb21402ceb2cf178">zeroRefsTest()</a> returned true. The default behaviour is to delete the object. 
<p>Reimplemented in <a class="el" href="classTelEngine_1_1Channel.html#0a76988705940cb01d55d360049f57e4">Channel</a>.</p>

</div>
</div><p>
<a class="anchor" name="928bb60a116c681cfb21402ceb2cf178"></a><!-- doxytag: member="TelEngine::RefObject::zeroRefsTest" ref="928bb60a116c681cfb21402ceb2cf178" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool zeroRefsTest           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This method is called when the reference count reaches zero just before calling <a class="el" href="classTelEngine_1_1RefObject.html#0a76988705940cb01d55d360049f57e4">zeroRefs()</a> with the non-recursive mutex still locked. Extra care must be taken to prevent deadlocks, normally the code should only change some variables and return. The default implementation just returns true. <dl class="return" compact><dt><b>Returns:</b></dt><dd>True to call <a class="el" href="classTelEngine_1_1RefObject.html#0a76988705940cb01d55d360049f57e4">zeroRefs()</a> after releasing the mutex </dd></dl>

<p>Reimplemented in <a class="el" href="classTelEngine_1_1ThreadedSource.html#928bb60a116c681cfb21402ceb2cf178">ThreadedSource</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="yateclass_8h-source.html">yateclass.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Dec 7 21:36:11 2008 for Yate by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address>
</body>
</html>