aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a02534.html
diff options
context:
space:
mode:
authorneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
committerneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
commit0ea5fc66924303d1bf73ba283a383e2aadee02f2 (patch)
tree2568e71a7ccc44ec23b8bb3f0ff97fb6bf2ed709 /docs/doxygen/nel/a02534.html
downloadnevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz
nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip
Initial commit
Diffstat (limited to 'docs/doxygen/nel/a02534.html')
-rw-r--r--docs/doxygen/nel/a02534.html444
1 files changed, 444 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02534.html b/docs/doxygen/nel/a02534.html
new file mode 100644
index 00000000..15a5f97f
--- /dev/null
+++ b/docs/doxygen/nel/a02534.html
@@ -0,0 +1,444 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NLMISC::CFixedSizeAllocator::CChunk class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NLMISC::CFixedSizeAllocator::CChunk Class Reference</h1><table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka0">add</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">a chunk has been given back <a href="#NLMISC_1_1CFixedSizeAllocator_1_1CChunka0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka1">CChunk</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka2">getBlockSizeWithOverhead</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02535.html">CNode</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a566">index</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka4">grab</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">a chunk has been taken <a href="#NLMISC_1_1CFixedSizeAllocator_1_1CChunka4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka5">init</a> (<a class="el" href="a02533.html">CFixedSizeAllocator</a> *fsa)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka6">~CChunk</a> ()</td></tr>
+
+<tr><td colspan=2><br><h2>Data Fields</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02533.html">CFixedSizeAllocator</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko1">Mem</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka1" doxytag="NLMISC::CFixedSizeAllocator::CChunk::CChunk" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLMISC::CFixedSizeAllocator::CChunk::CChunk </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00094">94</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00086">Allocator</a>, and <a class="el" href="a05711.html#l00085">NumFreeObjs</a>.
+<p>
+<div class="fragment"><pre>00095 {
+00096 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a> = 0;
+00097 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a> = NULL;
+00098 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka6" doxytag="NLMISC::CFixedSizeAllocator::CChunk::~CChunk" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLMISC::CFixedSizeAllocator::CChunk::~<a class="el" href="a02534.html">CChunk</a> </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00101">101</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00108">NLMISC::CFixedSizeAllocator::_NumChunks</a>, <a class="el" href="a05711.html#l00086">Allocator</a>, <a class="el" href="a05710.html#l00146">getNode()</a>, <a class="el" href="a05711.html#l00060">NLMISC::CFixedSizeAllocator::getNumBlockPerChunk()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05711.html#l00085">NumFreeObjs</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05710.html#l00178">NLMISC::CFixedSizeAllocator::CNode::unlink()</a>.
+<p>
+<div class="fragment"><pre>00102 {
+00103 <a class="code" href="a04199.html#a6">nlassert</a>(Allocator);
+00104 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;getNumBlockPerChunk(); ++k)
+00105 {
+00106 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k).unlink();
+00107 }
+00108 <a class="code" href="a04199.html#a6">nlassert</a>(NumFreeObjs == 0);
+00109 <a class="code" href="a04199.html#a6">nlassert</a>(<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;_NumChunks &gt; 0);
+00110 -- (<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;_NumChunks);
+00111 <span class="keyword">delete</span> <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko1">Mem</a>;
+00112 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka0" doxytag="NLMISC::CFixedSizeAllocator::CChunk::add" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CFixedSizeAllocator::CChunk::add </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+a chunk has been given back
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00154">154</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00108">NLMISC::CFixedSizeAllocator::_NumChunks</a>, <a class="el" href="a05711.html#l00086">Allocator</a>, <a class="el" href="a05711.html#l00060">NLMISC::CFixedSizeAllocator::getNumBlockPerChunk()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05711.html#l00085">NumFreeObjs</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00189">NLMISC::CFixedSizeAllocator::CNode::link()</a>.
+<p>
+<div class="fragment"><pre>00155 {
+00156 <a class="code" href="a04199.html#a6">nlassert</a>(Allocator);
+00157 <span class="comment">// a node of this chunk has been given back</span>
+00158 <a class="code" href="a04199.html#a6">nlassert</a>(NumFreeObjs &lt; Allocator-&gt;<a class="code" href="a02533.html#NLMISC_1_1CFixedSizeAllocatora4">getNumBlockPerChunk</a>());
+00159 ++ <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a>;
+00160 <span class="keywordflow">if</span> (<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a> == <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;getNumBlockPerChunk()) <span class="comment">// all objects back ?</span>
+00161 {
+00162 <span class="keywordflow">if</span> (<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;_NumChunks &gt; 1) <span class="comment">// we want to have at least one chunk left</span>
+00163 {
+00164 <span class="keyword">delete</span> <span class="keyword">this</span>; <span class="comment">// kill that object</span>
+00165 }
+00166 }
+00167 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka2" doxytag="NLMISC::CFixedSizeAllocator::CChunk::getBlockSizeWithOverhead" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NLMISC::CFixedSizeAllocator::CChunk::getBlockSizeWithOverhead </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00088">88</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00086">Allocator</a>, <a class="el" href="a05711.html#l00059">NLMISC::CFixedSizeAllocator::getNumBytesPerBlock()</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00146">getNode()</a>, and <a class="el" href="a05710.html#l00115">init()</a>.
+<p>
+<div class="fragment"><pre>00089 {
+00090 <span class="keywordflow">return</span> std::max(<span class="keyword">sizeof</span>(CNode) - offsetof(CNode, Next), <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a>-&gt;getNumBytesPerBlock()) + offsetof(CNode, Next);
+00091 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka3" doxytag="NLMISC::CFixedSizeAllocator::CChunk::getNode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02535.html">CFixedSizeAllocator::CNode</a> &amp; NLMISC::CFixedSizeAllocator::CChunk::getNode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>index</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00146">146</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00086">Allocator</a>, <a class="el" href="a05710.html#l00088">getBlockSizeWithOverhead()</a>, <a class="el" href="a05711.html#l00060">NLMISC::CFixedSizeAllocator::getNumBlockPerChunk()</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00115">init()</a>, and <a class="el" href="a05710.html#l00101">~CChunk()</a>.
+<p>
+<div class="fragment"><pre>00147 {
+00148 <a class="code" href="a04199.html#a6">nlassert</a>(Allocator);
+00149 <a class="code" href="a04199.html#a6">nlassert</a>(index &lt; Allocator-&gt;<a class="code" href="a02533.html#NLMISC_1_1CFixedSizeAllocatora4">getNumBlockPerChunk</a>());
+00150 <span class="keywordflow">return</span> *(CNode *) ((<a class="code" href="a04558.html#a7">uint8</a> *) <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko1">Mem</a> + <a class="code" href="a04223.html#a566">index</a> * <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka2">getBlockSizeWithOverhead</a>());
+00151 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka4" doxytag="NLMISC::CFixedSizeAllocator::CChunk::grab" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CFixedSizeAllocator::CChunk::grab </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+a chunk has been taken
+<p>
+
+<p>
+Definition at line <a class="el" href="a05710.html#l00170">170</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05711.html#l00085">NumFreeObjs</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00178">NLMISC::CFixedSizeAllocator::CNode::unlink()</a>.
+<p>
+<div class="fragment"><pre>00171 {
+00172 <span class="comment">// a node of this chunk has been given back</span>
+00173 <a class="code" href="a04199.html#a6">nlassert</a>(NumFreeObjs &gt; 0);
+00174 -- <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a>;
+00175 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunka5" doxytag="NLMISC::CFixedSizeAllocator::CChunk::init" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CFixedSizeAllocator::CChunk::init </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02533.html">CFixedSizeAllocator</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>alloc</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+init all the element as a linked list
+<p>
+Definition at line <a class="el" href="a05710.html#l00115">115</a> of file <a class="el" href="a05710.html">fixed_size_allocator.cpp</a>.
+<p>
+References <a class="el" href="a05711.html#l00086">Allocator</a>, <a class="el" href="a05711.html#l00068">NLMISC::CFixedSizeAllocator::CNode::Chunk</a>, <a class="el" href="a05710.html#l00088">getBlockSizeWithOverhead()</a>, <a class="el" href="a05710.html#l00146">getNode()</a>, <a class="el" href="a05711.html#l00070">NLMISC::CFixedSizeAllocator::CNode::Next</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05711.html#l00085">NumFreeObjs</a>, <a class="el" href="a05711.html#l00071">NLMISC::CFixedSizeAllocator::CNode::Prev</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00062">NLMISC::CFixedSizeAllocator::alloc()</a>.
+<p>
+<div class="fragment"><pre>00116 {
+00117 <a class="code" href="a04199.html#a6">nlassert</a>(!Allocator);
+00118 <a class="code" href="a04199.html#a6">nlassert</a>(alloc);
+00119 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">Allocator</a> = alloc;
+00120 <span class="comment">//</span>
+00121 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko1">Mem</a> = <span class="keyword">new</span> <a class="code" href="a04558.html#a7">uint8</a>[<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka2">getBlockSizeWithOverhead</a>() * alloc-&gt;getNumBlockPerChunk()];
+00122 <span class="comment">//</span>
+00123 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(0).Chunk = <span class="keyword">this</span>;
+00124 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(0).Next = &amp;<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(1);
+00125 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(0).Prev = &amp;alloc-&gt;_FreeSpace;
+00126 <span class="comment">//</span>
+00127 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a> = alloc-&gt;getNumBlockPerChunk();
+00129 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 1; k &lt; (<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NumFreeObjs</a> - 1); ++k)
+00130 {
+00131 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k).Chunk = <span class="keyword">this</span>;
+00132 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k).Next = &amp;<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k + 1);
+00133 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k).Prev = &amp;<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(k - 1).Next;
+00134 }
+00135
+00136 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(NumFreeObjs - 1).Chunk = <span class="keyword">this</span>;
+00137 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(NumFreeObjs - 1).Next = alloc-&gt;_FreeSpace;
+00138 <a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(NumFreeObjs - 1).Prev = &amp;(<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(NumFreeObjs - 2).Next);
+00139
+00140 <span class="keywordflow">if</span> (alloc-&gt;_FreeSpace) { alloc-&gt;_FreeSpace-&gt;Prev = &amp;<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(NumFreeObjs - 1).Next; }
+00141 alloc-&gt;_FreeSpace = &amp;<a class="code" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunka3">getNode</a>(0);
+00142 ++(alloc-&gt;_NumChunks);
+00143 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunko0" doxytag="NLMISC::CFixedSizeAllocator::CChunk::Allocator" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02533.html">CFixedSizeAllocator</a>* <a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko0">NLMISC::CFixedSizeAllocator::CChunk::Allocator</a>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05711.html#l00086">86</a> of file <a class="el" href="a05711.html">fixed_size_allocator.h</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00154">add()</a>, <a class="el" href="a05710.html#l00094">CChunk()</a>, <a class="el" href="a05710.html#l00074">NLMISC::CFixedSizeAllocator::free()</a>, <a class="el" href="a05710.html#l00088">getBlockSizeWithOverhead()</a>, <a class="el" href="a05710.html#l00146">getNode()</a>, <a class="el" href="a05710.html#l00115">init()</a>, <a class="el" href="a05710.html#l00189">NLMISC::CFixedSizeAllocator::CNode::link()</a>, and <a class="el" href="a05710.html#l00101">~CChunk()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunko1" doxytag="NLMISC::CFixedSizeAllocator::CChunk::Mem" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a>* <a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko1">NLMISC::CFixedSizeAllocator::CChunk::Mem</a>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05711.html#l00087">87</a> of file <a class="el" href="a05711.html">fixed_size_allocator.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CFixedSizeAllocator_1_1CChunko2" doxytag="NLMISC::CFixedSizeAllocator::CChunk::NumFreeObjs" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a02534.html#NLMISC_1_1CFixedSizeAllocator_1_1CChunko2">NLMISC::CFixedSizeAllocator::CChunk::NumFreeObjs</a>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05711.html#l00085">85</a> of file <a class="el" href="a05711.html">fixed_size_allocator.h</a>.
+<p>
+Referenced by <a class="el" href="a05710.html#l00154">add()</a>, <a class="el" href="a05710.html#l00094">CChunk()</a>, <a class="el" href="a05710.html#l00170">grab()</a>, <a class="el" href="a05710.html#l00115">init()</a>, <a class="el" href="a05710.html#l00178">NLMISC::CFixedSizeAllocator::CNode::unlink()</a>, and <a class="el" href="a05710.html#l00101">~CChunk()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a05711.html">fixed_size_allocator.h</a><li><a class="el" href="a05710.html">fixed_size_allocator.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 13:13:23 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>