#include <OgreD3D9HardwareVertexBuffer.h>
Inheritance diagram for Ogre::D3D9HardwareVertexBuffer:
Public Types | |
enum | Usage { HBU_STATIC = 1, HBU_DYNAMIC = 2, HBU_WRITE_ONLY = 4, HBU_STATIC_WRITE_ONLY = 5, HBU_DYNAMIC_WRITE_ONLY = 6 } |
Enums describing buffer usage; not mutually exclusive. More... | |
enum | LockOptions { HBL_NORMAL, HBL_DISCARD, HBL_READ_ONLY, HBL_NO_OVERWRITE } |
Locking options. More... | |
Public Methods | |
D3D9HardwareVertexBuffer (size_t vertexSize, size_t numVertices, HardwareBuffer::Usage usage, LPDIRECT3DDEVICE9 pDev, bool useSystemMem, bool useShadowBuffer) | |
~D3D9HardwareVertexBuffer () | |
void | readData (size_t offset, size_t length, void *pDest) |
See HardwareBuffer. | |
void | writeData (size_t offset, size_t length, const void *pSource, bool discardWholeBuffer=false) |
See HardwareBuffer. | |
LPDIRECT3DVERTEXBUFFER9 | getD3D9VertexBuffer (void) const |
Get D3D9-specific vertex buffer. | |
size_t | getVertexSize (void) const |
Gets the size in bytes of a single vertex in this buffer. | |
size_t | getNumVertices (void) const |
Get the number of vertices in this buffer. | |
virtual void * | lock (size_t offset, size_t length, LockOptions options) |
Lock the buffer for (potentially) reading / writing. | |
void * | lock (LockOptions options) |
Lock the entire buffer for (potentially) reading / writing. | |
virtual void | unlock (void) |
Releases the lock on this buffer. | |
virtual void | copyData (HardwareBuffer &srcBuffer, size_t srcOffset, size_t dstOffset, size_t length, bool discardWholeBuffer=false) |
Copy data from another buffer into this one. | |
virtual void | _updateFromShadow (void) |
Updates the real buffer from the shadow buffer, if required. | |
size_t | getSizeInBytes (void) const |
Returns the size of this buffer in bytes. | |
Usage | getUsage (void) const |
Returns the Usage flags with which this buffer was created. | |
bool | isSystemMemory (void) const |
Returns whether this buffer is held in system memory. | |
bool | isLocked (void) const |
Returns whether or not this buffer is currently locked. | |
Protected Methods | |
void * | lockImpl (size_t offset, size_t length, LockOptions options) |
See HardwareBuffer. | |
void | unlockImpl (void) |
See HardwareBuffer. | |
Protected Attributes | |
LPDIRECT3DVERTEXBUFFER9 | mlpD3DBuffer |
size_t | mNumVertices |
size_t | mVertexSize |
size_t | mSizeInBytes |
Usage | mUsage |
bool | mIsLocked |
size_t | mLockStart |
size_t | mLockSize |
bool | mSystemMemory |
bool | mUseShadowBuffer |
HardwareBuffer * | mpShadowBuffer |
bool | mShadowUpdated |
Definition at line 38 of file OgreD3D9HardwareVertexBuffer.h.
|
Locking options.
Definition at line 96 of file OgreHardwareBuffer.h. |
|
Enums describing buffer usage; not mutually exclusive.
Definition at line 69 of file OgreHardwareBuffer.h. |
|
Definition at line 32 of file OgreD3D9HardwareVertexBuffer.cpp. References Except, mlpD3DBuffer, and Ogre::HardwareBuffer::mSizeInBytes. |
|
Definition at line 54 of file OgreD3D9HardwareVertexBuffer.cpp. References mlpD3DBuffer, and SAFE_RELEASE. |
|
Updates the real buffer from the shadow buffer, if required.
Definition at line 247 of file OgreHardwareBuffer.h. References Ogre::HardwareBuffer::lockImpl(), and Ogre::HardwareBuffer::unlockImpl(). |
|
Copy data from another buffer into this one.
Definition at line 237 of file OgreHardwareBuffer.h. References Ogre::HardwareBuffer::lock(), and Ogre::HardwareBuffer::unlock(). |
|
Get D3D9-specific vertex buffer.
Definition at line 57 of file OgreD3D9HardwareVertexBuffer.h. References mlpD3DBuffer. Referenced by Ogre::D3D9RenderSystem::setVertexBufferBinding(). |
|
Get the number of vertices in this buffer.
Definition at line 51 of file OgreHardwareVertexBuffer.h. |
|
Returns the size of this buffer in bytes.
Definition at line 272 of file OgreHardwareBuffer.h. |
|
Returns the Usage flags with which this buffer was created.
Definition at line 274 of file OgreHardwareBuffer.h. |
|
Gets the size in bytes of a single vertex in this buffer.
Definition at line 49 of file OgreHardwareVertexBuffer.h. Referenced by Ogre::D3D9RenderSystem::setVertexBufferBinding(). |
|
Returns whether or not this buffer is currently locked.
Definition at line 278 of file OgreHardwareBuffer.h. Referenced by Ogre::HardwareBuffer::unlock(). |
|
Returns whether this buffer is held in system memory.
Definition at line 276 of file OgreHardwareBuffer.h. |
|
Lock the entire buffer for (potentially) reading / writing.
Definition at line 173 of file OgreHardwareBuffer.h. |
|
Lock the buffer for (potentially) reading / writing.
Reimplemented in Ogre::DefaultHardwareVertexBuffer, Ogre::DefaultHardwareIndexBuffer, Ogre::GLDefaultHardwareVertexBuffer, and Ogre::GLDefaultHardwareIndexBuffer. Definition at line 143 of file OgreHardwareBuffer.h. Referenced by Ogre::HardwareBuffer::copyData(), readData(), Ogre::D3D9HardwareIndexBuffer::readData(), writeData(), and Ogre::D3D9HardwareIndexBuffer::writeData(). |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. Definition at line 59 of file OgreD3D9HardwareVertexBuffer.cpp. References Except, Ogre::HardwareBuffer::HBL_DISCARD, Ogre::HardwareBuffer::HBL_NO_OVERWRITE, Ogre::HardwareBuffer::HBU_DYNAMIC, mlpD3DBuffer, and Ogre::HardwareBuffer::mUsage. |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. Definition at line 94 of file OgreD3D9HardwareVertexBuffer.cpp. References Ogre::HardwareBuffer::lock(), and Ogre::HardwareBuffer::unlock(). |
|
Releases the lock on this buffer.
Reimplemented in Ogre::DefaultHardwareVertexBuffer, Ogre::DefaultHardwareIndexBuffer, Ogre::GLDefaultHardwareVertexBuffer, and Ogre::GLDefaultHardwareIndexBuffer. Definition at line 189 of file OgreHardwareBuffer.h. References Ogre::HardwareBuffer::isLocked(). Referenced by Ogre::HardwareBuffer::copyData(), readData(), Ogre::D3D9HardwareIndexBuffer::readData(), writeData(), and Ogre::D3D9HardwareIndexBuffer::writeData(). |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. Definition at line 89 of file OgreD3D9HardwareVertexBuffer.cpp. References mlpD3DBuffer. |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. Definition at line 105 of file OgreD3D9HardwareVertexBuffer.cpp. References Ogre::HardwareBuffer::lock(), and Ogre::HardwareBuffer::unlock(). |
|
|
Definition at line 120 of file OgreHardwareBuffer.h. |
|
Definition at line 119 of file OgreHardwareBuffer.h. |
|
Definition at line 41 of file OgreD3D9HardwareVertexBuffer.h. Referenced by D3D9HardwareVertexBuffer(), getD3D9VertexBuffer(), lockImpl(), unlockImpl(), and ~D3D9HardwareVertexBuffer(). |
|
Definition at line 40 of file OgreHardwareVertexBuffer.h. Referenced by Ogre::HardwareVertexBuffer::HardwareVertexBuffer(). |
|
Definition at line 123 of file OgreHardwareBuffer.h. Referenced by Ogre::HardwareIndexBuffer::HardwareIndexBuffer(), Ogre::HardwareVertexBuffer::HardwareVertexBuffer(), Ogre::HardwareIndexBuffer::~HardwareIndexBuffer(), and Ogre::HardwareVertexBuffer::~HardwareVertexBuffer(). |
|
Definition at line 124 of file OgreHardwareBuffer.h. |
|
|
Definition at line 121 of file OgreHardwareBuffer.h. |
|
Definition at line 117 of file OgreHardwareBuffer.h. Referenced by Ogre::GLHardwareVertexBuffer::lockImpl(), Ogre::GLHardwareIndexBuffer::lockImpl(), lockImpl(), Ogre::D3D9HardwareIndexBuffer::lockImpl(), Ogre::GLHardwareVertexBuffer::writeData(), and Ogre::GLHardwareIndexBuffer::writeData(). |
|
Definition at line 122 of file OgreHardwareBuffer.h. |
|
Definition at line 41 of file OgreHardwareVertexBuffer.h. Referenced by Ogre::HardwareVertexBuffer::HardwareVertexBuffer(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:12:10 2004