32 #include "buffer_usage.h"
48 virtual void *
data() = 0;
57 virtual void upload_data(
const GraphicContextPtr &gc,
int offset,
const void *data,
int size) = 0;
Transfer Buffer.
Definition: staging_buffer.h:40
BufferUsage
Array Buffer usage enum.
Definition: buffer_usage.h:35
std::shared_ptr< StagingBuffer > StagingBufferPtr
Definition: element_array_buffer.h:37
virtual void upload_data(const GraphicContextPtr &gc, int offset, const void *data, int size)=0
Uploads data to transfer buffer.
Definition: buffer_usage.h:45
static std::shared_ptr< StagingBuffer > create(const GraphicContextPtr &gc, int size, BufferUsage usage=usage_dynamic_copy)
Constructs a transfer buffer.
virtual void * data()=0
Retrieves a pointer to the mapped buffer.
BufferAccess
Array Buffer access enum.
Definition: buffer_usage.h:49
std::shared_ptr< GraphicContext > GraphicContextPtr
Definition: d3d_target.h:49
virtual void lock(const GraphicContextPtr &gc, BufferAccess access)=0
Maps buffer into system memory.
Definition: Application/application.h:35
virtual void unlock()=0
Unmaps buffer.