diff options
Diffstat (limited to 'docs/doxygen/nel/classNL3D_1_1CVegetableVBAllocator.html')
-rw-r--r-- | docs/doxygen/nel/classNL3D_1_1CVegetableVBAllocator.html | 1149 |
1 files changed, 1149 insertions, 0 deletions
diff --git a/docs/doxygen/nel/classNL3D_1_1CVegetableVBAllocator.html b/docs/doxygen/nel/classNL3D_1_1CVegetableVBAllocator.html new file mode 100644 index 00000000..11d2cbf8 --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1CVegetableVBAllocator.html @@ -0,0 +1,1149 @@ +<!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> <A CLASS=uplinks HREF=http://www.nevrax.org><b>Home</B></FONT></A> </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> <A CLASS=uplinks HREF=http://www.nevrax.com><b>nevrax.com</B></FONT></A> </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> + + +<!-- 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> </td> +</tr></table> +<!-- Generated by Doxygen 1.2.14 --> +<center> +<a class="qindex" href="index.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">Compound List</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">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> <a class="qindex" href="pages.html">Related Pages</a> <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> </center> +<hr><h1>NL3D::CVegetableVBAllocator Class Reference</h1>A VB allocator (landscape like). +<a href="#_details">More...</a> +<p> +<code>#include <<a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>></code> +<p> +<a href="classNL3D_1_1CVegetableVBAllocator-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> +<tr><td colspan=2><br><h2>VB mgt .</h2></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_0">deleteVertexBufferHard</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>delete only the Vertexbuffer hard.</em> <a href="#z897_0">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_1">allocateVertexBufferAndFillVBHard</a> (<a class="el" href="memory__common_8h.html#a11">uint32</a> numVertices)</td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_2">setupVBFormat</a> ()</td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CVertexBuffer.html">CVertexBuffer</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_3">_VB</a></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="classNLMISC_1_1CRefPtr.html">NLMISC::CRefPtr</a>< <a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> > </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_4">_Driver</a></td></tr> +<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_5">_VBHardOk</a></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="classNLMISC_1_1CRefPtr.html">NLMISC::CRefPtr</a>< <a class="el" href="classNL3D_1_1IVertexBufferHard.html">IVertexBufferHard</a> > </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_6">_VBHard</a></td></tr> +<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_7">_BufferLocked</a></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a7">uint8</a> * </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_8">_AGPBufferPtr</a></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a15">uint</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z897_9">_MaxVertexInBufferHard</a></td></tr> +<tr><td> </td><td><font size=-1><em>Maximum vertices in BufferHard allowed for this VBAllocator.</em> <a href="#z897_9">More...</a><em></em></font><br><br></td></tr> +<tr><td colspan=2><br><h2>Public Types</h2></td></tr> +<tr><td nowrap align=right valign=top>enum </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3">TVBType</a> { <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3s0">VBTypeLighted</a> = 0, +<a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3s1">VBTypeUnlit</a>, +<a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3s2">VBTypeCount</a> + }</td></tr> +<tr><td colspan=2><br><h2>Public Methods</h2></td></tr> +<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#a0">CVegetableVBAllocator</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>Constructor.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#a1">~CVegetableVBAllocator</a> ()</td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#a2">init</a> (<a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3">TVBType</a> vbType, <a class="el" href="memory__common_8h.html#a15">uint</a> maxVertexInBufferHard)</td></tr> +<tr><td> </td><td><font size=-1><em>init the VB allocator, with the good type.</em> <a href="#a2">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#a3">updateDriver</a> (<a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> *driver)</td></tr> +<tr><td> </td><td><font size=-1><em>setup driver, and test for possible VBHard reallocation.</em> <a href="#a3">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#a4">clear</a> ()</td></tr> +<tr><td colspan="2"><div class="groupHeader">Allocation.</div></td></tr> +<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_0">exceedMaxVertexInBufferHard</a> (<a class="el" href="memory__common_8h.html#a15">uint</a> numAddVerts) const</td></tr> +<tr><td> </td><td><font size=-1><em>if I add numAddVerts vertices, will it overide _MaxVertexInBufferHard ??</em> <a href="#z895_0">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a15">uint</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_1">getNumUserVerticesAllocated</a> () const</td></tr> +<tr><td> </td><td><font size=-1><em>return number of vertices allocated with <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_2">allocateVertex</a>() (NB: do not return the actual number of vertices allocated in VBuffer, but the number of vertices asked to be allocated).</em> <a href="#z895_1">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a15">uint</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_2">allocateVertex</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>Allocate free vertices in VB.</em> <a href="#z895_2">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_3">deleteVertex</a> (<a class="el" href="memory__common_8h.html#a15">uint</a> vid)</td></tr> +<tr><td> </td><td><font size=-1><em>Delete free vertices in VB. (AGP or RAM).</em> <a href="#z895_3">More...</a><em></em></font><br><br></td></tr> +<tr><td colspan="2"><div class="groupHeader">Buffer access.</div></td></tr> +<tr><td nowrap align=right valign=top>void * </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_0">getVertexPointer</a> (<a class="el" href="memory__common_8h.html#a15">uint</a> i)</td></tr> +<tr><td> </td><td><font size=-1><em>get the software VB pointer to the ith index. valid only beetween 2 <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_2">allocateVertex</a>().</em> <a href="#z896_0">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>const <a class="el" href="classNL3D_1_1CVertexBuffer.html">CVertexBuffer</a> & </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_1">getSoftwareVertexBuffer</a> () const</td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_2">flushVertex</a> (<a class="el" href="memory__common_8h.html#a15">uint</a> i)</td></tr> +<tr><td> </td><td><font size=-1><em>If VBHard ok, copy the vertex in AGP. Warning: buffer must be locked!</em> <a href="#z896_2">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_3">lockBuffer</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>if any, lock the AGP buffer.</em> <a href="#z896_3">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_4">unlockBuffer</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>if any, unlock the AGP buffer.</em> <a href="#z896_4">More...</a><em></em></font><br><br></td></tr> +<tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_5">bufferLocked</a> () const</td></tr> +<tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z896_6">activate</a> ()</td></tr> +<tr><td> </td><td><font size=-1><em>activate the VB or the VBHard in Driver setuped.</em> <a href="#z896_6">More...</a><em></em></font><br><br></td></tr> +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3">TVBType</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#o0">_Type</a></td></tr> +<tr><td nowrap align=right valign=top>std::vector< <a class="el" href="memory__common_8h.html#a15">uint</a> > </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#o1">_VertexFreeMemory</a></td></tr> +<tr><td nowrap align=right valign=top>std::vector< <a class="el" href="structNL3D_1_1CVegetableVBAllocator_1_1CVertexInfo.html">CVertexInfo</a> > </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#o2">_VertexInfos</a></td></tr> +<tr><td nowrap align=right valign=top><a class="el" href="memory__common_8h.html#a15">uint</a> </td><td valign=bottom><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#o3">_NumVerticesAllocated</a></td></tr> +</table> +<hr><a name="_details"></a><h2>Detailed Description</h2> +A VB allocator (landscape like). +<p> +Big difference is that here, we do not really matter about reallocation because both software and hardware VB are present. Also, VertexProgram MUST be supported by driver here. NB: unlike Landscape VBAllocator, the VertexProgram is not managed by this class. <dl compact><dt><b> +Author: </b><dd> +Lionel Berenguier , Nevrax France </dl><dl compact><dt><b> +Date: </b><dd> +2001 </dl> +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8h-source.html#l00058">58</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>.<hr><h2>Member Enumeration Documentation</h2> +<a name="s3" doxytag="NL3D::CVegetableVBAllocator::TVBType"></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::CVegetableVBAllocator::TVBType + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<dl compact><dt><b> +Enumeration values:</b><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a name="s3s0" doxytag="VBTypeLighted"></a><em>VBTypeLighted</em></em> </td><td> +</td></tr> +<tr><td valign=top><em><a name="s3s1" doxytag="VBTypeUnlit"></a><em>VBTypeUnlit</em></em> </td><td> +</td></tr> +<tr><td valign=top><em><a name="s3s2" doxytag="VBTypeCount"></a><em>VBTypeCount</em></em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8h-source.html#l00062">62</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a name="a0" doxytag="NL3D::CVegetableVBAllocator::CVegetableVBAllocator"></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::CVegetableVBAllocator::CVegetableVBAllocator </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Constructor. +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">55</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00158">_AGPBufferPtr</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00138">_Type</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00155">_VBHardOk</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00141">_VertexFreeMemory</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00051">NL3D_VEGETABLE_VERTEX_FREE_MEMORY_RESERVE</a>, and <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3s1">VBTypeUnlit</a>. </td> + </tr> +</table> +<a name="a1" doxytag="NL3D::CVegetableVBAllocator::~CVegetableVBAllocator"></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::CVegetableVBAllocator::~CVegetableVBAllocator </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></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="vegetablevb__allocator_8cpp-source.html#l00083">83</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>. </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a name="z896_6" doxytag="NL3D::CVegetableVBAllocator::activate"></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::CVegetableVBAllocator::activate </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +activate the VB or the VBHard in Driver setuped. +<p> +nlassert if driver is NULL or if buffer is locked. +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00266">266</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00153">_Driver</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, and <a class="el" href="debug_8h-source.html#l00254">nlassert</a>. </td> + </tr> +</table> +<a name="z895_2" doxytag="NL3D::CVegetableVBAllocator::allocateVertex"></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#a15">uint</a> NL3D::CVegetableVBAllocator::allocateVertex </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Allocate free vertices in VB. +<p> +(RAM and AGP if possible). work with locked or unlocked buffer. if VBHard reallocation occurs, VB is unlocked, destroyed, reallocated, and refilled. +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">185</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00141">_VertexFreeMemory</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00142">_VertexInfos</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="driver__opengl__extension__def_8h-source.html#l00218">id</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00044">NL3D_VEGETABLE_VERTEX_ALLOCATE_SECURITY</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00048">NL3D_VEGETABLE_VERTEX_ALLOCATE_START</a>, and <a class="el" href="debug_8h-source.html#l00254">nlassert</a>. </td> + </tr> +</table> +<a name="z897_1" doxytag="NL3D::CVegetableVBAllocator::allocateVertexBufferAndFillVBHard"></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::CVegetableVBAllocator::allocateVertexBufferAndFillVBHard </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a11">uint32</a> </td> + <td class="mdname1" valign="top" nowrap> <em>numVertices</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap><code> [private]</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="vegetablevb__allocator_8cpp-source.html#l00306">306</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00158">_AGPBufferPtr</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00153">_Driver</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00155">_VBHardOk</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00120">bufferLocked</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">lockBuffer</a>, <a class="el" href="debug_8h-source.html#l00254">nlassert</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">allocateVertex</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="z896_5" doxytag="NL3D::CVegetableVBAllocator::bufferLocked"></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::CVegetableVBAllocator::bufferLocked </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="vegetablevb__allocator_8h-source.html#l00120">120</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>. </td> + </tr> +</table> +<a name="a4" doxytag="NL3D::CVegetableVBAllocator::clear"></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::CVegetableVBAllocator::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></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="vegetablevb__allocator_8cpp-source.html#l00126">126</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00153">_Driver</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00155">_VBHardOk</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00141">_VertexFreeMemory</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">deleteVertexBufferHard</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00083">~CVegetableVBAllocator</a>. </td> + </tr> +</table> +<a name="z895_3" doxytag="NL3D::CVegetableVBAllocator::deleteVertex"></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::CVegetableVBAllocator::deleteVertex </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>vid</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Delete free vertices in VB. (AGP or RAM). +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00234">234</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00141">_VertexFreeMemory</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00142">_VertexInfos</a>, and <a class="el" href="debug_8h-source.html#l00254">nlassert</a>. </td> + </tr> +</table> +<a name="z897_0" doxytag="NL3D::CVegetableVBAllocator::deleteVertexBufferHard"></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::CVegetableVBAllocator::deleteVertexBufferHard </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> [private]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +delete only the Vertexbuffer hard. +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">287</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00153">_Driver</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, <a class="el" href="debug_8h-source.html#l00254">nlassert</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="z895_0" doxytag="NL3D::CVegetableVBAllocator::exceedMaxVertexInBufferHard"></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::CVegetableVBAllocator::exceedMaxVertexInBufferHard </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>numAddVerts</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +if I add numAddVerts vertices, will it overide _MaxVertexInBufferHard ?? +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00178">178</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00171">getNumUserVerticesAllocated</a>. </td> + </tr> +</table> +<a name="z896_2" doxytag="NL3D::CVegetableVBAllocator::flushVertex"></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::CVegetableVBAllocator::flushVertex </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>i</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +If VBHard ok, copy the vertex in AGP. Warning: buffer must be locked! +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">253</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00158">_AGPBufferPtr</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00247">getVertexPointer</a>, <a class="el" href="debug_8h-source.html#l00254">nlassert</a>, and <a class="el" href="driver__opengl__extension__def_8h-source.html#l00820">src</a>. </td> + </tr> +</table> +<a name="z895_1" doxytag="NL3D::CVegetableVBAllocator::getNumUserVerticesAllocated"></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#a15">uint</a> NL3D::CVegetableVBAllocator::getNumUserVerticesAllocated </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</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +return number of vertices allocated with <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_2">allocateVertex</a>() (NB: do not return the actual number of vertices allocated in VBuffer, but the number of vertices asked to be allocated). +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00171">171</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, and <a class="el" href="vegetablevb__allocator_8h-source.html#l00141">_VertexFreeMemory</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00178">exceedMaxVertexInBufferHard</a>. </td> + </tr> +</table> +<a name="z896_1" doxytag="NL3D::CVegetableVBAllocator::getSoftwareVertexBuffer"></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"> const <a class="el" href="classNL3D_1_1CVertexBuffer.html">CVertexBuffer</a>& NL3D::CVegetableVBAllocator::getSoftwareVertexBuffer </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="vegetablevb__allocator_8h-source.html#l00112">112</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>. </td> + </tr> +</table> +<a name="z896_0" doxytag="NL3D::CVegetableVBAllocator::getVertexPointer"></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::CVegetableVBAllocator::getVertexPointer </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="memory__common_8h.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>i</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the software VB pointer to the ith index. valid only beetween 2 <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#z895_2">allocateVertex</a>(). +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00247">247</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">flushVertex</a>. </td> + </tr> +</table> +<a name="a2" doxytag="NL3D::CVegetableVBAllocator::init"></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::CVegetableVBAllocator::init </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3">TVBType</a> </td> + <td class="mdname" nowrap> <em>vbType</em>, </td> + </tr> + <tr> + <td></td> + <td></td> + <td class="md" nowrap><a class="el" href="memory__common_8h.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>maxVertexInBufferHard</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +init the VB allocator, with the good type. +<p> +must do it first. maxVertexInBufferHard is the maximum vertex allowed to reside in AGP mem. if More are allocated, then VBHard is disabled, and replaced with software VB (slower!), for ever. +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00072">72</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00138">_Type</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00359">setupVBFormat</a>, and <a class="el" href="driver__opengl__extension__def_8h-source.html#l00241">type</a>. </td> + </tr> +</table> +<a name="z896_3" doxytag="NL3D::CVegetableVBAllocator::lockBuffer"></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::CVegetableVBAllocator::lockBuffer </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +if any, lock the AGP buffer. +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">144</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00158">_AGPBufferPtr</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>. </td> + </tr> +</table> +<a name="z897_2" doxytag="NL3D::CVegetableVBAllocator::setupVBFormat"></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::CVegetableVBAllocator::setupVBFormat </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> [private]</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="vegetablevb__allocator_8cpp-source.html#l00359">359</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00138">_Type</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00150">_VB</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00044">NL3D_VEGETABLE_VPPOS_BENDINFO</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00045">NL3D_VEGETABLE_VPPOS_CENTER</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00041">NL3D_VEGETABLE_VPPOS_COLOR0</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00042">NL3D_VEGETABLE_VPPOS_COLOR1</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00040">NL3D_VEGETABLE_VPPOS_NORMAL</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00039">NL3D_VEGETABLE_VPPOS_POS</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00043">NL3D_VEGETABLE_VPPOS_TEX0</a>, and <a class="el" href="classNL3D_1_1CVegetableVBAllocator.html#s3s0">VBTypeLighted</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00072">init</a>. </td> + </tr> +</table> +<a name="z896_4" doxytag="NL3D::CVegetableVBAllocator::unlockBuffer"></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::CVegetableVBAllocator::unlockBuffer </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +if any, unlock the AGP buffer. +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">158</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00158">_AGPBufferPtr</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, and <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">deleteVertexBufferHard</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">lockBuffer</a>. </td> + </tr> +</table> +<a name="a3" doxytag="NL3D::CVegetableVBAllocator::updateDriver"></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::CVegetableVBAllocator::updateDriver </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="classNL3D_1_1IDriver.html">IDriver</a> * </td> + <td class="mdname1" valign="top" nowrap> <em>driver</em> </td> + <td class="md" valign="top">) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +setup driver, and test for possible VBHard reallocation. +<p> +if reallocation, refill the VBHard to do anytime you're not sure of change of the driver/vbHard state.<dl compact><dt><b> +Parameters: </b><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em>driver</em> </td><td> +must not be NULL. </td></tr> +</table> +</dl> +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">89</a> of file <a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a>. +<p> +References <a class="el" href="vegetablevb__allocator_8h-source.html#l00157">_BufferLocked</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00153">_Driver</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">_MaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00143">_NumVerticesAllocated</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00156">_VBHard</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00155">_VBHardOk</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">deleteVertexBufferHard</a>, and <a class="el" href="debug_8h-source.html#l00254">nlassert</a>. </td> + </tr> +</table> +<hr><h2>Member Data Documentation</h2> +<a name="z897_8" doxytag="NL3D::CVegetableVBAllocator::_AGPBufferPtr"></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#a7">uint8</a>* NL3D::CVegetableVBAllocator::_AGPBufferPtr<code> [private]</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="vegetablevb__allocator_8h-source.html#l00158">158</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">flushVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">lockBuffer</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>. </td> + </tr> +</table> +<a name="z897_7" doxytag="NL3D::CVegetableVBAllocator::_BufferLocked"></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::CVegetableVBAllocator::_BufferLocked<code> [private]</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="vegetablevb__allocator_8h-source.html#l00157">157</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00266">activate</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00120">bufferLocked</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">flushVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">lockBuffer</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="z897_4" doxytag="NL3D::CVegetableVBAllocator::_Driver"></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="classNLMISC_1_1CRefPtr.html">NLMISC::CRefPtr</a><<a class="el" href="classNL3D_1_1IDriver.html">IDriver</a>> NL3D::CVegetableVBAllocator::_Driver<code> [private]</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="vegetablevb__allocator_8h-source.html#l00153">153</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00266">activate</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">deleteVertexBufferHard</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="z897_9" doxytag="NL3D::CVegetableVBAllocator::_MaxVertexInBufferHard"></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#a15">uint</a> NL3D::CVegetableVBAllocator::_MaxVertexInBufferHard<code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Maximum vertices in BufferHard allowed for this VBAllocator. +<p> + +<p> +Definition at line <a class="el" href="vegetablevb__allocator_8h-source.html#l00160">160</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">allocateVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00178">exceedMaxVertexInBufferHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00072">init</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="o3" doxytag="NL3D::CVegetableVBAllocator::_NumVerticesAllocated"></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#a15">uint</a> NL3D::CVegetableVBAllocator::_NumVerticesAllocated<code> [private]</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="vegetablevb__allocator_8h-source.html#l00143">143</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">allocateVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00234">deleteVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00171">getNumUserVerticesAllocated</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="o0" doxytag="NL3D::CVegetableVBAllocator::_Type"></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_1CVegetableVBAllocator.html#s3">TVBType</a> NL3D::CVegetableVBAllocator::_Type<code> [private]</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="vegetablevb__allocator_8h-source.html#l00138">138</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00072">init</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00359">setupVBFormat</a>. </td> + </tr> +</table> +<a name="z897_3" doxytag="NL3D::CVegetableVBAllocator::_VB"></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_1CVertexBuffer.html">CVertexBuffer</a> NL3D::CVegetableVBAllocator::_VB<code> [private]</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="vegetablevb__allocator_8h-source.html#l00150">150</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00266">activate</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">flushVertex</a>, <a class="el" href="vegetablevb__allocator_8h-source.html#l00112">getSoftwareVertexBuffer</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00247">getVertexPointer</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00359">setupVBFormat</a>. </td> + </tr> +</table> +<a name="z897_6" doxytag="NL3D::CVegetableVBAllocator::_VBHard"></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="classNLMISC_1_1CRefPtr.html">NLMISC::CRefPtr</a><<a class="el" href="classNL3D_1_1IVertexBufferHard.html">IVertexBufferHard</a>> NL3D::CVegetableVBAllocator::_VBHard<code> [private]</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="vegetablevb__allocator_8h-source.html#l00156">156</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00266">activate</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00287">deleteVertexBufferHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00253">flushVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00144">lockBuffer</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00158">unlockBuffer</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="z897_5" doxytag="NL3D::CVegetableVBAllocator::_VBHardOk"></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::CVegetableVBAllocator::_VBHardOk<code> [private]</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="vegetablevb__allocator_8h-source.html#l00155">155</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00306">allocateVertexBufferAndFillVBHard</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00089">updateDriver</a>. </td> + </tr> +</table> +<a name="o1" doxytag="NL3D::CVegetableVBAllocator::_VertexFreeMemory"></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"> std::vector<<a class="el" href="memory__common_8h.html#a15">uint</a>> NL3D::CVegetableVBAllocator::_VertexFreeMemory<code> [private]</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="vegetablevb__allocator_8h-source.html#l00141">141</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">allocateVertex</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00126">clear</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00055">CVegetableVBAllocator</a>, <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00234">deleteVertex</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00171">getNumUserVerticesAllocated</a>. </td> + </tr> +</table> +<a name="o2" doxytag="NL3D::CVegetableVBAllocator::_VertexInfos"></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"> std::vector<<a class="el" href="structNL3D_1_1CVegetableVBAllocator_1_1CVertexInfo.html">CVertexInfo</a>> NL3D::CVegetableVBAllocator::_VertexInfos<code> [private]</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="vegetablevb__allocator_8h-source.html#l00142">142</a> of file <a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a>. +<p> +Referenced by <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00185">allocateVertex</a>, and <a class="el" href="vegetablevb__allocator_8cpp-source.html#l00234">deleteVertex</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="vegetablevb__allocator_8h-source.html">vegetablevb_allocator.h</a><li><a class="el" href="vegetablevb__allocator_8cpp-source.html">vegetablevb_allocator.cpp</a></ul> + + +<!-- footer --> +<BR><FONT Size=+5> </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> |