aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/classNL3D_1_1CShapeBank.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/classNL3D_1_1CShapeBank.html
downloadnevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz
nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip
Initial commit
Diffstat (limited to 'docs/doxygen/nel/classNL3D_1_1CShapeBank.html')
-rw-r--r--docs/doxygen/nel/classNL3D_1_1CShapeBank.html1553
1 files changed, 1553 insertions, 0 deletions
diff --git a/docs/doxygen/nel/classNL3D_1_1CShapeBank.html b/docs/doxygen/nel/classNL3D_1_1CShapeBank.html
new file mode 100644
index 00000000..eea65e55
--- /dev/null
+++ b/docs/doxygen/nel/classNL3D_1_1CShapeBank.html
@@ -0,0 +1,1553 @@
+<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+<HTML>
+<HEAD>
+ <TITLE>nevrax.org : docs</TITLE>
+ <LINK REL=stylesheet TYPE="text/css" HREF="http://www.nevrax.org/inc/css/nevrax.css">
+ <link href="doxygen.css" rel="stylesheet" type="text/css">
+</HEAD>
+<BODY MARGINHEIGHT="0" MARGINWIDTH="0">
+
+<!-- uplinks -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0>
+ <TR>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD WIDTH=140 BGCOLOR=#dddddd><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle>&nbsp;<A CLASS=uplinks HREF=http://www.nevrax.org><b>Home</B></FONT></A>&nbsp;&nbsp;&nbsp;</TD>
+ <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle>&nbsp;<A CLASS=uplinks HREF=http://www.nevrax.com><b>nevrax.com</B></FONT></A>&nbsp;&nbsp;&nbsp;</TD>
+ </TR>
+</TABLE>
+
+<!-- banner Nevrax -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
+ <TR><TD BGCOLOR="#000000" BACKGROUND="http://www.nevrax.org/inc/img/black_banner.jpg"><A HREF="http://www.nevrax.org"><IMG SRC="http://www.nevrax.org/inc/img/nevrax.gif" WIDTH="170" HEIGHT="45" BORDER=0 ALT="Nevrax" ></A></TD></TR>
+</TABLE>
+
+<!-- main table -->
+<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 height=100%>
+ <TR>
+ <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="10" BORDER=0 ALT=""></TD>
+ <TD WIDTH=140 BGCOLOR=#dddddd VALIGN=TOP ALIGN=middle><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT="">
+
+ <!------ Begin Box ------>
+ <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 BGCOLOR=black><TR><TD><TABLE border=0 cellspacing=2 cellpadding=0 width=120><tr><TD ALIGN=middle bgcolor=black>
+ <FONT COLOR=white FACE="sans-serif"><B>Nevrax.org</B></FONT></TD></TR><tr><td colspan=2 bgcolor=#FFFFFF>
+ <TABLE cellspacing=0 cellpadding=1 border=0>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="Rubrique news"><img width=13 height=15 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-news.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="News">News</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Rubrique mail"><img width=15 height=11 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-mail.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Mailing list archive">Mailing-list</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Rubrique docs"><img width=14 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-docs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Documentation">Documentation</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="Rubrique cvs"><img width=13 height=17 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-cvs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="CVS Web">CVS</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Rubrique bugs"><img width=20 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-bugs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Bugtracking">Bugs</a></td></tr>
+ <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="Rubrique license"><img width=18 height=12 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-gpl.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="License">License</a></td></tr>
+ </TABLE>
+ </TD></TR></TABLE></TD></TR></TABLE>
+ <!------ End Box ------>
+
+ </TD>
+ <TD WIDTH=15><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD>
+ <TD ALIGN=left valign=top><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT="">
+
+<!-- title -->
+<TABLE background="http://www.nevrax.org/inc/img/redline.gif" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td>
+<A HREF="http://www.nevrax.org/docs/"><img src="http://www.nevrax.org/inc/img/t_docs.gif" ALT="Docs" HEIGHT=20 BORDER=0></A>
+</td><td><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="1" HEIGHT="1" BORDER=0 ALT="">
+</td></tr></table>
+&nbsp;
+
+<!-- block -->
+<TABLE bgcolor="#dddddd" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td width=1% valign=middle><img width=6 height=14 hspace=2 vspace=2 src="http://www.nevrax.org/inc/img/reddots.gif"></TD>
+ <TD><B>Documentation</B></TD>
+ <TD ALIGN=RIGHT>&nbsp;</td>
+</tr></table>
+<!-- Generated by Doxygen 1.2.14 -->
+<center>
+<a class="qindex" href="index.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; <a class="qindexRef" doxygen="_cgi:http://www.nevrax.org/cgi-bin/nel-search.cgi" href="http://www.nevrax.org/cgi-bin/nel-search.cgi">Search</a> &nbsp; </center>
+<hr><h1>NL3D::CShapeBank Class Reference</h1>A <a class="el" href="classNL3D_1_1CShapeBank.html">CShapeBank</a> handle all the instance of the shapes and the cache management system.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>&gt;</code>
+<p>
+<a href="classNL3D_1_1CShapeBank-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
+<tr><td colspan=2><br><h2>Shape/Instances.</h2></td></tr>
+<tr><td nowrap align=right valign=top>typedef <a class="el" href="classNLMISC_1_1CSmartPtr.html">NLMISC::CSmartPtr</a>&lt;<br>
+ <a class="el" href="classNL3D_1_1IShape.html">IShape</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_0">PShape</a></td></tr>
+<tr><td nowrap align=right valign=top>typedef std::map&lt; std::string,<br>
+ <a class="el" href="classNL3D_1_1CShapeBank.html#z798_0">PShape</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_1">TShapeMap</a></td></tr>
+<tr><td nowrap align=right valign=top>typedef std::map&lt; std::string,<br>
+ <a class="el" href="structNL3D_1_1CShapeBank_1_1CWaitingShape.html">CWaitingShape</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_2">TWaitingShapesMap</a></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_3">processWSUploadTexture</a> (<a class="el" href="structNL3D_1_1CShapeBank_1_1CWaitingShape.html">CWaitingShape</a> &amp;rWS, <a class="el" href="memory__common_8h.html#a11">uint32</a> &amp;nTotalUploaded, <a class="el" href="classNL3D_1_1ITexture.html">ITexture</a> *pText)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>return true if the texture is entirely uploaded.</em> <a href="#z798_3">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z798_1">TShapeMap</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_4">ShapeMap</a></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z798_2">TWaitingShapesMap</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_5">WaitingShapes</a></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a11">uint32</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_6">_MaxUploadPerFrame</a></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z798_7">_pDriver</a></td></tr>
+<tr><td colspan=2><br><h2>Shape/Caches.</h2></td></tr>
+<tr><td nowrap align=right valign=top>typedef std::map&lt; std::string,<br>
+ std::string &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_0">TShapeCacheNameMap</a></td></tr>
+<tr><td nowrap align=right valign=top>typedef std::map&lt; std::string,<br>
+ <a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_1">TShapeCacheMap</a></td></tr>
+<tr><td nowrap align=right valign=top>typedef std::map&lt; <a class="el" href="classNL3D_1_1IShape.html">IShape</a> *,<br>
+ <a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeInfo.html">CShapeInfo</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_2">TShapeInfoMap</a></td></tr>
+<tr><td nowrap align=right valign=top>std::string *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_3">getShapeNameFromShapePtr</a> (<a class="el" href="classNL3D_1_1IShape.html">IShape</a> *pShp)</td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_4">getShapePtrFromShapeName</a> (const std::string &amp;pShpName)</td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_5">getShapeCachePtrFromShapePtr</a> (<a class="el" href="classNL3D_1_1IShape.html">IShape</a> *pShp)</td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_6">getShapeCachePtrFromShapeCacheName</a> (const std::string &amp;shapeCacheName)</td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_7">getShapeCachePtrFromShapeName</a> (const std::string &amp;shapeName)</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_8">checkShapeCache</a> (<a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> *pShpCache)</td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z799_0">TShapeCacheNameMap</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_9">ShapeNameToShapeCacheName</a></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z799_1">TShapeCacheMap</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_10">ShapeCacheNameToShapeCache</a></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z799_2">TShapeInfoMap</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z799_11">ShapePtrToShapeInfo</a></td></tr>
+<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
+<tr><td colspan="2"><div class="groupHeader">State of a shape</div></td></tr>
+<tr><td nowrap align=right valign=top>enum &nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z794_0">TShapeState</a> { <br>
+&nbsp;&nbsp;<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s0">NotPresent</a>,
+<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s1">Present</a>,
+<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s2">AsyncLoad_Error</a>,
+<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s3">AsyncLoad_Shape</a>,
+<br>
+&nbsp;&nbsp;<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s4">AsyncLoad_Texture</a>,
+<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s5">AsyncLoad_Ready</a>,
+<a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s6">AsyncLoad_Delete</a>
+<br>
+ }</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>NotPresent : Not present in the bank Present : Present in the bank and ready to be used AsyncLoad_Error : Asynchronous loading failed AsyncLoad_Shape : Asynchronous loading is currently loading the .shape file, textures and lightmaps AsyncLoad_Texture : Asynchronous loading is currently uploading textures and lightmaps to VRAM.</em> <a href="#z794_0">More...</a><em></em></font><br><br></td></tr>
+<tr><td colspan=2><br><h2>Public Methods</h2></td></tr>
+<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#a0">CShapeBank</a> ()</td></tr>
+<tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#a1">~CShapeBank</a> ()</td></tr>
+<tr><td colspan="2"><div class="groupHeader">Instance Management</div></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_0">addRef</a> (const std::string &amp;shapeName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Add a reference to a shape and return the instance created.</em> <a href="#z795_0">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_1">release</a> (<a class="el" href="classNL3D_1_1IShape.html">IShape</a> *pShp)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Release a reference to a shape by its instance.</em> <a href="#z795_1">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CShapeBank.html#z794_0">TShapeState</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_2">isPresent</a> (const std::string &amp;shapeName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Return TRUE if the shape is present in the bank. Process the waiting shapes.</em> <a href="#z795_2">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_3">load</a> (const std::string &amp;shapeName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Load the corresponding file from disk and add it to the bank.</em> <a href="#z795_3">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_4">loadAsync</a> (const std::string &amp;shapeName, <a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> *pDriver, bool *bSignal=NULL)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Load the corresponding file from disk asynchronously and add it to the bank.</em> <a href="#z795_4">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_5">cancelLoadAsync</a> (const std::string &amp;shapeName)</td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_6">isShapeWaiting</a> ()</td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_7">processWaitingShapes</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>processWaitingShapes must be done one time per frame.</em> <a href="#z795_7">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_8">setMaxBytesToUpload</a> (<a class="el" href="memory__common_8h.html#a11">uint32</a> MaxUploadPerFrame)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Setup the maximum number of bytes to upload for a frame (texture upload from RAM to VRAM).</em> <a href="#z795_8">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z795_9">add</a> (const std::string &amp;shapeName, <a class="el" href="classNL3D_1_1IShape.html">IShape</a> *shape)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Add directly a shape to the bank. If the shape name is already used do nothing.</em> <a href="#z795_9">More...</a><em></em></font><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Shape cache management</div></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_0">addShapeCache</a> (const std::string &amp;shapeCacheName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Add a new ShapeCache. If already exist do nothing.</em> <a href="#z796_0">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_1">removeShapeCache</a> (const std::string &amp;shapeCacheName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Remove a ShapeCache.</em> <a href="#z796_1">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_2">isShapeCache</a> (const std::string &amp;shapeCacheName) const</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>true if the shape cache exist.</em> <a href="#z796_2">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_3">reset</a> ()</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Remove all ShapeCache and suppress all links (even the link to the default cache are removed).</em> <a href="#z796_3">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_4">setShapeCacheSize</a> (const std::string &amp;shapeCacheName, <a class="el" href="memory__common_8h.html#a10">sint32</a> maxSize)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Set the shapeCache shapeCacheName the new size.(delete shapes if maxsize&lt;shapeCacheSize).</em> <a href="#z796_4">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a14">sint</a>&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_5">getShapeCacheFreeSpace</a> (const std::string &amp;shapeCacheName) const</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>return free cache space (maxSize-nbCurrentInCache).</em> <a href="#z796_5">More...</a><em></em></font><br><br></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z796_6">linkShapeToShapeCache</a> (const std::string &amp;shapeName, const std::string &amp;shapeCacheName)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>Link a shape to a ShapeCache. The ShapeCache must exist and must not contains the shape.</em> <a href="#z796_6">More...</a><em></em></font><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">Tools</div></td></tr>
+<tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classNL3D_1_1CShapeBank.html#z797_0">preLoadShapes</a> (const std::string &amp;shapeCacheName, const std::vector&lt; std::string &gt; &amp;listFile, const std::string &amp;wildCardNotLwr)</td></tr>
+<tr><td>&nbsp;</td><td><font size=-1><em>PreLoad all shapes (.shape, .ps, .skel...) files from a list of files Shapes are Loaded if not present, assigned to the given cache, and fit in the cache Size as max possible.</em> <a href="#z797_0">More...</a><em></em></font><br><br></td></tr>
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+A <a class="el" href="classNL3D_1_1CShapeBank.html">CShapeBank</a> handle all the instance of the shapes and the cache management system.
+<p>
+There is a default cache. If the shape is not linked explicitly to any cache it is linked to the default cache. The comportement of this cache is to not do any cache. When the release is called on the last reference to a shape linked to this cache, the shape is removed instantly. This is the behavior of all newly created cache before we call the setShapeCacheSize method.
+<p>
+NB: ShapeCacheName is case-sensitive but shapeName are not (all entry are lwrcased)
+<p>
+<dl compact><dt><b>
+Author: </b><dd>
+Matthieu Besson , Nevrax France </dl><dl compact><dt><b>
+Date: </b><dd>
+2000 </dl>
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8h-source.html#l00058">58</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.<hr><h2>Member Typedef Documentation</h2>
+<a name="z798_0" doxytag="NL3D::CShapeBank::PShape"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef <a class="el" href="classNLMISC_1_1CSmartPtr.html">NLMISC::CSmartPtr</a>&lt;<a class="el" href="classNL3D_1_1IShape.html">IShape</a>&gt; NL3D::CShapeBank::PShape<code> [private]</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="shape__bank_8h-source.html#l00155">155</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<a name="z799_1" doxytag="NL3D::CShapeBank::TShapeCacheMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt;std::string,<a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a>&gt; NL3D::CShapeBank::TShapeCacheMap<code> [private]</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="shape__bank_8h-source.html#l00221">221</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<a name="z799_0" doxytag="NL3D::CShapeBank::TShapeCacheNameMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt;std::string,std::string&gt; NL3D::CShapeBank::TShapeCacheNameMap<code> [private]</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="shape__bank_8h-source.html#l00220">220</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<a name="z799_2" doxytag="NL3D::CShapeBank::TShapeInfoMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt;<a class="el" href="classNL3D_1_1IShape.html">IShape</a>*,<a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeInfo.html">CShapeInfo</a>&gt; NL3D::CShapeBank::TShapeInfoMap<code> [private]</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="shape__bank_8h-source.html#l00222">222</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<a name="z798_1" doxytag="NL3D::CShapeBank::TShapeMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt;std::string, <a class="el" href="classNL3D_1_1CShapeBank.html#z798_0">PShape</a>&gt; NL3D::CShapeBank::TShapeMap<code> [private]</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="shape__bank_8h-source.html#l00156">156</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<a name="z798_2" doxytag="NL3D::CShapeBank::TWaitingShapesMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt; std::string, <a class="el" href="structNL3D_1_1CShapeBank_1_1CWaitingShape.html">CWaitingShape</a> &gt; NL3D::CShapeBank::TWaitingShapesMap<code> [private]</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="shape__bank_8h-source.html#l00181">181</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Member Enumeration Documentation</h2>
+<a name="z794_0" doxytag="NL3D::CShapeBank::TShapeState"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> enum NL3D::CShapeBank::TShapeState
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+NotPresent : Not present in the bank Present : Present in the bank and ready to be used AsyncLoad_Error : Asynchronous loading failed AsyncLoad_Shape : Asynchronous loading is currently loading the .shape file, textures and lightmaps AsyncLoad_Texture : Asynchronous loading is currently uploading textures and lightmaps to VRAM.
+<p>
+<dl compact><dt><b>
+Enumeration values:</b><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em><a name="z794_0s0" doxytag="NotPresent"></a><em>NotPresent</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s1" doxytag="Present"></a><em>Present</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s2" doxytag="AsyncLoad_Error"></a><em>AsyncLoad_Error</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s3" doxytag="AsyncLoad_Shape"></a><em>AsyncLoad_Shape</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s4" doxytag="AsyncLoad_Texture"></a><em>AsyncLoad_Texture</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s5" doxytag="AsyncLoad_Ready"></a><em>AsyncLoad_Ready</em></em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a name="z794_0s6" doxytag="AsyncLoad_Delete"></a><em>AsyncLoad_Delete</em></em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8h-source.html#l00070">70</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a name="a0" doxytag="NL3D::CShapeBank::CShapeBank"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CShapeBank::CShapeBank </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00043">43</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00183">_MaxUploadPerFrame</a>, and <a class="el" href="classNL3D_1_1CShapeBank.html#z796_0">addShapeCache</a>. </td>
+ </tr>
+</table>
+<a name="a1" doxytag="NL3D::CShapeBank::~CShapeBank"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CShapeBank::~CShapeBank </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00052">52</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>. </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a name="z795_9" doxytag="NL3D::CShapeBank::add"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::add </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeName</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shape</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Add directly a shape to the bank. If the shape name is already used do nothing.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00133">processWaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z795_0" doxytag="NL3D::CShapeBank::addRef"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1IShape.html">IShape</a>* NL3D::CShapeBank::addRef </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Add a reference to a shape and return the instance created.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z796_0" doxytag="NL3D::CShapeBank::addShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::addShapeCache </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeCacheName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Add a new ShapeCache. If already exist do nothing.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00043">CShapeBank</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00555">reset</a>. </td>
+ </tr>
+</table>
+<a name="z795_5" doxytag="NL3D::CShapeBank::cancelLoadAsync"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::cancelLoadAsync </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00451">451</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00182">WaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z799_8" doxytag="NL3D::CShapeBank::checkShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::checkShapeCache </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>pShpCache</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</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="shape__bank_8cpp-source.html#l00701">701</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8cpp-source.html#l00677">getShapeNameFromShapePtr</a>, <a class="el" href="shape__bank_8h-source.html#l00157">ShapeMap</a>, and <a class="el" href="shape__bank_8h-source.html#l00225">ShapePtrToShapeInfo</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>, <a class="el" href="shape__bank_8cpp-source.html#l00528">removeShapeCache</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00555">reset</a>. </td>
+ </tr>
+</table>
+<a name="z796_5" doxytag="NL3D::CShapeBank::getShapeCacheFreeSpace"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="memory__common_8h.html#a14">sint</a> NL3D::CShapeBank::getShapeCacheFreeSpace </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeCacheName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return free cache space (maxSize-nbCurrentInCache).
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00587">587</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00224">ShapeCacheNameToShapeCache</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z799_6" doxytag="NL3D::CShapeBank::getShapeCachePtrFromShapeCacheName"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeCache</a>* NL3D::CShapeBank::getShapeCachePtrFromShapeCacheName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeCacheName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00689">getShapeCachePtrFromShapeName</a>, <a class="el" href="shape__bank_8cpp-source.html#l00528">removeShapeCache</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00555">reset</a>. </td>
+ </tr>
+</table>
+<a name="z799_7" doxytag="NL3D::CShapeBank::getShapeCachePtrFromShapeName"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeBank::CShapeCache</a> * NL3D::CShapeBank::getShapeCachePtrFromShapeName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</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="shape__bank_8cpp-source.html#l00689">689</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="classNL3D_1_1CShapeBank.html#z799_6">getShapeCachePtrFromShapeCacheName</a>, and <a class="el" href="shape__bank_8h-source.html#l00223">ShapeNameToShapeCacheName</a>. </td>
+ </tr>
+</table>
+<a name="z799_5" doxytag="NL3D::CShapeBank::getShapeCachePtrFromShapePtr"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="structNL3D_1_1CShapeBank_1_1CShapeCache.html">CShapeBank::CShapeCache</a> * NL3D::CShapeBank::getShapeCachePtrFromShapePtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>pShp</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</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="shape__bank_8cpp-source.html#l00641">641</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00225">ShapePtrToShapeInfo</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>. </td>
+ </tr>
+</table>
+<a name="z799_3" doxytag="NL3D::CShapeBank::getShapeNameFromShapePtr"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> string * NL3D::CShapeBank::getShapeNameFromShapePtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>pShp</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</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="shape__bank_8cpp-source.html#l00677">677</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00225">ShapePtrToShapeInfo</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>. </td>
+ </tr>
+</table>
+<a name="z799_4" doxytag="NL3D::CShapeBank::getShapePtrFromShapeName"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1IShape.html">IShape</a> * NL3D::CShapeBank::getShapePtrFromShapeName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>pShpName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</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="shape__bank_8cpp-source.html#l00653">653</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00157">ShapeMap</a>. </td>
+ </tr>
+</table>
+<a name="z795_2" doxytag="NL3D::CShapeBank::isPresent"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0">TShapeState</a> NL3D::CShapeBank::isPresent </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Return TRUE if the shape is present in the bank. Process the waiting shapes.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z796_2" doxytag="NL3D::CShapeBank::isShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CShapeBank::isShapeCache </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeCacheName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+true if the shape cache exist.
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00719">719</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00224">ShapeCacheNameToShapeCache</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z795_6" doxytag="NL3D::CShapeBank::isShapeWaiting"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CShapeBank::isShapeWaiting </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00471">471</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00182">WaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z796_6" doxytag="NL3D::CShapeBank::linkShapeToShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::linkShapeToShapeCache </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeName</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeCacheName</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Link a shape to a ShapeCache. The ShapeCache must exist and must not contains the shape.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z795_3" doxytag="NL3D::CShapeBank::load"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::load </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Load the corresponding file from disk and add it to the bank.
+<p>
+
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z795_4" doxytag="NL3D::CShapeBank::loadAsync"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::loadAsync </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeName</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>pDriver</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>bool *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>bSignal</em> = NULL</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Load the corresponding file from disk asynchronously and add it to the bank.
+<p>
+The driver passed to this function is used to know if we have to load the textures.
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00429">429</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00192">_pDriver</a>, <a class="el" href="shape__bank_8h-source.html#l00157">ShapeMap</a>, and <a class="el" href="shape__bank_8h-source.html#l00182">WaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z797_0" doxytag="NL3D::CShapeBank::preLoadShapes"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::preLoadShapes </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeCacheName</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>const std::vector&lt; std::string &gt; &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>listFile</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap>const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>wildCardNotLwr</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+PreLoad all shapes (.shape, .ps, .skel...) files from a list of files Shapes are Loaded if not present, assigned to the given cache, and fit in the cache Size as max possible.
+<p>
+NB: crash if you try to load a non shape file (eg: a .dds etc...) <dl compact><dt><b>
+Parameters: </b><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em>shapeCacheName</em>&nbsp;</td><td>
+name of a shapeCache created with <a class="el" href="classNL3D_1_1CShapeBank.html#z796_0">addShapeCache</a>()/<a class="el" href="classNL3D_1_1CShapeBank.html#z796_4">setShapeCacheSize</a>(). no-op if don't exist </td></tr>
+<tr><td valign=top><em>fileList</em>&nbsp;</td><td>
+a list of file names. NB: CPath is used to load the shapes. </td></tr>
+<tr><td valign=top><em>wildcard</em>&nbsp;</td><td>
+a filter string like: "*.shape", "??_HOM*.shape". NB: strlwr-ed internally </td></tr>
+</table>
+</dl>
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00725">725</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="classNL3D_1_1CShapeBank.html#z795_0">addRef</a>, <a class="el" href="shape__bank_8cpp-source.html#l00587">getShapeCacheFreeSpace</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z795_2">isPresent</a>, <a class="el" href="shape__bank_8cpp-source.html#l00719">isShapeCache</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z796_6">linkShapeToShapeCache</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z795_3">load</a>, <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>, and <a class="el" href="algo_8cpp-source.html#l00040">NLMISC::testWildCard</a>. </td>
+ </tr>
+</table>
+<a name="z795_7" doxytag="NL3D::CShapeBank::processWaitingShapes"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::processWaitingShapes </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+processWaitingShapes must be done one time per frame.
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00133">133</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00183">_MaxUploadPerFrame</a>, <a class="el" href="shape__bank_8h-source.html#l00192">_pDriver</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z795_9">add</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s6">AsyncLoad_Delete</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s2">AsyncLoad_Error</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s5">AsyncLoad_Ready</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s3">AsyncLoad_Shape</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z794_0s4">AsyncLoad_Texture</a>, <a class="el" href="material_8h-source.html#l00047">NL3D::IDRV_MAT_MAXTEXTURES</a>, <a class="el" href="debug_8h-source.html#l00374">nlstop</a>, <a class="el" href="shape__bank_8cpp-source.html#l00290">processWSUploadTexture</a>, and <a class="el" href="shape__bank_8h-source.html#l00182">WaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z798_3" doxytag="NL3D::CShapeBank::processWSUploadTexture"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CShapeBank::processWSUploadTexture </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="structNL3D_1_1CShapeBank_1_1CWaitingShape.html">CWaitingShape</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>rWS</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="memory__common_8h.html#a11">uint32</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>nTotalUploaded</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="classNL3D_1_1ITexture.html">ITexture</a> *&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>pText</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+return true if the texture is entirely uploaded.
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00290">290</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00183">_MaxUploadPerFrame</a>, and <a class="el" href="shape__bank_8h-source.html#l00192">_pDriver</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00133">processWaitingShapes</a>. </td>
+ </tr>
+</table>
+<a name="z795_1" doxytag="NL3D::CShapeBank::release"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::release </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="classNL3D_1_1IShape.html">IShape</a> *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>pShp</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Release a reference to a shape by its instance.
+<p>
+If the shape has no more reference it is added to its own shape cache. When the shape cache is full the last entry is deleted.
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00094">94</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, <a class="el" href="shape__bank_8cpp-source.html#l00641">getShapeCachePtrFromShapePtr</a>, <a class="el" href="shape__bank_8cpp-source.html#l00677">getShapeNameFromShapePtr</a>, <a class="el" href="debug_8h-source.html#l00254">nlassert</a>, <a class="el" href="debug_8h-source.html#l00114">nlwarning</a>, <a class="el" href="shape__bank_8h-source.html#l00157">ShapeMap</a>, and <a class="el" href="shape__bank_8h-source.html#l00225">ShapePtrToShapeInfo</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00725">preLoadShapes</a>. </td>
+ </tr>
+</table>
+<a name="z796_1" doxytag="NL3D::CShapeBank::removeShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::removeShapeCache </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>shapeCacheName</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Remove a ShapeCache.
+<p>
+All shapes in the shape cache are deleted. All links are redirected to the default ShapeCache
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00528">528</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z799_6">getShapeCachePtrFromShapeCacheName</a>, <a class="el" href="shape__bank_8h-source.html#l00224">ShapeCacheNameToShapeCache</a>, and <a class="el" href="shape__bank_8h-source.html#l00223">ShapeNameToShapeCacheName</a>. </td>
+ </tr>
+</table>
+<a name="z796_3" doxytag="NL3D::CShapeBank::reset"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::reset </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Remove all ShapeCache and suppress all links (even the link to the default cache are removed).
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00555">555</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="classNL3D_1_1CShapeBank.html#z796_0">addShapeCache</a>, <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, <a class="el" href="classNL3D_1_1CShapeBank.html#z799_6">getShapeCachePtrFromShapeCacheName</a>, <a class="el" href="debug_8h-source.html#l00374">nlstop</a>, <a class="el" href="shape__bank_8h-source.html#l00224">ShapeCacheNameToShapeCache</a>, and <a class="el" href="shape__bank_8h-source.html#l00223">ShapeNameToShapeCacheName</a>. </td>
+ </tr>
+</table>
+<a name="z795_8" doxytag="NL3D::CShapeBank::setMaxBytesToUpload"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::setMaxBytesToUpload </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap>&nbsp; <em>MaxUploadPerFrame</em> </td>
+ <td class="md" valign="top">)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Setup the maximum number of bytes to upload for a frame (texture upload from RAM to VRAM).
+<p>
+
+<p>
+Definition at line <a class="el" href="shape__bank_8cpp-source.html#l00284">284</a> of file <a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a>.
+<p>
+References <a class="el" href="shape__bank_8h-source.html#l00183">_MaxUploadPerFrame</a>. </td>
+ </tr>
+</table>
+<a name="z796_4" doxytag="NL3D::CShapeBank::setShapeCacheSize"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CShapeBank::setShapeCacheSize </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const std::string &amp;&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>shapeCacheName</em>, </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="memory__common_8h.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap>&nbsp; <em>maxSize</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the shapeCache shapeCacheName the new size.(delete shapes if maxsize&lt;shapeCacheSize).
+<p>
+ </td>
+ </tr>
+</table>
+<hr><h2>Member Data Documentation</h2>
+<a name="z798_6" doxytag="NL3D::CShapeBank::_MaxUploadPerFrame"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="memory__common_8h.html#a11">uint32</a> NL3D::CShapeBank::_MaxUploadPerFrame<code> [private]</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="shape__bank_8h-source.html#l00183">183</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00043">CShapeBank</a>, <a class="el" href="shape__bank_8cpp-source.html#l00133">processWaitingShapes</a>, <a class="el" href="shape__bank_8cpp-source.html#l00290">processWSUploadTexture</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00284">setMaxBytesToUpload</a>. </td>
+ </tr>
+</table>
+<a name="z798_7" doxytag="NL3D::CShapeBank::_pDriver"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1IDriver.html">IDriver</a>* NL3D::CShapeBank::_pDriver<code> [private]</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="shape__bank_8h-source.html#l00192">192</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00429">loadAsync</a>, <a class="el" href="shape__bank_8cpp-source.html#l00133">processWaitingShapes</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00290">processWSUploadTexture</a>. </td>
+ </tr>
+</table>
+<a name="z799_10" doxytag="NL3D::CShapeBank::ShapeCacheNameToShapeCache"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z799_1">TShapeCacheMap</a> NL3D::CShapeBank::ShapeCacheNameToShapeCache<code> [private]</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="shape__bank_8h-source.html#l00224">224</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00587">getShapeCacheFreeSpace</a>, <a class="el" href="shape__bank_8cpp-source.html#l00719">isShapeCache</a>, <a class="el" href="shape__bank_8cpp-source.html#l00528">removeShapeCache</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00555">reset</a>. </td>
+ </tr>
+</table>
+<a name="z798_4" doxytag="NL3D::CShapeBank::ShapeMap"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z798_1">TShapeMap</a> NL3D::CShapeBank::ShapeMap<code> [private]</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="shape__bank_8h-source.html#l00157">157</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, <a class="el" href="shape__bank_8cpp-source.html#l00653">getShapePtrFromShapeName</a>, <a class="el" href="shape__bank_8cpp-source.html#l00429">loadAsync</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>. </td>
+ </tr>
+</table>
+<a name="z799_9" doxytag="NL3D::CShapeBank::ShapeNameToShapeCacheName"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z799_0">TShapeCacheNameMap</a> NL3D::CShapeBank::ShapeNameToShapeCacheName<code> [private]</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="shape__bank_8h-source.html#l00223">223</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00689">getShapeCachePtrFromShapeName</a>, <a class="el" href="shape__bank_8cpp-source.html#l00528">removeShapeCache</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00555">reset</a>. </td>
+ </tr>
+</table>
+<a name="z799_11" doxytag="NL3D::CShapeBank::ShapePtrToShapeInfo"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z799_2">TShapeInfoMap</a> NL3D::CShapeBank::ShapePtrToShapeInfo<code> [private]</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="shape__bank_8h-source.html#l00225">225</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00701">checkShapeCache</a>, <a class="el" href="shape__bank_8cpp-source.html#l00641">getShapeCachePtrFromShapePtr</a>, <a class="el" href="shape__bank_8cpp-source.html#l00677">getShapeNameFromShapePtr</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00094">release</a>. </td>
+ </tr>
+</table>
+<a name="z798_5" doxytag="NL3D::CShapeBank::WaitingShapes"></a><p>
+<table width="100%" cellpadding="2" cellspacing="0" border="0">
+ <tr>
+ <td class="md">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="classNL3D_1_1CShapeBank.html#z798_2">TWaitingShapesMap</a> NL3D::CShapeBank::WaitingShapes<code> [private]</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="shape__bank_8h-source.html#l00182">182</a> of file <a class="el" href="shape__bank_8h-source.html">shape_bank.h</a>.
+<p>
+Referenced by <a class="el" href="shape__bank_8cpp-source.html#l00451">cancelLoadAsync</a>, <a class="el" href="shape__bank_8cpp-source.html#l00471">isShapeWaiting</a>, <a class="el" href="shape__bank_8cpp-source.html#l00429">loadAsync</a>, and <a class="el" href="shape__bank_8cpp-source.html#l00133">processWaitingShapes</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="shape__bank_8h-source.html">shape_bank.h</a><li><a class="el" href="shape__bank_8cpp-source.html">shape_bank.cpp</a></ul>
+
+
+<!-- footer -->
+<BR><FONT Size=+5>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </FONT>
+</TD>
+<TD WIDTH=15><IMG SRC=http://www.nevrax.org/inc/img/pixel.gif WIDTH=15 HEIGHT=15 BORDER=0 ALT=""></TD>
+</TR>
+</TABLE>
+</BODY>
+</HTML>