From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../classNL3D_1_1CVertexBufferHardGLNVidia.html | 658 +++++++++++++++++++++ 1 file changed, 658 insertions(+) create mode 100644 docs/doxygen/nel/classNL3D_1_1CVertexBufferHardGLNVidia.html (limited to 'docs/doxygen/nel/classNL3D_1_1CVertexBufferHardGLNVidia.html') diff --git a/docs/doxygen/nel/classNL3D_1_1CVertexBufferHardGLNVidia.html b/docs/doxygen/nel/classNL3D_1_1CVertexBufferHardGLNVidia.html new file mode 100644 index 00000000..871cf364 --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1CVertexBufferHardGLNVidia.html @@ -0,0 +1,658 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# Home   # nevrax.com   
+ + + + +
Nevrax
+ + + + + + + + + + +
+ + +
+ Nevrax.org
+ + + + + + + +
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
+
+ + +
+ + +
+Docs + +
+  + + + + + +
Documentation 
+ +
+Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  
+

NL3D::CVertexBufferHardGLNVidia Class Reference

Work only if ARRAY_RANGE_NV is enabled. +More... +

+#include <driver_opengl_vertex_buffer_hard.h> +

+

Inheritance diagram for NL3D::CVertexBufferHardGLNVidia: +

+ +NL3D::IVertexBufferHardGL +NL3D::IVertexBufferHard +NLMISC::CRefCount + +List of all members. + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

 CVertexBufferHardGLNVidia (CDriverGL *drv)
virtual ~CVertexBufferHardGLNVidia ()
void initGL (CVertexArrayRangeNVidia *var, void *vertexPtr)
bool isFenceSet () const
void setFence ()
void finishFence ()
void * getNVidiaValueEx (uint value)
Implementation
virtual void * lock ()
 Lock the entire VertexBuffer. More...

virtual void unlock ()
 UnLock the VertexBuffer so the Gfx card can now use it. More...

virtual void unlock (uint startVert, uint endVert)
 Same as unlock() but give hints to driver on vertices that have changed. More...

virtual void enable ()
virtual void disable ()

Private Attributes

CVertexArrayRangeNVidia_VertexArrayRange
void * _VertexPtr
GLuint _Fence
bool _FenceSet
+

Detailed Description

+Work only if ARRAY_RANGE_NV is enabled. +

+ +

+Definition at line 174 of file driver_opengl_vertex_buffer_hard.h.


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + + +
NL3D::CVertexBufferHardGLNVidia::CVertexBufferHardGLNVidia CDriverGL  drv
+
+ + + + + +
+   + + +

+ +

+Definition at line 260 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _FenceSet, _VertexArrayRange, _VertexPtr, NL3D::IVertexBufferHardGL::GPURenderingAfterFence, and NL3D::IVertexBufferHardGL::NVidiaVertexBufferHard.

+

+ + + + +
+ + + + + + + + + +
NL3D::CVertexBufferHardGLNVidia::~CVertexBufferHardGLNVidia   [virtual]
+
+ + + + + +
+   + + +

+ +

+Definition at line 274 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _Fence, _VertexArrayRange, _VertexPtr, finishFence, and nglDeleteFencesNV.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::disable   [virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NL3D::IVertexBufferHardGL. +

+Definition at line 350 of file driver_opengl_vertex_buffer_hard.cpp. +

+References NL3D::IVertexBufferHardGL::_Driver, _VertexArrayRange, and nlassert.

+

+ + + + +
+ + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::enable   [virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NL3D::IVertexBufferHardGL. +

+Definition at line 338 of file driver_opengl_vertex_buffer_hard.cpp. +

+References NL3D::IVertexBufferHardGL::_Driver, _VertexArrayRange, and nlassert.

+

+ + + + +
+ + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::finishFence  
+
+ + + + + +
+   + + +

+ +

+Definition at line 372 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _Fence, _FenceSet, isFenceSet, and nglFinishFenceNV. +

+Referenced by lock, and ~CVertexBufferHardGLNVidia.

+

+ + + + +
+ + + + + + + + + + +
void* NL3D::CVertexBufferHardGLNVidia::getNVidiaValueEx uint   value [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 205 of file driver_opengl_vertex_buffer_hard.h. +

+References nlassert, and value.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::initGL CVertexArrayRangeNVidia  var,
void *   vertexPtr
+
+ + + + + +
+   + + +

+ +

+Definition at line 293 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _Fence, _VertexArrayRange, _VertexPtr, and nglGenFencesNV.

+

+ + + + +
+ + + + + + + + + +
bool NL3D::CVertexBufferHardGLNVidia::isFenceSet   const [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 197 of file driver_opengl_vertex_buffer_hard.h. +

+Referenced by finishFence, and setFence.

+

+ + + + +
+ + + + + + + + + +
void * NL3D::CVertexBufferHardGLNVidia::lock   [virtual]
+
+ + + + + +
+   + + +

+Lock the entire VertexBuffer. +

+The returned buffer is a write only buffer. (undefined result if you read it). Write note:

    +
  • for VRAM VertexBufferHard, you should write only one time, to init.
  • for AGP VertexBufferHard, you should write sequentially to take full advantage of the write combiners.
+
+Returns:
+the adress of the vertex 0. Use getVertexSize(), get*Off() ... to access any part of this VertexBuffer.
+

+Implements NL3D::IVertexBufferHard. +

+Definition at line 302 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _VertexPtr, finishFence, NL3D::IVertexBufferHardGL::GPURenderingAfterFence, and setFence.

+

+ + + + +
+ + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::setFence  
+
+ + + + + +
+   + + +

+ +

+Definition at line 362 of file driver_opengl_vertex_buffer_hard.cpp. +

+References _Fence, _FenceSet, GL_ALL_COMPLETED_NV, isFenceSet, and nglSetFenceNV. +

+Referenced by lock.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::unlock uint   startVert,
uint   endVert
[virtual]
+
+ + + + + +
+   + + +

+Same as unlock() but give hints to driver on vertices that have changed. +

+Used by ATI-OpenGL drivers. NB: driver may still ignore this information, and so take into acount all vertices

+Parameters:
+ + + +
startVert  +the fisrt vertex to update
endVert  +the last vertex (not included) to update => numVertices= vertEnd-vertBegin. Hence unlock() as the same effect as unlock(0, getNumVertices());
+
+

+Implements NL3D::IVertexBufferHard. +

+Definition at line 331 of file driver_opengl_vertex_buffer_hard.cpp.

+

+ + + + +
+ + + + + + + + + +
void NL3D::CVertexBufferHardGLNVidia::unlock   [virtual]
+
+ + + + + +
+   + + +

+UnLock the VertexBuffer so the Gfx card can now use it. +

+ +

+Implements NL3D::IVertexBufferHard. +

+Definition at line 325 of file driver_opengl_vertex_buffer_hard.cpp.

+


Member Data Documentation

+

+ + + + +
+ + +
GLuint NL3D::CVertexBufferHardGLNVidia::_Fence [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 218 of file driver_opengl_vertex_buffer_hard.h. +

+Referenced by finishFence, initGL, setFence, and ~CVertexBufferHardGLNVidia.

+

+ + + + +
+ + +
bool NL3D::CVertexBufferHardGLNVidia::_FenceSet [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 220 of file driver_opengl_vertex_buffer_hard.h. +

+Referenced by CVertexBufferHardGLNVidia, finishFence, and setFence.

+

+ + + + +
+ + +
CVertexArrayRangeNVidia* NL3D::CVertexBufferHardGLNVidia::_VertexArrayRange [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 214 of file driver_opengl_vertex_buffer_hard.h. +

+Referenced by CVertexBufferHardGLNVidia, disable, enable, initGL, and ~CVertexBufferHardGLNVidia.

+

+ + + + +
+ + +
void* NL3D::CVertexBufferHardGLNVidia::_VertexPtr [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 215 of file driver_opengl_vertex_buffer_hard.h. +

+Referenced by CVertexBufferHardGLNVidia, initGL, lock, and ~CVertexBufferHardGLNVidia.

+


The documentation for this class was generated from the following files: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1