diff options
author | neodarz <neodarz@neodarz.net> | 2018-08-11 20:21:34 +0200 |
---|---|---|
committer | neodarz <neodarz@neodarz.net> | 2018-08-11 20:21:34 +0200 |
commit | 0ea5fc66924303d1bf73ba283a383e2aadee02f2 (patch) | |
tree | 2568e71a7ccc44ec23b8bb3f0ff97fb6bf2ed709 /docs/doxygen/nel/a03703.html | |
download | nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip |
Initial commit
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a03703.html | 1046 |
1 files changed, 1046 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a03703.html b/docs/doxygen/nel/a03703.html new file mode 100644 index 00000000..7d703bc9 --- /dev/null +++ b/docs/doxygen/nel/a03703.html @@ -0,0 +1,1046 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: NL3D::CVertexStreamManager class Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CVertexStreamManager Class Reference</h1><code>#include <<a class="el" href="a06721.html">vertex_stream_manager.h</a>></code> +<p> +<hr><a name="_details"></a><h2>Detailed Description</h2> +A class used to fill a virtual Vertexbuffer, while rendering it, avoiding Stalls during Locks. Actually multiple versions of VertexBuffer are kept and the <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1166_2">swapVBHard()</a> method cycles around them. NB: it is used for instance to render all skins of a <a class="el" href="a03399.html">CSkeletonModel</a>, in just one <a class="el" href="a03703.html">CVertexStreamManager</a>. This allow optimisation because less VBuffer activation is needed. <dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p> +Nevrax France </dd></dl> +<dl compact><dt><b>Date:</b></dt><dd>2002 </dd></dl> + +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00050">50</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagera0">CVertexStreamManager</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#NL3D_1_1CVertexStreamManagera0"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagera1">~CVertexStreamManager</a> ()</td></tr> + +<tr><td colspan="2"><div class="groupHeader">Rendering. Those method assert if init() not called with correct parameters.</div></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1166_0">activate</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">activate the currentVBhard as the current VB in the driver, for future rendering <a href="#NL3D_1_1CVertexStreamManagerz1166_0"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a7">uint8</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1166_1">lock</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">lock the currently activated VBHard, for future filling <a href="#NL3D_1_1CVertexStreamManagerz1166_1"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1166_2">swapVBHard</a> ()</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1166_3">unlock</a> (<a class="el" href="a04558.html#a15">uint</a> numVertices)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">unlock the currently activated VBHard. Tell how many vertices have changed. <a href="#NL3D_1_1CVertexStreamManagerz1166_3"></a><br><br></td></tr> +<tr><td colspan="2"><div class="groupHeader">Init/Setup</div></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02434.html">IDriver</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_0">getDriver</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">return the driver used. <a href="#NL3D_1_1CVertexStreamManagerz1164_0"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_1">getMaxVertices</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get max vertices the Buffer allows. <a href="#NL3D_1_1CVertexStreamManagerz1164_1"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_2">getNumVBHard</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the numVBhard used (Nb: if !vbHardMode(), still returns the argument passed in <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_5">init()</a>, ie not 0 or 1) <a href="#NL3D_1_1CVertexStreamManagerz1164_2"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_3">getVertexFormat</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the vertexFormat <a href="#NL3D_1_1CVertexStreamManagerz1164_3"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_4">getVertexSize</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the vertexSize <a href="#NL3D_1_1CVertexStreamManagerz1164_4"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_5">init</a> (<a class="el" href="a02434.html">IDriver</a> *driver, <a class="el" href="a04558.html#a15">uint</a> vertexFormat, <a class="el" href="a04558.html#a15">uint</a> maxVertices, <a class="el" href="a04558.html#a15">uint</a> numVBHard, const std::string &vbName)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_6">release</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">release the VBHard. <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_5">init()</a> can be called after this. <a href="#NL3D_1_1CVertexStreamManagerz1164_6"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_7">vbHardMode</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">true if vbHard (fast) mode. <a href="#NL3D_1_1CVertexStreamManagerz1164_7"></a><br><br></td></tr> +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03321.html">NLMISC::CRefPtr</a>< <a class="el" href="a02434.html">IDriver</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr2">_InitOk</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">_MaxVertices</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a03321.html">NLMISC::CRefPtr</a><<br> + <a class="el" href="a03694.html">IVertexBufferHard</a> > > </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03692.html">CVertexBuffer</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">_VertexFormat</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">_VertexSize</a></td></tr> + +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NL3D_1_1CVertexStreamManagera0" doxytag="NL3D::CVertexStreamManager::CVertexStreamManager" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NL3D::CVertexStreamManager::CVertexStreamManager </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="a06720.html#l00039">39</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, and <a class="el" href="a06721.html#l00111">_VBHardMode</a>. +<p> +<div class="fragment"><pre>00040 { +00041 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr2">_InitOk</a>= <span class="keyword">false</span>; +00042 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>= <span class="keyword">false</span>; +00043 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">_VertexFormat</a>= 0; +00044 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">_VertexSize</a>= 0; +00045 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">_MaxVertices</a>= 0; +00046 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>= 0; +00047 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>= 0; +00048 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagera1" doxytag="NL3D::CVertexStreamManager::~CVertexStreamManager" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NL3D::CVertexStreamManager::~<a class="el" href="a03703.html">CVertexStreamManager</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></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="a06720.html#l00050">50</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06720.html#l00126">release()</a>. +<p> +<div class="fragment"><pre>00051 { +00052 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_6">release</a>(); +00053 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1166_0" doxytag="NL3D::CVertexStreamManager::activate" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CVertexStreamManager::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 currentVBhard as the current VB in the driver, for future rendering +<p> + +<p> +Definition at line <a class="el" href="a06720.html#l00178">178</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, <a class="el" href="a05788.html#l00056">H_AUTO</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00736">NL3D::CLodCharacterManager::endRender()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00179 { +00180 <a class="code" href="a04365.html#a4">H_AUTO</a>( NL3D_VertexStreamManager_activate ) +00181 <a class="code" href="a04199.html#a6">nlassert</a>(_InitOk); +00182 +00183 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00184 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>->activeVertexBufferHard(_VBHard[_CurentVBHard]); +00185 <span class="keywordflow">else</span> +00186 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>->activeVertexBuffer(_VBSoft); +00187 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_0" doxytag="NL3D::CVertexStreamManager::getDriver" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02434.html">IDriver</a>* NL3D::CVertexStreamManager::getDriver </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +return the driver used. +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00076">76</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>, <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>, <a class="el" href="a05935.html#l00736">NL3D::CLodCharacterManager::endRender()</a>, and <a class="el" href="a06329.html#l00089">NL3D::CRenderTrav::traverse()</a>. +<p> +<div class="fragment"><pre>00076 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_1" doxytag="NL3D::CVertexStreamManager::getMaxVertices" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CVertexStreamManager::getMaxVertices </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> +get max vertices the Buffer allows. +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00082">82</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00082 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">_MaxVertices</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_2" doxytag="NL3D::CVertexStreamManager::getNumVBHard" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CVertexStreamManager::getNumVBHard </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> +get the numVBhard used (Nb: if !vbHardMode(), still returns the argument passed in <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_5">init()</a>, ie not 0 or 1) +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00074">74</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>. +<p> +<div class="fragment"><pre>00074 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_3" doxytag="NL3D::CVertexStreamManager::getVertexFormat" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CVertexStreamManager::getVertexFormat </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the vertexFormat +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00078">78</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00078 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">_VertexFormat</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_4" doxytag="NL3D::CVertexStreamManager::getVertexSize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CVertexStreamManager::getVertexSize </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the vertexSize +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00080">80</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +References <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00080 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">_VertexSize</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_5" doxytag="NL3D::CVertexStreamManager::init" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CVertexStreamManager::init </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02434.html">IDriver</a> * </td> + <td class="mdname" nowrap> <em>driver</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>vertexFormat</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>maxVertices</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>numVBHard</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const std::string & </td> + <td class="mdname" nowrap> <em>vbName</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 manager with a driver, allocate the VBHards, and setup the vertexFormat. Must call each time the drive changes. NB: if VBufferHard creation fail (not supported etc...), then a VBSoft is created instead (and just one since not usefull) <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>numVBHard</em> </td><td>the number of VBHard to create. The max you set, the lower lock you'll have. </td></tr> + <tr><td valign=top><em>vbName</em> </td><td>base, for Lock profiling</td></tr> + </table> +</dl> + +<p> +Definition at line <a class="el" href="a06720.html#l00056">56</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, <a class="el" href="a06711.html#l00504">NL3D::CVertexBuffer::getUVRouting()</a>, <a class="el" href="a06711.html#l00483">NL3D::CVertexBuffer::getValueTypePointer()</a>, <a class="el" href="a06711.html#l00319">NL3D::CVertexBuffer::getVertexFormat()</a>, <a class="el" href="a06711.html#l00473">NL3D::CVertexBuffer::getVertexSize()</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06720.html#l00126">release()</a>, <a class="el" href="a06710.html#l00409">NL3D::CVertexBuffer::setNumVertices()</a>, <a class="el" href="a06711.html#l00505">NL3D::CVertexBuffer::setUVRouting()</a>, <a class="el" href="a06710.html#l00169">NL3D::CVertexBuffer::setVertexFormat()</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>, and <a class="el" href="a06329.html#l00089">NL3D::CRenderTrav::traverse()</a>. +<p> +<div class="fragment"><pre>00057 { +00058 <a class="code" href="a04199.html#a6">nlassert</a>(driver); +00059 <span class="comment">// clean before.</span> +00060 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_6">release</a>(); +00061 +00062 <span class="comment">// Create VBHard placeholder</span> +00063 <span class="keywordflow">if</span>(numVBHard==0 || maxVertices==0) +00064 <span class="keywordflow">return</span>; +00065 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>= numVBHard; +00066 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>.resize(_NumVBHard, NULL); +00067 +00068 <span class="comment">// setup, => correct for possible release below</span> +00069 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>= driver; +00070 +00071 <span class="comment">// setup the VB soft, for easy setup</span> +00072 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.setVertexFormat(vertexFormat); +00073 +00074 <span class="comment">// For the moment, all UV channel are routed to UV0</span> +00075 <a class="code" href="a04558.html#a15">uint</a> i; +00076 <span class="keywordflow">for</span> (i=0; i<CVertexBuffer::MaxStage; i++) +00077 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.setUVRouting (i, 0); +00078 +00079 <span class="comment">// create the VBHard, if possible</span> +00080 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>= <span class="keyword">true</span>; +00081 <span class="keywordflow">for</span>(i=0;i<<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>;i++) +00082 { +00083 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]= <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>->createVertexBufferHard(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getVertexFormat(), <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getValueTypePointer(), maxVertices, IDriver::VBHardAGP, <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getUVRouting()); +00084 <span class="comment">// if filas, release all, and quit</span> +00085 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]==NULL) +00086 { +00087 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>= <span class="keyword">false</span>; +00088 <span class="keywordflow">break</span>; +00089 } +00090 <span class="comment">// ok, set name for lock profiling</span> +00091 <span class="keywordflow">else</span> +00092 { +00093 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]->setName(vbName + NLMISC::toString(i)); +00094 } +00095 } +00096 +00097 <span class="comment">// if fails to create vbHard, abort, and create only one vbSoft</span> +00098 <span class="keywordflow">if</span>(!<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00099 { +00100 <span class="comment">// release all vbhard created</span> +00101 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> i=0;i<_NumVBHard;i++) +00102 { +00103 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]) +00104 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>->deleteVertexBufferHard(_VBHard[i]); +00105 } +00106 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>.clear(); +00107 +00108 <span class="comment">// create the Soft One</span> +00109 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.setNumVertices(maxVertices); +00110 } +00111 +00112 <span class="comment">// init misc</span> +00113 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr2">_InitOk</a>= <span class="keyword">true</span>; +00114 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">_VertexFormat</a>= <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getVertexFormat(); +00115 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">_VertexSize</a>= <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getVertexSize(); +00116 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">_MaxVertices</a>= maxVertices; +00117 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>= 0; +00118 +00119 <span class="comment">// release the VBsoft if in vbHardMode (no more used)</span> +00120 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00121 { +00122 <a class="code" href="a05378.html#a381">contReset</a>(_VBSoft); +00123 } +00124 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1166_1" doxytag="NL3D::CVertexStreamManager::lock" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> * NL3D::CVertexStreamManager::lock </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> +lock the currently activated VBHard, for future filling +<p> + +<p> +Definition at line <a class="el" href="a06720.html#l00155">155</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, <a class="el" href="a06710.html#l00438">NL3D::CVertexBuffer::getVertexCoordPointer()</a>, <a class="el" href="a05788.html#l00056">H_AUTO</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00096">uint8</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00156 { +00157 <a class="code" href="a04365.html#a4">H_AUTO</a>( NL3D_VertexStreamManager_lock ) +00158 <a class="code" href="a04199.html#a6">nlassert</a>(_InitOk); +00159 +00160 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00161 <span class="keywordflow">return</span> (<a class="code" href="a04558.html#a7">uint8</a>*)<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>]->lock(); +00162 <span class="keywordflow">else</span> +00163 <span class="keywordflow">return</span> (<a class="code" href="a04558.html#a7">uint8</a>*)<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">_VBSoft</a>.getVertexCoordPointer(); +00164 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_6" doxytag="NL3D::CVertexStreamManager::release" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CVertexStreamManager::release </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> +release the VBHard. <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerz1164_5">init()</a> can be called after this. +<p> + +<p> +Definition at line <a class="el" href="a06720.html#l00126">126</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00276">NL3D::CLodCharacterManager::beginRender()</a>, <a class="el" href="a06720.html#l00056">init()</a>, <a class="el" href="a06092.html#l00153">NL3D::CNELU::releaseDriver()</a>, <a class="el" href="a05935.html#l00114">NL3D::CLodCharacterManager::reset()</a>, <a class="el" href="a06329.html#l00089">NL3D::CRenderTrav::traverse()</a>, and <a class="el" href="a06720.html#l00050">~CVertexStreamManager()</a>. +<p> +<div class="fragment"><pre>00127 { +00128 <span class="comment">// release driver/VBHard</span> +00129 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>) +00130 { +00131 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> i=0;i<<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>;i++) +00132 { +00133 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]) +00134 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>->deleteVertexBufferHard(_VBHard[i]); +00135 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[i]= NULL; +00136 } +00137 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">_Driver</a>= NULL; +00138 } +00139 +00140 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>.clear(); +00141 +00142 <span class="comment">// release VBSoft</span> +00143 <a class="code" href="a05378.html#a381">contReset</a>(_VBSoft); +00144 +00145 <span class="comment">// misc</span> +00146 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr2">_InitOk</a>= <span class="keyword">false</span>; +00147 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>= <span class="keyword">false</span>; +00148 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">_VertexFormat</a>= 0; +00149 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">_VertexSize</a>= 0; +00150 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">_MaxVertices</a>= 0; +00151 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>= 0; +00152 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>= 0; +00153 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1166_2" doxytag="NL3D::CVertexStreamManager::swapVBHard" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CVertexStreamManager::swapVBHard </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> +Swap to the next VBHard. This allow some parralelism, since CPU fill one VBHard while the other is rendered NB: no-op if the vertex stream manager falls down to the VBSoft solution. +<p> +Definition at line <a class="el" href="a06720.html#l00189">189</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, and <a class="el" href="a05622.html#l00290">nlassert</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00736">NL3D::CLodCharacterManager::endRender()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00190 { +00191 <a class="code" href="a04199.html#a6">nlassert</a>(_InitOk); +00192 +00193 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00194 { +00195 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>++; +00196 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>= <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>%<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">_NumVBHard</a>; +00197 } +00198 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1166_3" doxytag="NL3D::CVertexStreamManager::unlock" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CVertexStreamManager::unlock </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>numVertices</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> +unlock the currently activated VBHard. Tell how many vertices have changed. +<p> + +<p> +Definition at line <a class="el" href="a06720.html#l00166">166</a> of file <a class="el" href="a06720.html">vertex_stream_manager.cpp</a>. +<p> +References <a class="el" href="a06721.html#l00117">_CurentVBHard</a>, <a class="el" href="a06721.html#l00112">_InitOk</a>, <a class="el" href="a06721.html#l00111">_VBHardMode</a>, <a class="el" href="a05788.html#l00056">H_AUTO</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00736">NL3D::CLodCharacterManager::endRender()</a>, <a class="el" href="a06393.html#l01885">NL3D::CSkeletonModel::renderShadowSkins()</a>, and <a class="el" href="a06393.html#l01449">NL3D::CSkeletonModel::renderSkinList()</a>. +<p> +<div class="fragment"><pre>00167 { +00168 <a class="code" href="a04365.html#a4">H_AUTO</a>( NL3D_VertexStreamManager_unlock ) +00169 <a class="code" href="a04199.html#a6">nlassert</a>(_InitOk); +00170 +00171 <span class="keywordflow">if</span>(<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>) +00172 { +00173 <span class="comment">// ATI: release only vertices used.</span> +00174 <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">_VBHard</a>[<a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">_CurentVBHard</a>]->unlock(0, numVertices); +00175 } +00176 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerz1164_7" doxytag="NL3D::CVertexStreamManager::vbHardMode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NL3D::CVertexStreamManager::vbHardMode </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> +true if vbHard (fast) mode. +<p> + +<p> +Definition at line <a class="el" href="a06721.html#l00072">72</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +References <a class="el" href="a06721.html#l00111">_VBHardMode</a>. +<p> +<div class="fragment"><pre>00072 {<span class="keywordflow">return</span> <a class="code" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">_VBHardMode</a>;} +</pre></div> </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr0" doxytag="NL3D::CVertexStreamManager::_CurentVBHard" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr0">NL3D::CVertexStreamManager::_CurentVBHard</a><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="a06721.html#l00117">117</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +Referenced by <a class="el" href="a06720.html#l00178">activate()</a>, <a class="el" href="a06720.html#l00039">CVertexStreamManager()</a>, <a class="el" href="a06720.html#l00056">init()</a>, <a class="el" href="a06720.html#l00155">lock()</a>, <a class="el" href="a06720.html#l00126">release()</a>, <a class="el" href="a06720.html#l00189">swapVBHard()</a>, and <a class="el" href="a06720.html#l00166">unlock()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr1" doxytag="NL3D::CVertexStreamManager::_Driver" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03321.html">NLMISC::CRefPtr</a><<a class="el" href="a02434.html">IDriver</a>> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr1">NL3D::CVertexStreamManager::_Driver</a><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="a06721.html#l00108">108</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr2" doxytag="NL3D::CVertexStreamManager::_InitOk" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr2">NL3D::CVertexStreamManager::_InitOk</a><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="a06721.html#l00112">112</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +Referenced by <a class="el" href="a06720.html#l00178">activate()</a>, <a class="el" href="a06720.html#l00039">CVertexStreamManager()</a>, <a class="el" href="a06720.html#l00056">init()</a>, <a class="el" href="a06720.html#l00155">lock()</a>, <a class="el" href="a06720.html#l00126">release()</a>, <a class="el" href="a06720.html#l00189">swapVBHard()</a>, and <a class="el" href="a06720.html#l00166">unlock()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr3" doxytag="NL3D::CVertexStreamManager::_MaxVertices" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr3">NL3D::CVertexStreamManager::_MaxVertices</a><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="a06721.html#l00115">115</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr4" doxytag="NL3D::CVertexStreamManager::_NumVBHard" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr4">NL3D::CVertexStreamManager::_NumVBHard</a><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="a06721.html#l00106">106</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr5" doxytag="NL3D::CVertexStreamManager::_VBHard" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a03321.html">NLMISC::CRefPtr</a><<a class="el" href="a03694.html">IVertexBufferHard</a>> > <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr5">NL3D::CVertexStreamManager::_VBHard</a><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="a06721.html#l00109">109</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr6" doxytag="NL3D::CVertexStreamManager::_VBHardMode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr6">NL3D::CVertexStreamManager::_VBHardMode</a><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="a06721.html#l00111">111</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. +<p> +Referenced by <a class="el" href="a06720.html#l00178">activate()</a>, <a class="el" href="a06720.html#l00039">CVertexStreamManager()</a>, <a class="el" href="a06720.html#l00056">init()</a>, <a class="el" href="a06720.html#l00155">lock()</a>, <a class="el" href="a06720.html#l00126">release()</a>, <a class="el" href="a06720.html#l00189">swapVBHard()</a>, <a class="el" href="a06720.html#l00166">unlock()</a>, and <a class="el" href="a06721.html#l00072">vbHardMode()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr7" doxytag="NL3D::CVertexStreamManager::_VBSoft" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03692.html">CVertexBuffer</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr7">NL3D::CVertexStreamManager::_VBSoft</a><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="a06721.html#l00110">110</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr8" doxytag="NL3D::CVertexStreamManager::_VertexFormat" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr8">NL3D::CVertexStreamManager::_VertexFormat</a><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="a06721.html#l00113">113</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CVertexStreamManagerr9" doxytag="NL3D::CVertexStreamManager::_VertexSize" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a03703.html#NL3D_1_1CVertexStreamManagerr9">NL3D::CVertexStreamManager::_VertexSize</a><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="a06721.html#l00114">114</a> of file <a class="el" href="a06721.html">vertex_stream_manager.h</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a06721.html">vertex_stream_manager.h</a><li><a class="el" href="a06720.html">vertex_stream_manager.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 08:26:11 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |