#include <OgreD3D9HardwareIndexBuffer.h>
Inheritance diagram for Ogre::D3D9HardwareIndexBuffer:
Public Types | |
enum | IndexType { IT_16BIT, IT_32BIT } |
enum | Usage { HBU_STATIC = 1, HBU_DYNAMIC = 2, HBU_WRITE_ONLY = 4, HBU_DISCARDABLE = 8, HBU_STATIC_WRITE_ONLY = 5, HBU_DYNAMIC_WRITE_ONLY = 6, HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE = 14 } |
Enums describing buffer usage; not mutually exclusive. More... | |
enum | LockOptions { HBL_NORMAL, HBL_DISCARD, HBL_READ_ONLY, HBL_NO_OVERWRITE } |
Locking options. More... | |
Public Member Functions | |
D3D9HardwareIndexBuffer (IndexType idxType, size_t numIndexes, HardwareBuffer::Usage usage, LPDIRECT3DDEVICE9 pDev, bool useSystemMem, bool useShadowBuffer) | |
~D3D9HardwareIndexBuffer () | |
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. | |
bool | releaseIfDefaultPool (void) |
For dealing with lost devices - release the resource if in the default pool. | |
bool | recreateIfDefaultPool (LPDIRECT3DDEVICE9 pDev) |
For dealing with lost devices - recreate the resource if in the default pool. | |
LPDIRECT3DINDEXBUFFER9 | getD3DIndexBuffer (void) |
Get the D3D-specific index buffer. | |
IndexType | getType (void) const |
Get the type of indexes used in this buffer. | |
size_t | getNumIndexes (void) const |
Get the number of indexes in this buffer. | |
size_t | getIndexSize (void) const |
Get the size in bytes of each index. | |
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 | hasShadowBuffer (void) const |
Returns whether this buffer has a system memory shadow for quicker reading. | |
bool | isLocked (void) const |
Returns whether or not this buffer is currently locked. | |
void | suppressHardwareUpdate (bool suppress) |
Pass true to suppress hardware upload of shadow buffer changes. | |
Protected Member Functions | |
void * | lockImpl (size_t offset, size_t length, LockOptions options) |
See HardwareBuffer. | |
void | unlockImpl (void) |
See HardwareBuffer. | |
Protected Attributes | |
LPDIRECT3DINDEXBUFFER9 | mlpD3DBuffer |
D3DPOOL | mD3DPool |
IndexType | mIndexType |
size_t | mNumIndexes |
size_t | mIndexSize |
size_t | mSizeInBytes |
Usage | mUsage |
bool | mIsLocked |
size_t | mLockStart |
size_t | mLockSize |
bool | mSystemMemory |
bool | mUseShadowBuffer |
HardwareBuffer * | mpShadowBuffer |
bool | mShadowUpdated |
bool | mSuppressHardwareUpdate |
|
Definition at line 39 of file OgreHardwareIndexBuffer.h. |
|
Locking options.
Definition at line 111 of file OgreHardwareBuffer.h. |
|
Enums describing buffer usage; not mutually exclusive.
Definition at line 69 of file OgreHardwareBuffer.h. |
|
|
|
|
|
Updates the real buffer from the shadow buffer, if required.
Definition at line 275 of file OgreHardwareBuffer.h. |
|
Copy data from another buffer into this one.
Definition at line 265 of file OgreHardwareBuffer.h. References Ogre::HardwareBuffer::lock(), and Ogre::HardwareBuffer::unlock(). |
|
Get the D3D-specific index buffer.
Definition at line 59 of file OgreD3D9HardwareIndexBuffer.h. References mlpD3DBuffer. |
|
Get the size in bytes of each index.
Definition at line 59 of file OgreHardwareIndexBuffer.h. |
|
Get the number of indexes in this buffer.
Definition at line 57 of file OgreHardwareIndexBuffer.h. |
|
Returns the size of this buffer in bytes.
Definition at line 300 of file OgreHardwareBuffer.h. |
|
Get the type of indexes used in this buffer.
Definition at line 55 of file OgreHardwareIndexBuffer.h. |
|
Returns the Usage flags with which this buffer was created.
Definition at line 302 of file OgreHardwareBuffer.h. |
|
Returns whether this buffer has a system memory shadow for quicker reading.
Definition at line 306 of file OgreHardwareBuffer.h. |
|
Returns whether or not this buffer is currently locked.
Definition at line 308 of file OgreHardwareBuffer.h. |
|
Returns whether this buffer is held in system memory.
Definition at line 304 of file OgreHardwareBuffer.h. |
|
Lock the entire buffer for (potentially) reading / writing.
Definition at line 201 of file OgreHardwareBuffer.h. |
|
Lock the buffer for (potentially) reading / writing.
Reimplemented in Ogre::DefaultHardwareVertexBuffer, Ogre::DefaultHardwareIndexBuffer, Ogre::HardwarePixelBuffer, Ogre::GLDefaultHardwareVertexBuffer, and Ogre::GLDefaultHardwareIndexBuffer. Definition at line 171 of file OgreHardwareBuffer.h. Referenced by Ogre::HardwareBuffer::copyData(). |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. |
|
For dealing with lost devices - recreate the resource if in the default pool.
|
|
For dealing with lost devices - release the resource if in the default pool.
|
|
Pass true to suppress hardware upload of shadow buffer changes.
Definition at line 312 of file OgreHardwareBuffer.h. |
|
Releases the lock on this buffer.
Reimplemented in Ogre::DefaultHardwareVertexBuffer, Ogre::DefaultHardwareIndexBuffer, Ogre::GLDefaultHardwareVertexBuffer, and Ogre::GLDefaultHardwareIndexBuffer. Definition at line 217 of file OgreHardwareBuffer.h. Referenced by Ogre::HardwareBuffer::copyData(). |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. |
|
See HardwareBuffer.
Implements Ogre::HardwareBuffer. |
|
Definition at line 38 of file OgreD3D9HardwareIndexBuffer.h. |
|
Definition at line 47 of file OgreHardwareIndexBuffer.h. |
|
Definition at line 45 of file OgreHardwareIndexBuffer.h. |
|
Definition at line 133 of file OgreHardwareBuffer.h. |
|
Definition at line 135 of file OgreHardwareBuffer.h. |
|
Definition at line 134 of file OgreHardwareBuffer.h. |
|
Definition at line 37 of file OgreD3D9HardwareIndexBuffer.h. Referenced by getD3DIndexBuffer(). |
|
Definition at line 46 of file OgreHardwareIndexBuffer.h. |
|
Definition at line 138 of file OgreHardwareBuffer.h. |
|
Definition at line 139 of file OgreHardwareBuffer.h. |
|
Definition at line 131 of file OgreHardwareBuffer.h. |
|
Definition at line 140 of file OgreHardwareBuffer.h. |
|
Definition at line 136 of file OgreHardwareBuffer.h. |
|
Definition at line 132 of file OgreHardwareBuffer.h. |
|
Definition at line 137 of file OgreHardwareBuffer.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Mar 12 14:50:37 2006