Share Library (C++)
Detail souboru
Zdrojový kód
<!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::Relocator 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.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_1Relocator.html">Relocator</a></div>
<h1>Share::Relocator Class Reference<br>
<small>
[<a class="el" href="group__core.html">Core library classes</a>]</small>
</h1><!-- doxytag: class="Share::Relocator" -->Class handling low-level pointer relocation.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="sharelib_8h-source.html">sharelib.h</a>></code>
<p>
<a href="classShare_1_1Relocator-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 void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Absolute pointer type. <a href="#4e0817b0eed4be84240a32d79126dad2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#e719462f9bf34c582f87e589456fe504">absolute_const_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Absolute const pointer type. <a href="#e719462f9bf34c582f87e589456fe504"></a><br></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_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Relative pointer type. <a href="#9ba6ccb87680e0d568d2999191523799"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">relative_const_pointer</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Relative const pointer type. <a href="#2545bed5557043fa37bb13458bb566fd"></a><br></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_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#04b4d3a78f7d96dea1aac5e83b5fadcc">absToRel</a> (<a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> abs, <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> base)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">relative_const_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#834d9cbb7d3453e342558cacf8660434">absToRel</a> (<a class="el" href="classShare_1_1Relocator.html#e719462f9bf34c582f87e589456fe504">absolute_const_pointer</a> abs, <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> base)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#1b9cecb68d4b2c6b5016ba04027b4a3c">relToAbs</a> (<a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a> rel, <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> base)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Class handling low-level pointer relocation.
<p>
Non-instantiable class. <dl class="attention" compact><dt><b>Attention:</b></dt><dd>Implementation expects <b>sizeof(char)</b> <b>==</b> <b>1</b> ! </dd></dl>
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00079">79</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="4e0817b0eed4be84240a32d79126dad2"></a><!-- doxytag: member="Share::Relocator::absolute_pointer" ref="4e0817b0eed4be84240a32d79126dad2" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">Share::Relocator::absolute_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Absolute pointer type.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00081">81</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="e719462f9bf34c582f87e589456fe504"></a><!-- doxytag: member="Share::Relocator::absolute_const_pointer" ref="e719462f9bf34c582f87e589456fe504" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef const void* <a class="el" href="classShare_1_1Relocator.html#e719462f9bf34c582f87e589456fe504">Share::Relocator::absolute_const_pointer</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Absolute const pointer type.
<p>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00082">82</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="9ba6ccb87680e0d568d2999191523799"></a><!-- doxytag: member="Share::Relocator::relative_pointer" ref="9ba6ccb87680e0d568d2999191523799" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef size_t <a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">Share::Relocator::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#l00083">83</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
</div>
</div><p>
<a class="anchor" name="2545bed5557043fa37bb13458bb566fd"></a><!-- doxytag: member="Share::Relocator::relative_const_pointer" ref="2545bed5557043fa37bb13458bb566fd" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef const size_t <a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">Share::Relocator::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#l00084">84</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="04b4d3a78f7d96dea1aac5e83b5fadcc"></a><!-- doxytag: member="Share::Relocator::absToRel" ref="04b4d3a78f7d96dea1aac5e83b5fadcc" args="(absolute_pointer abs, absolute_pointer base)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a> Share::Relocator::absToRel </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> </td>
<td class="paramname"> <em>abs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> </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, static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Convert absolute address to relative. <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 address to convert. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>base</em> </td><td>Base address for relocation. </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return relative address. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00092">92</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#l00245">Share::ShareManager::absToRel()</a>, and <a class="el" href="sharelib_8h-source.html#l00104">absToRel()</a>.
</div>
</div><p>
<a class="anchor" name="834d9cbb7d3453e342558cacf8660434"></a><!-- doxytag: member="Share::Relocator::absToRel" ref="834d9cbb7d3453e342558cacf8660434" args="(absolute_const_pointer abs, absolute_pointer base)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classShare_1_1Relocator.html#2545bed5557043fa37bb13458bb566fd">relative_const_pointer</a> Share::Relocator::absToRel </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#e719462f9bf34c582f87e589456fe504">absolute_const_pointer</a> </td>
<td class="paramname"> <em>abs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> </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, static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Overloaded method for const pointers. Convert absolute address to relative. <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 address to convert. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>base</em> </td><td>Base address for relocation. </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return relative address. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00104">104</a> of file <a class="el" href="sharelib_8h-source.html">sharelib.h</a>.
<p>
References <a class="el" href="sharelib_8h-source.html#l00092">absToRel()</a>.
</div>
</div><p>
<a class="anchor" name="1b9cecb68d4b2c6b5016ba04027b4a3c"></a><!-- doxytag: member="Share::Relocator::relToAbs" ref="1b9cecb68d4b2c6b5016ba04027b4a3c" args="(relative_pointer rel, absolute_pointer base)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> Share::Relocator::relToAbs </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a> </td>
<td class="paramname"> <em>rel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a> </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, static]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Convert relative address to absolute. <dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>rel</em> </td><td>Relative address to convert. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>base</em> </td><td>Base address for relocation. </td></tr>
</table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return absolute address. </dd></dl>
<p>
Definition at line <a class="el" href="sharelib_8h-source.html#l00114">114</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#l00269">Share::ShareManager::relToAbs()</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:02 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>