28 #ifndef __D3D11HARDWAREBUFFER_H__
29 #define __D3D11HARDWAREBUFFER_H__
66 D3D11Device & device,
bool useSystemMem,
bool useShadowBuffer,
bool streamOut);
69 void readData(
size_t offset,
size_t length,
void* pDest);
71 void writeData(
size_t offset,
size_t length,
const void* pSource,
72 bool discardWholeBuffer =
false);
75 size_t dstOffset,
size_t length,
bool discardWholeBuffer =
false);
ID3D11Buffer * getD3DBuffer(void)
Get the D3D-specific buffer.
bool mStagingUploadNeeded
D3D11HardwareBuffer(BufferType btype, size_t sizeBytes, HardwareBuffer::Usage usage, D3D11Device &device, bool useSystemMem, bool useShadowBuffer, bool streamOut)
void unlockImpl(void)
See HardwareBuffer.
ID3D11Buffer * mlpD3DBuffer
bool mUseTempStagingBuffer
LockOptions
Locking options.
D3D11HardwareBuffer * mpTempStagingBuffer
void * lockImpl(size_t offset, size_t length, LockOptions options)
See HardwareBuffer.
void copyData(HardwareBuffer &srcBuffer, size_t srcOffset, size_t dstOffset, size_t length, bool discardWholeBuffer=false)
See HardwareBuffer.
Usage
Enums describing buffer usage; not mutually exclusive.
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.
Abstract class defining common features of hardware buffers.
Base implementation of a D3D11 buffer, dealing with all the common aspects.