aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a03409.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/a03409.html
downloadnevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz
nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip
Initial commit
Diffstat (limited to '')
-rw-r--r--docs/doxygen/nel/a03409.html1201
1 files changed, 1201 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a03409.html b/docs/doxygen/nel/a03409.html
new file mode 100644
index 00000000..9aa06646
--- /dev/null
+++ b/docs/doxygen/nel/a03409.html
@@ -0,0 +1,1201 @@
+<!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: TemplateNL3D::CSnappedVector&lt; T, snapPower &gt; 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>NL3D::CSnappedVector&lt; T, snapPower &gt; Class Template Reference</h1><code>#include &lt;<a class="el" href="a06213.html">ps_attrib.h</a>&gt;</code>
+<p>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<h3>template&lt;class T, const uint snapPower = 5&gt;<br>
+ class NL3D::CSnappedVector&lt; T, snapPower &gt;</h3>
+
+a container that is like a vector, but snapped to (1&lt;&lt;snapPower) byte memory pages
+<p>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00045">45</a> of file <a class="el" href="a06213.html">ps_attrib.h</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 const T *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef T *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef T&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw2">value_type</a></td></tr>
+
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>const T &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora0">back</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>T &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora1">back</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora2">begin</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora3">begin</a> (void)</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="a03409.html#NL3D_1_1CSnappedVectora4">capacity</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora5">clear</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora6">CSnappedVector</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora7">empty</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora8">end</a> (void) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora9">end</a> (void)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>const T &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora10">operator[]</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a566">index</a>) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>T &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora11">operator[]</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="a03409.html#NL3D_1_1CSnappedVectora12">pop_back</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora13">push_back</a> (const T &amp;<a class="el" href="a04223.html#a627">t</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a> (<a class="el" href="a04558.html#a15">uint</a> capacity)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set a new usable size <a href="#NL3D_1_1CSnappedVectora14"></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="a03409.html#NL3D_1_1CSnappedVectora15">resize</a> (<a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a587">size</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora16">serial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &amp;f) throw (NLMISC::EStream)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">serialization <a href="#NL3D_1_1CSnappedVectora16"></a><br><br></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="a03409.html#NL3D_1_1CSnappedVectora17">size</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora18">~CSnappedVector</a> ()</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</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="a03409.html#NL3D_1_1CSnappedVectorp2">_Start</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>T *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a></td></tr>
+
+</table>
+<hr><h2>Member Typedef Documentation</h2>
+<a class="anchor" name="NL3D_1_1CSnappedVectorw0" doxytag="NL3D::CSnappedVector::const_iterator" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> typedef const T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</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="a06213.html#l00049">49</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00063">NL3D::CSnappedVector&lt; T, snapPower &gt;::begin()</a>, and <a class="el" href="a06213.html#l00065">NL3D::CSnappedVector&lt; T, snapPower &gt;::end()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectorw1" doxytag="NL3D::CSnappedVector::iterator" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> typedef T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</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="a06213.html#l00048">48</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00062">NL3D::CSnappedVector&lt; T, snapPower &gt;::begin()</a>, <a class="el" href="a06213.html#l00064">NL3D::CSnappedVector&lt; T, snapPower &gt;::end()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector&lt; T, snapPower &gt;::resize()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector&lt; T, snapPower &gt;::~CSnappedVector()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectorw2" doxytag="NL3D::CSnappedVector::value_type" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> typedef T <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw2">value_type</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="a06213.html#l00050">50</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NL3D_1_1CSnappedVectora6" doxytag="NL3D::CSnappedVector::CSnappedVector" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html">CSnappedVector</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><code> [inline]</code></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="a06213.html#l00052">52</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00244">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Start</a>, and <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>.
+<p>
+<div class="fragment"><pre>00052 : <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>(0), <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>(0), <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp2">_Start</a>(NULL), <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>(NULL) {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora18" doxytag="NL3D::CSnappedVector::~CSnappedVector" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::~<a class="el" href="a03409.html">CSnappedVector</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><code> [inline]</code></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="a06213.html#l00053">53</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00244">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Start</a>, <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector&lt; T, snapPower &gt;::iterator</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00054 {
+00055 <a class="code" href="a04199.html#a6">nlassert</a>(_Size &lt;= _Capacity);
+00056 <span class="keywordflow">for</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> it = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>, endIt = _Tab + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; it != endIt; ++it)
+00057 {
+00058 it-&gt;~T();
+00059 }
+00060 <span class="keyword">delete</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp2">_Start</a>;
+00061 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CSnappedVectora0" doxytag="NL3D::CSnappedVector::back" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> const T&amp; <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::back </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<code> [inline]</code></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="a06213.html#l00090">90</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00091 {
+00092 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00093 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(_Size &gt; 0);
+00094 <span class="preprocessor"> #endif</span>
+00095 <span class="preprocessor"></span> <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>[<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> - 1];
+00096 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora1" doxytag="NL3D::CSnappedVector::back" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> T&amp; <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::back </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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00082">82</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00083 {
+00084 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00085 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(_Size &gt; 0);
+00086 <span class="preprocessor"> #endif</span>
+00087 <span class="preprocessor"></span> <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>[<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> - 1];
+00088 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora2" doxytag="NL3D::CSnappedVector::begin" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::begin </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></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="a06213.html#l00063">63</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a06213.html#l00049">NL3D::CSnappedVector&lt; T, snapPower &gt;::const_iterator</a>.
+<p>
+<div class="fragment"><pre>00063 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora3" doxytag="NL3D::CSnappedVector::begin" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::begin </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00062">62</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector&lt; T, snapPower &gt;::iterator</a>.
+<p>
+<div class="fragment"><pre>00062 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora4" doxytag="NL3D::CSnappedVector::capacity" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::capacity </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<code> [inline]</code></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="a06213.html#l00210">210</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00210 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora5" doxytag="NL3D::CSnappedVector::clear" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::clear </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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00240">240</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector&lt; T, snapPower &gt;::resize()</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector&lt; T, snapPower &gt;::serial()</a>.
+<p>
+<div class="fragment"><pre>00240 { <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora15">resize</a>(0); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora7" doxytag="NL3D::CSnappedVector::empty" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::empty </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<code> [inline]</code></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="a06213.html#l00098">98</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+<div class="fragment"><pre>00098 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> == 0; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora8" doxytag="NL3D::CSnappedVector::end" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw0">const_iterator</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::end </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></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="a06213.html#l00065">65</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a06213.html#l00049">NL3D::CSnappedVector&lt; T, snapPower &gt;::const_iterator</a>.
+<p>
+<div class="fragment"><pre>00065 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora9" doxytag="NL3D::CSnappedVector::end" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::end </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">void&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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00064">64</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector&lt; T, snapPower &gt;::iterator</a>.
+<p>
+<div class="fragment"><pre>00064 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora10" doxytag="NL3D::CSnappedVector::operator[]" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> const T&amp; <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::operator[] </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> const<code> [inline]</code></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="a06213.html#l00074">74</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00075 {
+00076 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00077 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(index &lt; _Size &amp;&amp; _Size);
+00078 <span class="preprocessor"> #endif</span>
+00079 <span class="preprocessor"></span> <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>[<a class="code" href="a04223.html#a566">index</a>];
+00080 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora11" doxytag="NL3D::CSnappedVector::operator[]" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> T&amp; <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::operator[] </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><code> [inline]</code></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="a06213.html#l00067">67</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a05646.html#l00225">index</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00068 {
+00069 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00070 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(index &lt; _Size &amp;&amp; _Size);
+00071 <span class="preprocessor"> #endif</span>
+00072 <span class="preprocessor"></span> <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>[<a class="code" href="a04223.html#a566">index</a>];
+00073 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora12" doxytag="NL3D::CSnappedVector::pop_back" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::pop_back </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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00202">202</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>.
+<p>
+<div class="fragment"><pre>00203 {
+00204 <a class="code" href="a04199.html#a6">nlassert</a>(_Size);
+00205 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>[<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> - 1].~T();
+00206 --<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>;
+00207 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora13" doxytag="NL3D::CSnappedVector::push_back" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::push_back </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>t</em> </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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00171">171</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, and <a class="el" href="a05646.html#l00985">t</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector&lt; T, snapPower &gt;::serial()</a>.
+<p>
+<div class="fragment"><pre>00172 {
+00173 <span class="keywordflow">if</span> (!<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>)
+00174 {
+00175 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a>(2);
+00176 <span class="keyword">new</span> ((<span class="keywordtype">void</span> *) <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>) T(t);
+00177 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> = 1;
+00178 }
+00179 <span class="keywordflow">else</span>
+00180 <span class="keywordflow">if</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>)
+00181 {
+00182 <span class="keyword">new</span> ((<span class="keywordtype">void</span> *) (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>)) T(t);
+00183 ++<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>;
+00184 }
+00185 <span class="keywordflow">else</span>
+00186 <span class="keywordflow">if</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> == <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>)
+00187 {
+00188 <span class="keywordflow">if</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a> == 1)
+00189 {
+00190 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a>(2);
+00191 }
+00192 <span class="keywordflow">else</span>
+00193 {
+00194 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a>(_Capacity + (_Capacity&gt;&gt;1));
+00195 }
+00196 <a class="code" href="a04199.html#a6">nlassert</a>(_Size &lt;= _Capacity);
+00197 <span class="keyword">new</span> ((<span class="keywordtype">void</span> *) (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>)) T(t);
+00198 ++<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>;
+00199 }
+00200 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora14" doxytag="NL3D::CSnappedVector::reserve" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::reserve </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>capacity</em> </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>
+set a new usable size
+<p>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00101">101</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00244">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Start</a>, <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector&lt; T, snapPower &gt;::iterator</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05646.html#l01124">src</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="a06213.html#l00171">NL3D::CSnappedVector&lt; T, snapPower &gt;::push_back()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector&lt; T, snapPower &gt;::resize()</a>, and <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector&lt; T, snapPower &gt;::serial()</a>.
+<p>
+<div class="fragment"><pre>00102 {
+00103 <span class="keywordflow">if</span> (capacity &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>) <span class="keywordflow">return</span>;
+00104 <a class="code" href="a04558.html#a7">uint8</a> *newStart = NULL;
+00105 <span class="keywordflow">try</span>
+00106 {
+00107 newStart = <span class="keyword">new</span> <a class="code" href="a04558.html#a7">uint8</a>[<span class="keyword">sizeof</span>(T) * capacity + (1 &lt;&lt; snapPower)];
+00108 T *newTab = (T *) ( (<a class="code" href="a04558.html#a15">uint</a>) (newStart + (1 &lt;&lt; snapPower)) &amp; ~((1 &lt;&lt; snapPower) - 1)); <span class="comment">// snap to a page</span>
+00109
+00110
+00111
+00112 <span class="keywordflow">for</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> <a class="code" href="a04223.html#a652">src</a> = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a>, <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora9">end</a> = _Tab + (capacity &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> ? capacity : <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>), dest = newTab;
+00113 <a class="code" href="a04223.html#a652">src</a> != end;
+00114 ++ <a class="code" href="a04223.html#a652">src</a>, ++dest)
+00115 {
+00116 <span class="keyword">new</span> ((<span class="keywordtype">void</span> *) dest) T(*src); <span class="comment">// copy object</span>
+00117 }
+00118
+00119 <span class="comment">// swap datas</span>
+00120 std::swap(_Start, newStart);
+00121 std::swap(_Tab, newTab);
+00122
+00123 <span class="comment">// destroy previous objects. We assume that we can't have exceptions raised from destructors</span>
+00124 <span class="keywordflow">for</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> it = newTab <span class="comment">/* old tab */</span>, endIt = newTab + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; it != endIt; ++ it)
+00125 {
+00126 it-&gt;~T();
+00127 }
+00128
+00129 <span class="comment">// set new size</span>
+00130 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a> = capacity;
+00131 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> = capacity &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> ? capacity : <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>;
+00132
+00133
+00134 <span class="comment">// delete old vect (that was swapped with the new one)</span>
+00135 <span class="keyword">delete</span> [] newStart;
+00136 <a class="code" href="a04199.html#a6">nlassert</a>(_Size &lt;= _Capacity);
+00137 }
+00138 <span class="keywordflow">catch</span> (...)
+00139 {
+00140 <span class="keyword">delete</span> [] newStart;
+00141 <span class="keywordflow">throw</span>;
+00142 }
+00143
+00144 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora15" doxytag="NL3D::CSnappedVector::resize" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::resize </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>size</em> </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>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00145">145</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector&lt; T, snapPower &gt;::iterator</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, <a class="el" href="a05646.html#l00645">size</a>, and <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00240">NL3D::CSnappedVector&lt; T, snapPower &gt;::clear()</a>.
+<p>
+<div class="fragment"><pre>00146 {
+00147 <a class="code" href="a04199.html#a6">nlassert</a>(size &lt; (1 &lt;&lt; 16));
+00148 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a587">size</a> &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>)
+00149 {
+00150 <span class="keywordflow">for</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> it = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a04223.html#a587">size</a>, endIt = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; it != endIt; ++it)
+00151 {
+00152 it-&gt;~T();
+00153 }
+00154 }
+00155 <span class="keywordflow">else</span>
+00156 {
+00157 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a587">size</a> &gt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a>)
+00158 {
+00159 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a>(size);
+00160 }
+00161 <span class="keywordflow">for</span> (<a class="code" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> it = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>, endIt = <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a> + <a class="code" href="a04223.html#a587">size</a>; it != endIt; ++it)
+00162 {
+00163 <span class="keyword">new</span> ((<span class="keywordtype">void</span> *) it) T();
+00164 }
+00165 }
+00166
+00167 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a> = <a class="code" href="a04223.html#a587">size</a>;
+00168 <a class="code" href="a04199.html#a6">nlassert</a>(_Size &lt;= _Capacity);
+00169 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora16" doxytag="NL3D::CSnappedVector::serial" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>f</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> throw (<a class="el" href="a03781.html">NLMISC::EStream</a>)<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+serialization
+<p>
+
+<p>
+Definition at line <a class="el" href="a06213.html#l00214">214</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector&lt; T, snapPower &gt;::_Tab</a>, <a class="el" href="a06213.html#l00240">NL3D::CSnappedVector&lt; T, snapPower &gt;::clear()</a>, <a class="el" href="a06213.html#l00171">NL3D::CSnappedVector&lt; T, snapPower &gt;::push_back()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, <a class="el" href="a05646.html#l00645">size</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00215 {
+00216 <span class="keywordflow">if</span> (f.<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00217 {
+00218 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora5">clear</a>();
+00219 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a587">size</a>, maxsize;
+00220 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(size, maxsize);
+00221 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora14">reserve</a>(maxsize);
+00222 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; <a class="code" href="a04223.html#a587">size</a>; ++k)
+00223 {
+00224 T tmp;
+00225 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(tmp);
+00226 <a class="code" href="a03409.html#NL3D_1_1CSnappedVectora13">push_back</a>(tmp);
+00227 }
+00228 }
+00229 <span class="keywordflow">else</span>
+00230 {
+00231 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Size, _Capacity);
+00232 <span class="keywordflow">for</span> (<a class="code" href="a04558.html#a15">uint</a> k = 0; k &lt; <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; ++k)
+00233 {
+00234 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Tab[k]);
+00235 }
+00236 }
+00237 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectora17" doxytag="NL3D::CSnappedVector::size" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a04223.html#a587">size</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> const<code> [inline]</code></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="a06213.html#l00211">211</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+References <a class="el" href="a05981.html#l00105">uint</a>.
+<p>
+<div class="fragment"><pre>00211 { <span class="keywordflow">return</span> <a class="code" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NL3D_1_1CSnappedVectorp0" doxytag="NL3D::CSnappedVector::_Capacity" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp0">_Capacity</a><code> [protected]</code>
+ </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="a06213.html#l00247">247</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectorp1" doxytag="NL3D::CSnappedVector::_Size" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp1">_Size</a><code> [protected]</code>
+ </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="a06213.html#l00246">246</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectorp2" doxytag="NL3D::CSnappedVector::_Start" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a>* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp2">_Start</a><code> [protected]</code>
+ </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="a06213.html#l00244">244</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00052">NL3D::CSnappedVector&lt; T, snapPower &gt;::CSnappedVector()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector&lt; T, snapPower &gt;::~CSnappedVector()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CSnappedVectorp3" doxytag="NL3D::CSnappedVector::_Tab" ></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" colspan="4">
+template&lt;class T, const uint snapPower = 5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>&lt; T, snapPower &gt;::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorp3">_Tab</a><code> [protected]</code>
+ </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="a06213.html#l00245">245</a> of file <a class="el" href="a06213.html">ps_attrib.h</a>.
+<p>
+Referenced by <a class="el" href="a06213.html#l00082">NL3D::CSnappedVector&lt; T, snapPower &gt;::back()</a>, <a class="el" href="a06213.html#l00062">NL3D::CSnappedVector&lt; T, snapPower &gt;::begin()</a>, <a class="el" href="a06213.html#l00052">NL3D::CSnappedVector&lt; T, snapPower &gt;::CSnappedVector()</a>, <a class="el" href="a06213.html#l00064">NL3D::CSnappedVector&lt; T, snapPower &gt;::end()</a>, <a class="el" href="a06213.html#l00067">NL3D::CSnappedVector&lt; T, snapPower &gt;::operator[]()</a>, <a class="el" href="a06213.html#l00202">NL3D::CSnappedVector&lt; T, snapPower &gt;::pop_back()</a>, <a class="el" href="a06213.html#l00171">NL3D::CSnappedVector&lt; T, snapPower &gt;::push_back()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector&lt; T, snapPower &gt;::reserve()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector&lt; T, snapPower &gt;::resize()</a>, <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector&lt; T, snapPower &gt;::serial()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector&lt; T, snapPower &gt;::~CSnappedVector()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following file:<ul>
+<li><a class="el" href="a06213.html">ps_attrib.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 07:47:13 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>