29 #ifndef __GL3PlusDefaultHardwareBufferManager_H__
30 #define __GL3PlusDefaultHardwareBufferManager_H__
46 void* lockImpl(
size_t offset,
size_t length,
LockOptions options);
48 void unlockImpl(
void);
57 void readData(
size_t offset,
size_t length,
void* pDest);
59 void writeData(
size_t offset,
size_t length,
const void* pSource,
60 bool discardWholeBuffer =
false);
62 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); }
100 void* lockImpl(
size_t offset,
size_t length,
LockOptions options);
102 void unlockImpl(
void);
110 void readData(
size_t offset,
size_t length,
void* pDest);
112 void writeData(
size_t offset,
size_t length,
const void* pSource,
113 bool discardWholeBuffer =
false);
115 void* lock(
size_t offset,
size_t length,
LockOptions options);
119 void*
getDataPtr(
size_t offset)
const {
return (
void*)(mData + offset); }
128 void* lockImpl(
size_t offset,
size_t length,
LockOptions options);
130 void unlockImpl(
void);
137 void readData(
size_t offset,
size_t length,
void* pDest);
139 void writeData(
size_t offset,
size_t length,
const void* pSource,
140 bool discardWholeBuffer =
false);
142 void* lock(
size_t offset,
size_t length,
LockOptions options);
146 void*
getDataPtr(
size_t offset)
const {
return (
void*)(mData + offset); }
163 createVertexBuffer(
size_t vertexSize,
size_t numVerts,
void * getDataPtr(size_t offset) const
void * getDataPtr(size_t offset) const
Singleton wrapper for hardware buffer manager.
Specialisation of HardwareBuffer for vertex index buffers, still abstract.
Specialisation of HardwareBuffer for a counter buffer.
Shared pointer implementation used to share vertex buffers.
Specialisation of HardwareBufferManager to emulate hardware buffers.
void * getDataPtr(size_t offset) const
Specialisation of HardwareCounterBuffer for emulation.
Shared pointer implementation used to share index buffers.
LockOptions
Locking options.
Base definition of a hardware buffer manager.
Usage
Enums describing buffer usage; not mutually exclusive.
GL3PlusDefaultHardwareBufferManagerBase as a Singleton.
#define _OgreGL3PlusExport
Shared pointer implementation used to share counter buffers.
~GL3PlusDefaultHardwareBufferManager()
Specialisation of HardwareBuffer for a vertex buffer.
Specialisation of HardwareVertexBuffer for emulation.
Reference-counted shared pointer, used for objects where implicit destruction is required.
Specialisation of HardwareIndexBuffer for emulation.
GL3PlusDefaultHardwareBufferManager()