51 void write(std::span<T> data,
size_t offset = 0);
60 void write(
const void* data,
size_t size,
size_t offset = 0);
69 void read(
void* data,
size_t size,
size_t offset = 0);
74 [[nodiscard]]
size_t get_size()
const;
97 virtual void map(
size_t size = -1,
size_t offset = 0) = 0;
110 virtual void flush(
size_t size = -1,
size_t offset = 0) = 0;
116 void* data_ =
nullptr;
122 write(data.data(), data.size_bytes(), offset);
缓冲区.
Definition: Buffer.h:13
void read(void *data, size_t size, size_t offset=0)
读取映射缓冲区.
Definition: Buffer.cpp:40
virtual void unmap()=0
取消映射.
Type
缓冲区类型. 表明了缓冲区的用途.
Definition: Buffer.h:19
virtual void map(size_t size=-1, size_t offset=0)=0
映射缓冲区到内存.
size_t get_size() const
获取缓冲区大小, 单位: 字节.
Definition: Buffer.cpp:12
Type get_type() const
获取缓冲区类型.
Definition: Buffer.cpp:17
Usage
缓冲区使用方式.
Definition: Buffer.h:29
virtual void flush(size_t size=-1, size_t offset=0)=0
刷新映射缓冲区.
void write(std::span< T > data, size_t offset=0)
写入映射缓冲区.
Definition: Buffer.h:120
Usage get_usage() const
获取缓冲区使用方式.
Definition: Buffer.cpp:22
void * get_data()
获取映射的缓冲区.
Definition: Buffer.cpp:27