From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../nel/classNL3D_1_1IVertexBufferHard.html | 739 +++++++++++++++++++++ 1 file changed, 739 insertions(+) create mode 100644 docs/doxygen/nel/classNL3D_1_1IVertexBufferHard.html (limited to 'docs/doxygen/nel/classNL3D_1_1IVertexBufferHard.html') diff --git a/docs/doxygen/nel/classNL3D_1_1IVertexBufferHard.html b/docs/doxygen/nel/classNL3D_1_1IVertexBufferHard.html new file mode 100644 index 00000000..4d29b76d --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1IVertexBufferHard.html @@ -0,0 +1,739 @@ + + + + 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::IVertexBufferHard Class Reference

This a vertex buffer created by Driver. +More... +

+#include <vertex_buffer_hard.h> +

+

Inheritance diagram for NL3D::IVertexBufferHard: +

+ +NLMISC::CRefCount +NL3D::IVertexBufferHardGL +NL3D::CVertexBufferHardGLATI +NL3D::CVertexBufferHardGLNVidia + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

Misc Get.
uint16 getVertexFormat (void) const
uint16 getVertexSize (void) const
uint32 getNumVertices (void) const
CVertexBuffer::TType getValueType (uint value) const
uint8 getNumWeight () const
Get component offsets.
sint getValueOff (uint value) const
Vertex access.
virtual void * lock ()=0
 Lock the entire VertexBuffer. More...

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

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


Protected Methods

 IVertexBufferHard ()
 Constructor: build good offfsets / size. More...

virtual ~IVertexBufferHard ()
void initFormat (uint16 vertexFormat, const uint8 *typeArray, uint32 numVertices)

Protected Attributes

uint8 _Type [CVertexBuffer::NumValue]
uint8 _Pad
uint16 _VertexSize
uint16 _Flags
uint16 _InternalFlags
uint32 _NbVerts
uint16 _Offset [CVertexBuffer::NumValue]
+

Detailed Description

+This a vertex buffer created by Driver. +

+His pointer may be allocated on AGP Ram or VRAM. see CVertexBuffer, because it use the same flags for vertex format. IVertexBufferHard are created / deleted by IDriver.

+Author:
+Lionel Berenguier , Nevrax France
+Date:
+2001
+

+ +

+Definition at line 46 of file vertex_buffer_hard.h.


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + +
NL3D::IVertexBufferHard::IVertexBufferHard   [inline, protected]
+
+ + + + + +
+   + + +

+Constructor: build good offfsets / size. +

+ +

+Definition at line 130 of file vertex_buffer_hard.h.

+

+ + + + +
+ + + + + + + + + +
virtual NL3D::IVertexBufferHard::~IVertexBufferHard   [inline, protected, virtual]
+
+ + + + + +
+   + + +

+ +

+Definition at line 131 of file vertex_buffer_hard.h.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + +
uint32 NL3D::IVertexBufferHard::getNumVertices void   const [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 54 of file vertex_buffer_hard.h. +

+Referenced by NL3D::CVertexBufferHardGLATI::unlock.

+

+ + + + +
+ + + + + + + + + +
uint8 NL3D::IVertexBufferHard::getNumWeight   const
+
+ + + + + +
+   + + +

+ +

+Definition at line 71 of file vertex_buffer_hard.cpp. +

+References _Type.

+

+ + + + +
+ + + + + + + + + + +
sint NL3D::IVertexBufferHard::getValueOff uint   value const [inline]
+
+ + + + + +
+   + + +

+

    +
  • * - * - * - * - * - * -
+ +

+Definition at line 81 of file vertex_buffer_hard.h. +

+References _Flags, _Offset, nlassert, and value.

+

+ + + + +
+ + + + + + + + + + +
CVertexBuffer::TType NL3D::IVertexBufferHard::getValueType uint   value const [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 55 of file vertex_buffer_hard.h. +

+References _Type, nlassert, and value.

+

+ + + + +
+ + + + + + + + + + +
uint16 NL3D::IVertexBufferHard::getVertexFormat void   const [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 52 of file vertex_buffer_hard.h.

+

+ + + + +
+ + + + + + + + + + +
uint16 NL3D::IVertexBufferHard::getVertexSize void   const [inline]
+
+ + + + + +
+   + + +

+ +

+Definition at line 53 of file vertex_buffer_hard.h. +

+Referenced by NL3D::CVertexBufferHardGLATI::unlock.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
void NL3D::IVertexBufferHard::initFormat uint16   vertexFormat,
const uint8  typeArray,
uint32   numVertices
[protected]
+
+ + + + + +
+   + + +

+ +

+Reimplemented in NL3D::IVertexBufferHardGL. +

+Definition at line 36 of file vertex_buffer_hard.cpp. +

+References _Flags, _NbVerts, _Offset, _Type, _VertexSize, and value.

+

+ + + + +
+ + + + + + + + + +
virtual void* NL3D::IVertexBufferHard::lock   [pure 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.
+

+Implemented in NL3D::CVertexBufferHardGLNVidia.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
virtual void NL3D::IVertexBufferHard::unlock uint   startVert,
uint   endVert
[pure 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());
+
+

+Implemented in NL3D::CVertexBufferHardGLNVidia.

+

+ + + + +
+ + + + + + + + + +
virtual void NL3D::IVertexBufferHard::unlock   [pure virtual]
+
+ + + + + +
+   + + +

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

+ +

+Implemented in NL3D::CVertexBufferHardGLNVidia.

+


Member Data Documentation

+

+ + + + +
+ + +
uint16 NL3D::IVertexBufferHard::_Flags [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 118 of file vertex_buffer_hard.h. +

+Referenced by getValueOff, and initFormat.

+

+ + + + +
+ + +
uint16 NL3D::IVertexBufferHard::_InternalFlags [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 121 of file vertex_buffer_hard.h.

+

+ + + + +
+ + +
uint32 NL3D::IVertexBufferHard::_NbVerts [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 124 of file vertex_buffer_hard.h. +

+Referenced by initFormat.

+

+ + + + +
+ + +
uint16 NL3D::IVertexBufferHard::_Offset[CVertexBuffer::NumValue] [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 127 of file vertex_buffer_hard.h. +

+Referenced by getValueOff, and initFormat.

+

+ + + + +
+ + +
uint8 NL3D::IVertexBufferHard::_Pad [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 112 of file vertex_buffer_hard.h.

+

+ + + + +
+ + +
uint8 NL3D::IVertexBufferHard::_Type[CVertexBuffer::NumValue] [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 111 of file vertex_buffer_hard.h. +

+Referenced by getNumWeight, getValueType, and initFormat.

+

+ + + + +
+ + +
uint16 NL3D::IVertexBufferHard::_VertexSize [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 115 of file vertex_buffer_hard.h. +

+Referenced by initFormat.

+


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