diff options
author | neodarz <neodarz@neodarz.net> | 2018-08-11 20:21:34 +0200 |
---|---|---|
committer | neodarz <neodarz@neodarz.net> | 2018-08-11 20:21:34 +0200 |
commit | 0ea5fc66924303d1bf73ba283a383e2aadee02f2 (patch) | |
tree | 2568e71a7ccc44ec23b8bb3f0ff97fb6bf2ed709 /docs/doxygen/nel/a03409.html | |
download | nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip |
Initial commit
Diffstat (limited to 'docs/doxygen/nel/a03409.html')
-rw-r--r-- | docs/doxygen/nel/a03409.html | 1201 |
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< T, snapPower > 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CSnappedVector< T, snapPower > Class Template Reference</h1><code>#include <<a class="el" href="a06213.html">ps_attrib.h</a>></code> +<p> +<hr><a name="_details"></a><h2>Detailed Description</h2> +<h3>template<class T, const uint snapPower = 5><br> + class NL3D::CSnappedVector< T, snapPower ></h3> + +a container that is like a vector, but snapped to (1<<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 * </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 * </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 </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 & </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 & </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> </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> </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> </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 </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> </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 </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> </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> </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 & </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 & </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 </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 </td><td class="memItemRight" valign=bottom><a class="el" href="a03409.html#NL3D_1_1CSnappedVectora13">push_back</a> (const T &<a class="el" href="a04223.html#a627">t</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </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"> </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 </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 </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> &f) throw (NLMISC::EStream)</td></tr> + +<tr><td class="mdescLeft"> </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> </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> </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> </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> </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> * </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 * </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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> typedef const T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::<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> + + </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< T, snapPower >::begin()</a>, and <a class="el" href="a06213.html#l00065">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> typedef T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::<a class="el" href="a03409.html#NL3D_1_1CSnappedVectorw1">iterator</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::begin()</a>, <a class="el" href="a06213.html#l00064">NL3D::CSnappedVector< T, snapPower >::end()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::reserve()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector< T, snapPower >::resize()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector< T, snapPower >::~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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> typedef T <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::<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> + + </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 & 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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::<a class="el" href="a03409.html">CSnappedVector</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Start</a>, and <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector< T, snapPower >::_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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::~<a class="el" href="a03409.html">CSnappedVector</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Start</a>, <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector< T, snapPower >::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector< T, snapPower >::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 <= _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->~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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> const T& <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::back </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_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 > 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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> T& <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::back </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_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 > 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<class T, const uint snapPower = 5> </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>< T, snapPower >::begin </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, and <a class="el" href="a06213.html#l00049">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </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>< T, snapPower >::begin </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, and <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </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>< T, snapPower >::capacity </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::clear </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::resize()</a>. +<p> +Referenced by <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::empty </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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<class T, const uint snapPower = 5> </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>< T, snapPower >::end </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, and <a class="el" href="a06213.html#l00049">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </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>< T, snapPower >::end </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, and <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector< T, snapPower >::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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> const T& <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::operator[] </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>index</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_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 < _Size && _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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> T& <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::operator[] </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>index</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_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 < _Size && _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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::pop_back </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::push_back </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const T & </td> + <td class="mdname1" valign="top" nowrap> <em>t</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::reserve()</a>, and <a class="el" href="a05646.html#l00985">t</a>. +<p> +Referenced by <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector< T, snapPower >::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> < <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>>1)); +00195 } +00196 <a class="code" href="a04199.html#a6">nlassert</a>(_Size <= _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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::reserve </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>capacity</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Start</a>, <a class="el" href="a06213.html#l00245">NL3D::CSnappedVector< T, snapPower >::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector< T, snapPower >::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< T, snapPower >::push_back()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector< T, snapPower >::resize()</a>, and <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector< T, snapPower >::serial()</a>. +<p> +<div class="fragment"><pre>00102 { +00103 <span class="keywordflow">if</span> (capacity < <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 << snapPower)]; +00108 T *newTab = (T *) ( (<a class="code" href="a04558.html#a15">uint</a>) (newStart + (1 << snapPower)) & ~((1 << 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 < <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->~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 < <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 <= _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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::resize </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>size</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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< T, snapPower >::_Tab</a>, <a class="el" href="a06213.html#l00048">NL3D::CSnappedVector< T, snapPower >::iterator</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::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< T, snapPower >::clear()</a>. +<p> +<div class="fragment"><pre>00146 { +00147 <a class="code" href="a04199.html#a6">nlassert</a>(size < (1 << 16)); +00148 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a587">size</a> < <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->~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> > <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 <= _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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> void <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::serial </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>f</em> </td> + <td class="md" valign="top"> ) </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> + + </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< T, snapPower >::_Tab</a>, <a class="el" href="a06213.html#l00240">NL3D::CSnappedVector< T, snapPower >::clear()</a>, <a class="el" href="a06213.html#l00171">NL3D::CSnappedVector< T, snapPower >::push_back()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::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 < <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 < <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<class T, const uint snapPower = 5> </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>< T, snapPower >::<a class="el" href="a04223.html#a587">size</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </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<class T, const uint snapPower = 5> </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>< T, snapPower >::<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> + + </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<class T, const uint snapPower = 5> </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>< T, snapPower >::<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> + + </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<class T, const uint snapPower = 5> </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>< T, snapPower >::<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> + + </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< T, snapPower >::CSnappedVector()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::reserve()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector< T, snapPower >::~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<class T, const uint snapPower = 5> </td> + </tr> + <tr> + <td class="md" nowrap valign="top"> T* <a class="el" href="a03409.html">NL3D::CSnappedVector</a>< T, snapPower >::<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> + + </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< T, snapPower >::back()</a>, <a class="el" href="a06213.html#l00062">NL3D::CSnappedVector< T, snapPower >::begin()</a>, <a class="el" href="a06213.html#l00052">NL3D::CSnappedVector< T, snapPower >::CSnappedVector()</a>, <a class="el" href="a06213.html#l00064">NL3D::CSnappedVector< T, snapPower >::end()</a>, <a class="el" href="a06213.html#l00067">NL3D::CSnappedVector< T, snapPower >::operator[]()</a>, <a class="el" href="a06213.html#l00202">NL3D::CSnappedVector< T, snapPower >::pop_back()</a>, <a class="el" href="a06213.html#l00171">NL3D::CSnappedVector< T, snapPower >::push_back()</a>, <a class="el" href="a06213.html#l00101">NL3D::CSnappedVector< T, snapPower >::reserve()</a>, <a class="el" href="a06213.html#l00145">NL3D::CSnappedVector< T, snapPower >::resize()</a>, <a class="el" href="a06213.html#l00214">NL3D::CSnappedVector< T, snapPower >::serial()</a>, and <a class="el" href="a06213.html#l00053">NL3D::CSnappedVector< T, snapPower >::~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> |