Share Library (C++)
File detail
Source code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>ShareLibrary: Share::RelocPtr< T > Class Template 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.2 -->
<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><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>
<li><a href="pages.html"><span>Related Pages</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul>
</div>
<div class="nav">
<a class="el" href="namespaceShare.html">Share</a>::<a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a></div>
<h1>Share::RelocPtr< T > Class Template Reference<br>
<small>
[<a class="el" href="group__core.html">Core library classes</a>]</small>
</h1><!-- doxytag: class="Share::RelocPtr" --><!-- doxytag: inherits="Share::SharedObject" --><b>Relocable</b> <b>pointer</b> type.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="sharelib_8h-source.html">sharelib.h</a>></code>
<p>
Inheritance diagram for Share::RelocPtr< T >:<p><center><img src="classShare_1_1RelocPtr__inherit__graph.png" border="0" usemap="#Share_1_1RelocPtr_3_01T_01_4__inherit__map" alt="Inheritance graph"></center>
<map name="Share_1_1RelocPtr_3_01T_01_4__inherit__map">
<area shape="rect" href="classShare_1_1SharedObject.html" title="Shareable object base class." alt="" coords="7,5,172,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for Share::RelocPtr< T >:<p><center><img src="classShare_1_1RelocPtr__coll__graph.png" border="0" usemap="#Share_1_1RelocPtr_3_01T_01_4__coll__map" alt="Collaboration graph"></center>
<map name="Share_1_1RelocPtr_3_01T_01_4__coll__map">
<area shape="rect" href="classShare_1_1SharedObject.html" title="Shareable object base class." alt="" coords="7,5,172,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classShare_1_1RelocPtr-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 Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef T </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#aba42401e75227f7bd93152000d12fa8">value_type</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#cb1688001f5bb92b00ecd5dba54673a8">size_type</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef ptrdiff_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef T * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#69b5a6923a000843700694fe789d0f28">pointer</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const T * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#bde406e9ff03aa165a135828ec52e221">const_pointer</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structShare_1_1TVoidPointer.html">TVoidPointer</a>< T <br>
>::<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight"><code>void</code> pointer type derived from template parameter <a href="#a4a5ced1a749cd94c87d4e6e34839470"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structShare_1_1TVoidPointer.html">TVoidPointer</a>< T <br>
>::<a class="el" href="classShare_1_1RelocPtr.html#dcdbc046f89ffaed230b90997e510cdf">const_void_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#dcdbc046f89ffaed230b90997e510cdf">const_void_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight"><code>const</code> <code>void</code> pointer type derived from template parameter <a href="#dcdbc046f89ffaed230b90997e510cdf"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structShare_1_1TReference.html">TReference</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reference type derived from template parameter. <a href="#6213f8eb9c44c3da5adcf58519409b0a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structShare_1_1TReference.html">TReference</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#0b7423aa548f1f6ca909804110d71502">const_reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#0b7423aa548f1f6ca909804110d71502">const_reference</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Const reference type derived from template parameter. <a href="#0b7423aa548f1f6ca909804110d71502"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">Relocator::relative_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Relative pointer type. <a href="#ead37d6700e2c7563388efddd0bccd95"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">Relocator::relative_const_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#3e44d26a099cb9791ee4f23ef4bb4272">relative_const_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Relative const pointer type. <a href="#3e44d26a099cb9791ee4f23ef4bb4272"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::random_access_iterator_tag </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#5b4e77ee40cf5449908a60c75bf95ad5">iterator_category</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">STL iterator category. <a href="#5b4e77ee40cf5449908a60c75bf95ad5"></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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#90ce59bdd82de1e60925f1993bf884e5">RelocPtr</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#a2de8a45c6f22645d1e6464fb6f1f3eb">RelocPtr</a> (<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> abs)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#961fd4342f9ca6b7584ef5d2daccc08d">RelocPtr</a> (<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> abs, void *base)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#c6dd4b3f7f955dd74b9d19db4c86f217">RelocPtr</a> (const <a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> &src)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#d4f8ead29bed4025ce7f36dad7265937">operator=</a> (const <a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> &src)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#dcc79de8edd9caa0b9ddf0581455b67c">operator=</a> (<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> abs)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html#69b5a6923a000843700694fe789d0f28">pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#42e482608930555f9a1d1b0a886c5ea3">operator-></a> () const</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#6feb652c014b72f91f4f1d2f96ca0834">operator pointer</a> () const</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Implicit conversion to native pointer. <a href="#6feb652c014b72f91f4f1d2f96ca0834"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#f0112fb58cd3817e0c3075af761f19a1">operator[]</a> (<a class="el" href="classShare_1_1RelocPtr.html#cb1688001f5bb92b00ecd5dba54673a8">size_type</a> i)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#6f3b15854017b3e5ded3248fa34d6a53">toRel</a> () const</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight"><b>Export</b> pointer to number <a href="#6f3b15854017b3e5ded3248fa34d6a53"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#8cc42a2423f811af1ead975ce0ee0fe1">operator++</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#6ce42d887d8e140826b458254a01d3a8">operator--</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#50c9dd25105613ed289e8f40699d9d3a">operator+=</a> (<a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a> count)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#754cc0f6594130497ea2535432aceb53">operator-=</a> (<a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a> count)</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="classShare_1_1RelocPtr.html">RelocPtr</a>< T > </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1RelocPtr.html#5cd348dffb983437133bfca99e768c4f">fromRel</a> (<a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a> rel)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight"><b>Import</b> pointer from number <a href="#5cd348dffb983437133bfca99e768c4f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#9904976649f43ebff33161352f1a2bb6">operator new</a> (size_t size) throw (ShareException)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#a17cf35fdefcbf1f0e3839d7ee420cd4">operator new[]</a> (size_t size) throw (ShareException)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#2d2cb37fccdfd8e577aa30de9cd93716">operator delete</a> (void *addr, size_t) throw ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#187eca9cef72c40f92d3191f203a342f">operator delete[]</a> (void *addr, size_t) throw ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#9cbd4718acbcf4acfb0200da53dd901b">alloc</a> (size_t size) throw (ShareException)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#c701f606810daf91df59ca8c2d296aa9">alloc</a> (size_t size, size_t count) throw (ShareException)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1SharedObject.html#e3d21ebb81a40f59799c320bbf61cae2">free</a> (void *addr) throw ()</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template<class T><br>
class Share::RelocPtr< T ></h3>
<b>Relocable</b> <b>pointer</b> type.
<p>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Used for STL allocator. </dd></dl>
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00422">422</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="aba42401e75227f7bd93152000d12fa8"></a><!-- doxytag: member="Share::RelocPtr::value_type" ref="aba42401e75227f7bd93152000d12fa8" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef T <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#aba42401e75227f7bd93152000d12fa8">value_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00424">424</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="cb1688001f5bb92b00ecd5dba54673a8"></a><!-- doxytag: member="Share::RelocPtr::size_type" ref="cb1688001f5bb92b00ecd5dba54673a8" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef size_t <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#cb1688001f5bb92b00ecd5dba54673a8">size_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00425">425</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="3be3a8ae932dd1c441d5267dbfe4e4f9"></a><!-- doxytag: member="Share::RelocPtr::difference_type" ref="3be3a8ae932dd1c441d5267dbfe4e4f9" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef ptrdiff_t <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00426">426</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="69b5a6923a000843700694fe789d0f28"></a><!-- doxytag: member="Share::RelocPtr::pointer" ref="69b5a6923a000843700694fe789d0f28" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef T* <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#69b5a6923a000843700694fe789d0f28">pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00427">427</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="bde406e9ff03aa165a135828ec52e221"></a><!-- doxytag: member="Share::RelocPtr::const_pointer" ref="bde406e9ff03aa165a135828ec52e221" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef const T* <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#bde406e9ff03aa165a135828ec52e221">const_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00428">428</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="a4a5ced1a749cd94c87d4e6e34839470"></a><!-- doxytag: member="Share::RelocPtr::void_pointer" ref="a4a5ced1a749cd94c87d4e6e34839470" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="structShare_1_1TVoidPointer.html">TVoidPointer</a><T>::<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<code>void</code> pointer type derived from template parameter
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00429">429</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="dcdbc046f89ffaed230b90997e510cdf"></a><!-- doxytag: member="Share::RelocPtr::const_void_pointer" ref="dcdbc046f89ffaed230b90997e510cdf" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="structShare_1_1TVoidPointer.html">TVoidPointer</a><T>::<a class="el" href="classShare_1_1RelocPtr.html#dcdbc046f89ffaed230b90997e510cdf">const_void_pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#dcdbc046f89ffaed230b90997e510cdf">const_void_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<code>const</code> <code>void</code> pointer type derived from template parameter
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00430">430</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="6213f8eb9c44c3da5adcf58519409b0a"></a><!-- doxytag: member="Share::RelocPtr::reference" ref="6213f8eb9c44c3da5adcf58519409b0a" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="structShare_1_1TReference.html">TReference</a><T>::<a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Reference type derived from template parameter.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00431">431</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="0b7423aa548f1f6ca909804110d71502"></a><!-- doxytag: member="Share::RelocPtr::const_reference" ref="0b7423aa548f1f6ca909804110d71502" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="structShare_1_1TReference.html">TReference</a><T>::<a class="el" href="classShare_1_1RelocPtr.html#0b7423aa548f1f6ca909804110d71502">const_reference</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#0b7423aa548f1f6ca909804110d71502">const_reference</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Const reference type derived from template parameter.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00432">432</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="ead37d6700e2c7563388efddd0bccd95"></a><!-- doxytag: member="Share::RelocPtr::relative_pointer" ref="ead37d6700e2c7563388efddd0bccd95" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">Relocator::relative_pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Relative pointer type.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00433">433</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="3e44d26a099cb9791ee4f23ef4bb4272"></a><!-- doxytag: member="Share::RelocPtr::relative_const_pointer" ref="3e44d26a099cb9791ee4f23ef4bb4272" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">Relocator::relative_const_pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#3e44d26a099cb9791ee4f23ef4bb4272">relative_const_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Relative const pointer type.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00434">434</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="5b4e77ee40cf5449908a60c75bf95ad5"></a><!-- doxytag: member="Share::RelocPtr::iterator_category" ref="5b4e77ee40cf5449908a60c75bf95ad5" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">typedef std::random_access_iterator_tag <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html#5b4e77ee40cf5449908a60c75bf95ad5">iterator_category</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
STL iterator category.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00439">439</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="90ce59bdd82de1e60925f1993bf884e5"></a><!-- doxytag: member="Share::RelocPtr::RelocPtr" ref="90ce59bdd82de1e60925f1993bf884e5" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Construct null pointer
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00444">444</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="a2de8a45c6f22645d1e6464fb6f1f3eb"></a><!-- doxytag: member="Share::RelocPtr::RelocPtr" ref="a2de8a45c6f22645d1e6464fb6f1f3eb" args="(void_pointer abs)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> </td>
<td class="paramname"> <em>abs</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Initialize object using <a class="el" href="classShare_1_1ShareManager.html" title="Gateway to shared segment">ShareManager</a> singleton to obtain relative address. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>abs</em> </td><td>Absolute pointer to save to object. </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00453">453</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="961fd4342f9ca6b7584ef5d2daccc08d"></a><!-- doxytag: member="Share::RelocPtr::RelocPtr" ref="961fd4342f9ca6b7584ef5d2daccc08d" args="(void_pointer abs, void *base)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> </td>
<td class="paramname"> <em>abs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"> <em>base</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Initialize object using given base address. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>abs</em> </td><td>Absolute pointer to save to object. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>base</em> </td><td>Base address for relocation. </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00463">463</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="c6dd4b3f7f955dd74b9d19db4c86f217"></a><!-- doxytag: member="Share::RelocPtr::RelocPtr" ref="c6dd4b3f7f955dd74b9d19db4c86f217" args="(const RelocPtr &src)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::<a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>< T > & </td>
<td class="paramname"> <em>src</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Copy constructor
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00471">471</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="d4f8ead29bed4025ce7f36dad7265937"></a><!-- doxytag: member="Share::RelocPtr::operator=" ref="d4f8ead29bed4025ce7f36dad7265937" args="(const RelocPtr &src)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>< T > & </td>
<td class="paramname"> <em>src</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Assignment
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00480">480</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00568">Share::RelocPtr< T >::rel_</a>.
</div>
</div><p>
<a class="anchor" name="dcc79de8edd9caa0b9ddf0581455b67c"></a><!-- doxytag: member="Share::RelocPtr::operator=" ref="dcc79de8edd9caa0b9ddf0581455b67c" args="(void_pointer abs)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#a4a5ced1a749cd94c87d4e6e34839470">void_pointer</a> </td>
<td class="paramname"> <em>abs</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Assignment from absolute pointer
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00488">488</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="classShare_1_1ShareManager.html#9a3f4b7db3b1e9150b3288e7ff5d996a">Share::ShareManager::instance()</a>.
</div>
</div><p>
<a class="anchor" name="42e482608930555f9a1d1b0a886c5ea3"></a><!-- doxytag: member="Share::RelocPtr::operator->" ref="42e482608930555f9a1d1b0a886c5ea3" args="() const" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html#69b5a6923a000843700694fe789d0f28">pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator-> </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Implicit conversion for accessing members <dl class="return" compact><dt><b>Returns:</b></dt><dd>Return absolute pointer using <a class="el" href="classShare_1_1ShareManager.html" title="Gateway to shared segment">ShareManager</a> singleton to obtain absolute address. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00497">497</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="classShare_1_1ShareManager.html#9a3f4b7db3b1e9150b3288e7ff5d996a">Share::ShareManager::instance()</a>.
<p>
Referenced by <a class="el" href="sharelib_8h-source.html#l00506">Share::RelocPtr< T >::operator pointer()</a>.
</div>
</div><p>
<a class="anchor" name="6feb652c014b72f91f4f1d2f96ca0834"></a><!-- doxytag: member="Share::RelocPtr::operator pointer" ref="6feb652c014b72f91f4f1d2f96ca0834" args="() const" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator <a class="el" href="classShare_1_1RelocPtr.html#69b5a6923a000843700694fe789d0f28">pointer</a> </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Implicit conversion to native pointer.
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return absolute pointer using <a class="el" href="classShare_1_1ShareManager.html" title="Gateway to shared segment">ShareManager</a> singleton to obtain absolute address. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00506">506</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00497">Share::RelocPtr< T >::operator->()</a>.
<p>
Here is the call graph for this function:<p><center><img src="classShare_1_1RelocPtr_6feb652c014b72f91f4f1d2f96ca0834_cgraph.png" border="0" usemap="#classShare_1_1RelocPtr_6feb652c014b72f91f4f1d2f96ca0834_cgraph_map" alt=""></center>
<map name="classShare_1_1RelocPtr_6feb652c014b72f91f4f1d2f96ca0834_cgraph_map">
<area shape="rect" href="classShare_1_1RelocPtr.html#42e482608930555f9a1d1b0a886c5ea3" title="Share::RelocPtr::operator-\>" alt="" coords="307,5,523,32"><area shape="rect" href="classShare_1_1ShareManager.html#9a3f4b7db3b1e9150b3288e7ff5d996a" title="Share::ShareManager::instance" alt="" coords="571,5,811,32"></map>
</div>
</div><p>
<a class="anchor" name="f0112fb58cd3817e0c3075af761f19a1"></a><!-- doxytag: member="Share::RelocPtr::operator[]" ref="f0112fb58cd3817e0c3075af761f19a1" args="(size_type i)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html#6213f8eb9c44c3da5adcf58519409b0a">reference</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator[] </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#cb1688001f5bb92b00ecd5dba54673a8">size_type</a> </td>
<td class="paramname"> <em>i</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Indexer <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>i</em> </td><td>index </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00514">514</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="6f3b15854017b3e5ded3248fa34d6a53"></a><!-- doxytag: member="Share::RelocPtr::toRel" ref="6f3b15854017b3e5ded3248fa34d6a53" args="() const" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::toRel </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> const<code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Export</b> pointer to number
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00523">523</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
Referenced by <a class="el" href="sharelib_8h-source.html#l00594">Share::operator-()</a>.
</div>
</div><p>
<a class="anchor" name="5cd348dffb983437133bfca99e768c4f"></a><!-- doxytag: member="Share::RelocPtr::fromRel" ref="5cd348dffb983437133bfca99e768c4f" args="(relative_pointer rel)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a><T> <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::fromRel </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#ead37d6700e2c7563388efddd0bccd95">relative_pointer</a> </td>
<td class="paramname"> <em>rel</em> </td>
<td> ) </td>
<td width="100%"><code> [inline, static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Import</b> pointer from number
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00530">530</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00568">Share::RelocPtr< T >::rel_</a>.
</div>
</div><p>
<a class="anchor" name="8cc42a2423f811af1ead975ce0ee0fe1"></a><!-- doxytag: member="Share::RelocPtr::operator++" ref="8cc42a2423f811af1ead975ce0ee0fe1" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator++ </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Pre-increment
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00539">539</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="6ce42d887d8e140826b458254a01d3a8"></a><!-- doxytag: member="Share::RelocPtr::operator--" ref="6ce42d887d8e140826b458254a01d3a8" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator-- </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Pre-decrement
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00546">546</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="50c9dd25105613ed289e8f40699d9d3a"></a><!-- doxytag: member="Share::RelocPtr::operator+=" ref="50c9dd25105613ed289e8f40699d9d3a" args="(difference_type count)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator+= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a> </td>
<td class="paramname"> <em>count</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded operator +=
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00554">554</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="754cc0f6594130497ea2535432aceb53"></a><!-- doxytag: member="Share::RelocPtr::operator-=" ref="754cc0f6594130497ea2535432aceb53" args="(difference_type count)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template<class T> </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classShare_1_1RelocPtr.html">RelocPtr</a>& <a class="el" href="classShare_1_1RelocPtr.html">Share::RelocPtr</a>< T >::operator-= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1RelocPtr.html#3be3a8ae932dd1c441d5267dbfe4e4f9">difference_type</a> </td>
<td class="paramname"> <em>count</em> </td>
<td> ) </td>
<td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded operator -=
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00562">562</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="9904976649f43ebff33161352f1a2bb6"></a><!-- doxytag: member="Share::RelocPtr::operator new" ref="9904976649f43ebff33161352f1a2bb6" args="(size_t size)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void* Share::SharedObject::operator new </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>size</em> </td>
<td> ) </td>
<td width="100%"> throw (<a class="el" href="classShare_1_1ShareException.html">ShareException</a>)<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded operator new <dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classShare_1_1ShareException.html" title="General exception carrying text message inside.">ShareException</a></em> </td><td>Library-specific exception derived from std::bad_alloc </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00352">352</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00388">Share::SharedObject::alloc()</a>.
</div>
</div><p>
<a class="anchor" name="a17cf35fdefcbf1f0e3839d7ee420cd4"></a><!-- doxytag: member="Share::RelocPtr::operator new[]" ref="a17cf35fdefcbf1f0e3839d7ee420cd4" args="(size_t size)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void* Share::SharedObject::operator new[] </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>size</em> </td>
<td> ) </td>
<td width="100%"> throw (<a class="el" href="classShare_1_1ShareException.html">ShareException</a>)<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded operator new[] <dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classShare_1_1ShareException.html" title="General exception carrying text message inside.">ShareException</a></em> </td><td>Library-specific exception derived from std::bad_alloc </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00361">361</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00388">Share::SharedObject::alloc()</a>.
</div>
</div><p>
<a class="anchor" name="2d2cb37fccdfd8e577aa30de9cd93716"></a><!-- doxytag: member="Share::RelocPtr::operator delete" ref="2d2cb37fccdfd8e577aa30de9cd93716" args="(void *addr, size_t)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void Share::SharedObject::operator delete </td>
<td>(</td>
<td class="paramtype">void * </td>
<td class="paramname"> <em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"> throw ()<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded opeartor delete
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00369">369</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00407">Share::SharedObject::free()</a>.
</div>
</div><p>
<a class="anchor" name="187eca9cef72c40f92d3191f203a342f"></a><!-- doxytag: member="Share::RelocPtr::operator delete[]" ref="187eca9cef72c40f92d3191f203a342f" args="(void *addr, size_t)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void Share::SharedObject::operator delete[] </td>
<td>(</td>
<td class="paramtype">void * </td>
<td class="paramname"> <em>addr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"> throw ()<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded operator delete[]
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00377">377</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00407">Share::SharedObject::free()</a>.
</div>
</div><p>
<a class="anchor" name="9cbd4718acbcf4acfb0200da53dd901b"></a><!-- doxytag: member="Share::RelocPtr::alloc" ref="9cbd4718acbcf4acfb0200da53dd901b" args="(size_t size)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void* Share::SharedObject::alloc </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>size</em> </td>
<td> ) </td>
<td width="100%"> throw (<a class="el" href="classShare_1_1ShareException.html">ShareException</a>)<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Allocate block of memory inside shared segment. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>Desired size of block to allocate. </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return local address of allocated block on success. </dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classShare_1_1ShareException.html" title="General exception carrying text message inside.">ShareException</a></em> </td><td>Library-specific exception derived from std::bad_alloc </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00388">388</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="classShare_1_1ShareManager.html#9a3f4b7db3b1e9150b3288e7ff5d996a">Share::ShareManager::instance()</a>.
<p>
Referenced by <a class="el" href="sharelib_8h-source.html#l00398">Share::SharedObject::alloc()</a>, <a class="el" href="sharelib_8h-source.html#l00352">Share::SharedObject::operator new()</a>, and <a class="el" href="sharelib_8h-source.html#l00361">Share::SharedObject::operator new[]()</a>.
</div>
</div><p>
<a class="anchor" name="c701f606810daf91df59ca8c2d296aa9"></a><!-- doxytag: member="Share::RelocPtr::alloc" ref="c701f606810daf91df59ca8c2d296aa9" args="(size_t size, size_t count)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void* Share::SharedObject::alloc </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"> <em>count</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"> throw (<a class="el" href="classShare_1_1ShareException.html">ShareException</a>)<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Allocate block of memory inside shared segment. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>Desired size of block to allocate. </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return local address of allocated block on success. </dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classShare_1_1ShareException.html" title="General exception carrying text message inside.">ShareException</a></em> </td><td>Library-specific exception derived from std::bad_alloc </td></tr>
</table>
</dl>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>count</em> </td><td>Objects count to allocate. </td></tr>
</table>
</dl>
<dl class="note" compact><dt><b>Note:</b></dt><dd>Used for STL allocator. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00398">398</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00388">Share::SharedObject::alloc()</a>.
</div>
</div><p>
<a class="anchor" name="e3d21ebb81a40f59799c320bbf61cae2"></a><!-- doxytag: member="Share::RelocPtr::free" ref="e3d21ebb81a40f59799c320bbf61cae2" args="(void *addr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static void Share::SharedObject::free </td>
<td>(</td>
<td class="paramtype">void * </td>
<td class="paramname"> <em>addr</em> </td>
<td> ) </td>
<td width="100%"> throw ()<code> [inline, static, inherited]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Free block of memory previously allocated by <a class="el" href="classShare_1_1SharedObject.html#9cbd4718acbcf4acfb0200da53dd901b">alloc()</a> method. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>addr</em> </td><td>Address of block returned by <a class="el" href="classShare_1_1SharedObject.html#9cbd4718acbcf4acfb0200da53dd901b">alloc()</a> method. </td></tr>
</table>
</dl>
<dl class="attention" compact><dt><b>Attention:</b></dt><dd>All attached application may crash if this method is called with invalid address as parameter </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00407">407</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="classShare_1_1ShareManager.html#9a3f4b7db3b1e9150b3288e7ff5d996a">Share::ShareManager::instance()</a>.
<p>
Referenced by <a class="el" href="sharelib_8h-source.html#l00369">Share::SharedObject::operator delete()</a>, and <a class="el" href="sharelib_8h-source.html#l00377">Share::SharedObject::operator delete[]()</a>.
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>sharelib/<a class="el" href="sharelib_8h-source.html">sharelib.h</a></ul>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 26 17:43:03 2007 for ShareLibrary by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.2 </small></address>
</body>
</html>