29 #ifndef __GLDefaultHardwareBufferManager_H__
30 #define __GLDefaultHardwareBufferManager_H__
45 void* lockImpl(
size_t offset,
size_t length,
LockOptions options);
47 void unlockImpl(
void);
55 void readData(
size_t offset,
size_t length,
void* pDest);
58 void writeData(
size_t offset,
size_t length,
const void* pSource,
59 bool discardWholeBuffer =
false);
61 void* lock(
size_t offset,
size_t length,
LockOptions options);
66 void*
getDataPtr(
size_t offset)
const {
return (
void*)(mData + offset); }
75 void* lockImpl(
size_t offset,
size_t length,
LockOptions options);
77 void unlockImpl(
void);
82 void readData(
size_t offset,
size_t length,
void* pDest);
84 void writeData(
size_t offset,
size_t length,
const void* pSource,
85 bool discardWholeBuffer =
false);
87 void* lock(
size_t offset,
size_t length,
LockOptions options);
91 void*
getDataPtr(
size_t offset)
const {
return (
void*)(mData + offset); }
108 createVertexBuffer(
size_t vertexSize,
size_t numVerts,
121 bool useShadowBuffer =
false,
const String& name =
"");
Singleton wrapper for hardware buffer manager.
Specialisation of HardwareBuffer for vertex index buffers, still abstract.
Shared pointer implementation used to share vertex buffers.
Combination of HBU_DYNAMIC, HBU_WRITE_ONLY and HBU_DISCARDABLE.
Shared pointer implementation used to share index buffers.
LockOptions
Locking options.
GLDefaultHardwareBufferManager()
Base definition of a hardware buffer manager.
Usage
Enums describing buffer usage; not mutually exclusive.
void * getDataPtr(size_t offset) const
Specialisation of HardwareVertexBuffer for emulation.
Shared pointer implementation used to share counter buffers.
Specialisation of HardwareBuffer for a vertex buffer.
Reference-counted shared pointer, used for objects where implicit destruction is required.
~GLDefaultHardwareBufferManager()
void * getDataPtr(size_t offset) const
Specialisation of HardwareIndexBuffer for emulation.
Specialisation of HardwareBufferManager to emulate hardware buffers.
GLDefaultHardwareBufferManagerBase as a Singleton.