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

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

#include <WebGpuGpgpu.h>

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

Public 成员函数

 WebGpuGpuBuffer ()=default
 Constructs a WebGpuGpuBuffer.
 
 ~WebGpuGpuBuffer () override
 Releases WebGpuGpuBuffer resources.
 
int getSize () const override
 Byte length of the owned buffer.
 
std::string getUsage () const override
 Returns the usage.
 
void writeData (data::ByteData *data, int dstOffset=0) override
 Writes data.
 
data::ByteData * readData (int srcOffset=0, int size=-1) override
 Reads data.
 
void writeFloat32 (int floatIndex, float value) override
 Writes float 32.
 
float readFloat32 (int floatIndex) override
 Reads float 32.
 
void fillFloat32 (float value) override
 Fill float 32.
 
void writeFloat32s (const float *data, int count, int startIndex=0) override
 Writes float 32 s.
 
void readFloat32s (float *out, int count, int startIndex=0) const override
 Reads float 32 s.
 
void uploadBytes (const void *src, uint64_t nbytes, uint64_t dstOffset=0) override
 Uploads bytes.
 
void downloadBytes (void *dst, uint64_t nbytes, uint64_t srcOffset=0) const override
 Downloads bytes.
 
GpuResidentBufferView residentView () const override
 Resident view.
 
- Public 成员函数 继承自 eve::gpgpu::GpuBuffer
 GpuBuffer ()=default
 Constructs a GpuBuffer.
 
virtual ~GpuBuffer ()=default
 Releases GpuBuffer resources.
 
 GpuBuffer (const GpuBuffer &)=delete
 
GpuBuffer & operator= (const GpuBuffer &)=delete
 

Public 属性

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

详细描述

Storage / staging buffer for the WebGPU backend.

在文件 WebGpuGpgpu.h 第 53 行定义.

构造及析构函数说明

◆ WebGpuGpuBuffer()

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

Constructs a WebGpuGpuBuffer.

◆ ~WebGpuGpuBuffer()

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

Releases WebGpuGpuBuffer resources.

成员函数说明

◆ downloadBytes()

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

Downloads bytes.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 300 行定义.

引用了 buffer, size_ , 以及 usage_.

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

◆ fillFloat32()

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

Fill float 32.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 347 行定义.

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

◆ getSize()

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

Byte length of the owned buffer.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.h 第 61 行定义.

引用了 size_.

◆ getUsage()

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

Returns the usage.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.h 第 63 行定义.

引用了 usage_.

◆ readData()

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

Reads data.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 315 行定义.

引用了 downloadBytes(), size , 以及 size_.

◆ readFloat32()

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

Reads float 32.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 330 行定义.

引用了 downloadBytes() , 以及 v.

◆ readFloat32s()

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

Reads float 32 s.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 342 行定义.

引用了 count , 以及 downloadBytes().

◆ residentView()

GpuResidentBufferView eve::gpgpu::WebGpuGpuBuffer::residentView ( ) const
overridevirtual

Resident view.

重载 eve::gpgpu::GpuBuffer .

在文件 WebGpuGpgpu.cpp 第 282 行定义.

引用了 buffer, size_, view , 以及 eve::WebGpu.

◆ uploadBytes()

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

Uploads bytes.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 293 行定义.

引用了 buffer , 以及 size_.

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

◆ writeData()

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

Writes data.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 310 行定义.

引用了 uploadBytes().

◆ writeFloat32()

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

Writes float 32.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 325 行定义.

引用了 uploadBytes() , 以及 value.

◆ writeFloat32s()

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

Writes float 32 s.

实现了 eve::gpgpu::GpuBuffer.

在文件 WebGpuGpgpu.cpp 第 337 行定义.

引用了 count , 以及 uploadBytes().

类成员变量说明

◆ buffer

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

◆ size_

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

◆ usage_

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

在文件 WebGpuGpgpu.h 第 91 行定义.

被这些函数引用 downloadBytes() , 以及 getUsage().


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