English
Kamil Dudka

Share Library (C++)

Detail souboru

Jméno:StáhnoutclassShare_1_1Relocator.html [Stáhnout]
Umístění: sharelib > api
Velikost:14.5 KB
Poslední změna:2022-09-09 13:06

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&nbsp;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&nbsp;Pages</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="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 &lt;<a class="el" href="sharelib_8h-source.html">sharelib.h</a>&gt;</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 *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#4e0817b0eed4be84240a32d79126dad2">absolute_pointer</a></td></tr>
 
<tr><td class="mdescLeft">&nbsp;</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 *&nbsp;</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">&nbsp;</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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classShare_1_1Relocator.html#9ba6ccb87680e0d568d2999191523799">relative_pointer</a></td></tr>
 
<tr><td class="mdescLeft">&nbsp;</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&nbsp;</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">&nbsp;</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>&nbsp;</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>&nbsp;</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>&nbsp;</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>&nbsp;</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>&nbsp;</td>
          <td class="paramname"> <em>base</em></td><td>&nbsp;</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>&nbsp;</td><td>Absolute address to convert. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>base</em>&nbsp;</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>&nbsp;</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>&nbsp;</td>
          <td class="paramname"> <em>base</em></td><td>&nbsp;</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>&nbsp;</td><td>Absolute address to convert. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>base</em>&nbsp;</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>&nbsp;</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>&nbsp;</td>
          <td class="paramname"> <em>base</em></td><td>&nbsp;</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>&nbsp;</td><td>Relative address to convert. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>base</em>&nbsp;</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&nbsp;
<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>