Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > contrib-backports > by-pkgid > 4f5f2dc0f55b453456458df885792b0b > files > 299

ucommon-doc-5.0.4-1mdv2010.2.i586.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ucommon: ucommon::SharedObject 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.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.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>Data&nbsp;Structures</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>Data&nbsp;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&nbsp;Structure&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="a00208.html">ucommon</a>::<a class="el" href="a00126.html">SharedObject</a>
  </div>
</div>
<div class="contents">
<h1>ucommon::SharedObject Class Reference</h1><!-- doxytag: class="ucommon::SharedObject" -->
<p>Shared singleton object.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00202_source.html">thread.h</a>&gt;</code></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0beffee2fbccd3cd207390c0e2ebe72e"></a><!-- doxytag: member="ucommon::SharedObject::~SharedObject" ref="a0beffee2fbccd3cd207390c0e2ebe72e" args="()" -->
virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00126.html#a0beffee2fbccd3cd207390c0e2ebe72e">~SharedObject</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allows inherited virtual. <br/></td></tr>
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00126.html#aea5c4bc297a817bed52045c3b8659528">commit</a> (<a class="el" href="a00127.html">SharedPointer</a> *<a class="el" href="a00110.html">pointer</a>)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Commit is called when a shared singleton is accepted and replaces a prior instance managed by a shared pointer.  <a href="#aea5c4bc297a817bed52045c3b8659528"></a><br/></td></tr>
<tr><td colspan="2"><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8e79bb04903b0ca2802d7c6fcb145e03"></a><!-- doxytag: member="ucommon::SharedObject::SharedPointer" ref="a8e79bb04903b0ca2802d7c6fcb145e03" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>SharedPointer</b></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Shared singleton object. </p>
<p>A shared singleton object is a special kind of object that may be shared by multiple threads but which only one active instance is allowed to exist. The shared object is managed by the templated shared pointer class, and is meant to be inherited as a base class for the derived shared singleton type. </p>
<dl class="author"><dt><b>Author:</b></dt><dd>David Sugar &lt;<a href="mailto:dyfet@gnutelephony.org">dyfet@gnutelephony.org</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="a00202_source.html#l01409">1409</a> of file <a class="el" href="a00202_source.html">thread.h</a>.</p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aea5c4bc297a817bed52045c3b8659528"></a><!-- doxytag: member="ucommon::SharedObject::commit" ref="aea5c4bc297a817bed52045c3b8659528" args="(SharedPointer *pointer)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void ucommon::SharedObject::commit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00127.html">SharedPointer</a> *&nbsp;</td>
          <td class="paramname"> <em>pointer</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Commit is called when a shared singleton is accepted and replaces a prior instance managed by a shared pointer. </p>
<p>Commit occurs when replace is called on the shared pointer, and is assured to happen only when no threads are accessing either the current or the prior instance that was previously protected by the pointer. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pointer</em>&nbsp;</td><td>that now holds the object. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>ucommon/<a class="el" href="a00202_source.html">thread.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Thu Jul 14 16:39:57 2011 for ucommon by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>