载入中...
搜索中...
未找到
eve::gpgpu::WebGpuGpuBuffer类 参考final

Storage / staging buffer for the WebGPU backend. 更多...

#include <WebGpuGpgpu.h>

类 eve::gpgpu::WebGpuGpuBuffer 继承关系图:
eve::gpgpu::GpuBuffer

Public 成员函数

 WebGpuGpuBuffer ()=default
 
 ~WebGpuGpuBuffer () override
 
int getSize () const override
 
std::string getUsage () const override
 
void writeData (data::ByteData *data, int dstOffset=0) override
 
data::ByteDatareadData (int srcOffset=0, int size=-1) override
 
void writeFloat32 (int floatIndex, float value) override
 
float readFloat32 (int floatIndex) override
 
void fillFloat32 (float value) override
 
void writeFloat32s (const float *data, int count, int startIndex=0) override
 Bulk float upload/download (one transfer). startIndex is in floats.
 
void readFloat32s (float *out, int count, int startIndex=0) const override
 
void uploadBytes (const void *src, uint64_t nbytes, uint64_t dstOffset=0) override
 
void downloadBytes (void *dst, uint64_t nbytes, uint64_t srcOffset=0) const override
 
- Public 成员函数 继承自 eve::gpgpu::GpuBuffer
 GpuBuffer ()=default
 
virtual ~GpuBuffer ()=default
 
 GpuBuffer (const GpuBuffer &)=delete
 
GpuBufferoperator= (const GpuBuffer &)=delete
 

Public 属性

wgpu::Buffer buffer
 
uint64_t size_ = 0
 
std::string usage_
 

详细描述

Storage / staging buffer for the WebGPU backend.

在文件 WebGpuGpgpu.h44 行定义.

构造及析构函数说明

◆ WebGpuGpuBuffer()

eve::gpgpu::WebGpuGpuBuffer::WebGpuGpuBuffer ( )
default

◆ ~WebGpuGpuBuffer()

eve::gpgpu::WebGpuGpuBuffer::~WebGpuGpuBuffer ( )
overridedefault

成员函数说明

◆ downloadBytes()

void eve::gpgpu::WebGpuGpuBuffer::downloadBytes ( void *  dst,
uint64_t  nbytes,
uint64_t  srcOffset = 0 
) const
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp265 行定义.

引用了 buffer , 以及 size_.

被这些函数引用 readData(), readFloat32() , 以及 readFloat32s().

◆ fillFloat32()

void eve::gpgpu::WebGpuGpuBuffer::fillFloat32 ( float  value)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp309 行定义.

引用了 size_, uploadBytes() , 以及 value.

◆ getSize()

int eve::gpgpu::WebGpuGpuBuffer::getSize ( ) const
inlineoverridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.h49 行定义.

引用了 size_.

◆ getUsage()

std::string eve::gpgpu::WebGpuGpuBuffer::getUsage ( ) const
inlineoverridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.h50 行定义.

引用了 usage_.

◆ readData()

data::ByteData * eve::gpgpu::WebGpuGpuBuffer::readData ( int  srcOffset = 0,
int  size = -1 
)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp277 行定义.

引用了 downloadBytes() , 以及 size_.

◆ readFloat32()

float eve::gpgpu::WebGpuGpuBuffer::readFloat32 ( int  floatIndex)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp292 行定义.

引用了 downloadBytes() , 以及 v.

◆ readFloat32s()

void eve::gpgpu::WebGpuGpuBuffer::readFloat32s ( float *  out,
int  count,
int  startIndex = 0 
) const
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp304 行定义.

引用了 downloadBytes().

◆ uploadBytes()

void eve::gpgpu::WebGpuGpuBuffer::uploadBytes ( const void *  src,
uint64_t  nbytes,
uint64_t  dstOffset = 0 
)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp258 行定义.

引用了 buffer , 以及 size_.

被这些函数引用 fillFloat32(), writeData(), writeFloat32() , 以及 writeFloat32s().

◆ writeData()

void eve::gpgpu::WebGpuGpuBuffer::writeData ( data::ByteData data,
int  dstOffset = 0 
)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp272 行定义.

引用了 data , 以及 uploadBytes().

◆ writeFloat32()

void eve::gpgpu::WebGpuGpuBuffer::writeFloat32 ( int  floatIndex,
float  value 
)
overridevirtual

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp287 行定义.

引用了 uploadBytes() , 以及 value.

◆ writeFloat32s()

void eve::gpgpu::WebGpuGpuBuffer::writeFloat32s ( const float *  data,
int  count,
int  startIndex = 0 
)
overridevirtual

Bulk float upload/download (one transfer). startIndex is in floats.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp299 行定义.

引用了 data , 以及 uploadBytes().

类成员变量说明

◆ buffer

wgpu::Buffer eve::gpgpu::WebGpuGpuBuffer::buffer

在文件 WebGpuGpgpu.h65 行定义.

被这些函数引用 downloadBytes(), uploadBytes() , 以及 eve::gpgpu::webgpuDispatch().

◆ size_

uint64_t eve::gpgpu::WebGpuGpuBuffer::size_ = 0

在文件 WebGpuGpgpu.h66 行定义.

被这些函数引用 downloadBytes(), fillFloat32(), getSize(), readData() , 以及 uploadBytes().

◆ usage_

std::string eve::gpgpu::WebGpuGpuBuffer::usage_

在文件 WebGpuGpgpu.h67 行定义.

被这些函数引用 getUsage().


该类的文档由以下文件生成: