Sophie

Sophie

distrib > Mageia > 1 > i586 > by-pkgid > 64656f00434e190abe8506174ca339ed > files > 524

ucommon-doc-4.3.1-1.mga1.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: sparse_array Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">ucommon</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;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 id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('a00144.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<h1>sparse_array Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="sparse_array" -->
<p>A sparse array of managed objects.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00191_source.html">object.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for sparse_array:</div>
<div class="dyncontent">
<div class="center"><img src="a00464.png" border="0" usemap="#sparse__array_inherit__map" alt="Inheritance graph"/></div>
<map name="sparse__array_inherit__map" id="sparse__array_inherit__map">
<area shape="rect" id="node3" href="a00118.html" title="Generate a typed sparse managed object array." alt="" coords="11,80,141,107"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for sparse_array:</div>
<div class="dyncontent">
<div class="center"><img src="a00465.png" border="0" usemap="#sparse__array_coll__map" alt="Collaboration graph"/></div>
<map name="sparse__array_coll__map" id="sparse__array_coll__map">
<area shape="rect" id="node2" href="a00091.html" title="A common base class for all managed objects." alt="" coords="35,5,117,32"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#ab7f8da5e613e788fd054c20b0dc118ec">count</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get count of array elements.  <a href="#ab7f8da5e613e788fd054c20b0dc118ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5cc5509e79e3a88df87184fcb8f5c458"></a><!-- doxytag: member="sparse_array::~sparse_array" ref="a5cc5509e79e3a88df87184fcb8f5c458" args="()" -->
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#a5cc5509e79e3a88df87184fcb8f5c458">~sparse_array</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy sparse array and delete all generated objects. <br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00091.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#a0e218da98cb3bac894d2570cf8350aa5">create</a> (void)=0</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="a00091.html" title="A common base class for all managed objects.">Object</a> factory for creating members of the spare array when they are initially requested.  <a href="#a0e218da98cb3bac894d2570cf8350aa5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00091.html">Object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#a343843e3ebd77614605ab485a728bdc4">get</a> (unsigned offset)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get (reference) an object at a specified offset in the array.  <a href="#a343843e3ebd77614605ab485a728bdc4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c2706412f2f8bd7f64bbf1d612e9284"></a><!-- doxytag: member="sparse_array::purge" ref="a0c2706412f2f8bd7f64bbf1d612e9284" args="(void)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#a0c2706412f2f8bd7f64bbf1d612e9284">purge</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Purge the array by deleting all created objects. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00144.html#a0c9c96a6e8e2cade4c7eb3ebd8f5ace0">sparse_array</a> (unsigned size)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a sparse array of known size.  <a href="#a0c9c96a6e8e2cade4c7eb3ebd8f5ace0"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A sparse array of managed objects. </p>
<p>This might be used as a simple array class for reference counted objects. This class assumes that objects in the array exist when assigned, and that gaps in the array are positions that do not reference any object. Objects are automatically created (create on access/modify when an array position is referenced for the first time. This is an abstract class because it is a type factory for objects who's derived class form constructor is not known in advance and is a helper class for the sarray template. </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="a00191_source.html#l00245">245</a> of file <a class="el" href="a00191_source.html">object.h</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0c9c96a6e8e2cade4c7eb3ebd8f5ace0"></a><!-- doxytag: member="sparse_array::sparse_array" ref="a0c9c96a6e8e2cade4c7eb3ebd8f5ace0" args="(unsigned size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sparse_array::sparse_array </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a sparse array of known size. </p>
<p>No member objects are created until they are referenced. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>of array. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab7f8da5e613e788fd054c20b0dc118ec"></a><!-- doxytag: member="sparse_array::count" ref="ab7f8da5e613e788fd054c20b0dc118ec" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned sparse_array::count </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get count of array elements. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>array elements. </dd></dl>

</div>
</div>
<a class="anchor" id="a0e218da98cb3bac894d2570cf8350aa5"></a><!-- doxytag: member="sparse_array::create" ref="a0e218da98cb3bac894d2570cf8350aa5" args="(void)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00091.html">Object</a>* sparse_array::create </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="a00091.html" title="A common base class for all managed objects.">Object</a> factory for creating members of the spare array when they are initially requested. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>new object. </dd></dl>

</div>
</div>
<a class="anchor" id="a343843e3ebd77614605ab485a728bdc4"></a><!-- doxytag: member="sparse_array::get" ref="a343843e3ebd77614605ab485a728bdc4" args="(unsigned offset)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00091.html">Object</a>* sparse_array::get </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>offset</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get (reference) an object at a specified offset in the array. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">offset</td><td>in array. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>new or existing object. </dd></dl>

<p>Reimplemented in <a class="el" href="a00118.html#a815fe72df8cd1aa6c3faf5f3d8739c58">sarray&lt; T &gt;</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>ucommon/<a class="el" href="a00191_source.html">object.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="a00144.html">sparse_array</a>      </li>
      <li class="footer">Generated on Wed Apr 13 2011 22:39:48 for ucommon by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </li>
    </ul>
  </div>

</body>
</html>