Open3D (C++ API)  0.19.0
Public Member Functions
open3d::visualization::rendering::GpuComputePass Class Reference

#include <ComputeGPU.h>

Public Member Functions

 GpuComputePass (GaussianSplatGpuContext &ctx, ComputeProgramId pid, const char *label=nullptr)
 
 ~GpuComputePass ()
 
 GpuComputePass (const GpuComputePass &)=delete
 
GpuComputePassoperator= (const GpuComputePass &)=delete
 
bool ok () const
 Returns false only when EnsureProgramsLoaded() failed (device error). More...
 
GpuComputePassUBO (std::uint32_t binding, std::uintptr_t buf)
 
GpuComputePassUBORange (std::uint32_t binding, std::uintptr_t buf, std::size_t offset, std::size_t size)
 
GpuComputePassSSBO (std::uint32_t binding, std::uintptr_t buf)
 
GpuComputePassImage (std::uint32_t binding, std::uintptr_t tex, std::uint32_t w, std::uint32_t h, ImageFormat fmt)
 
GpuComputePassSampler (std::uint32_t unit, std::uintptr_t tex, std::uint32_t w, std::uint32_t h)
 
void Dispatch (std::uint32_t gx, std::uint32_t gy, std::uint32_t gz)
 
void DispatchIndirect (std::uintptr_t buf, std::size_t byte_offset)
 

Detailed Description

RAII dispatch helper. Ctor: UseProgram + PushDebugGroup. Builder methods bind resources (return *this for chaining). Dispatch() / DispatchIndirect() fires the GPU work. Dtor: PopDebugGroup (if programs loaded successfully).

If EnsureProgramsLoaded() fails, ok() returns false. All builder methods and dispatch calls become no-ops — caller does NOT need to test ok() unless it wants to short-circuit further work for the whole pass sequence.

Constructor & Destructor Documentation

◆ GpuComputePass() [1/2]

open3d::visualization::rendering::GpuComputePass::GpuComputePass ( GaussianSplatGpuContext ctx,
ComputeProgramId  pid,
const char *  label = nullptr 
)
inline

◆ ~GpuComputePass()

open3d::visualization::rendering::GpuComputePass::~GpuComputePass ( )
inline

◆ GpuComputePass() [2/2]

open3d::visualization::rendering::GpuComputePass::GpuComputePass ( const GpuComputePass )
delete

Member Function Documentation

◆ Dispatch()

void open3d::visualization::rendering::GpuComputePass::Dispatch ( std::uint32_t  gx,
std::uint32_t  gy,
std::uint32_t  gz 
)
inline

◆ DispatchIndirect()

void open3d::visualization::rendering::GpuComputePass::DispatchIndirect ( std::uintptr_t  buf,
std::size_t  byte_offset 
)
inline

◆ Image()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::Image ( std::uint32_t  binding,
std::uintptr_t  tex,
std::uint32_t  w,
std::uint32_t  h,
ImageFormat  fmt 
)
inline

◆ ok()

bool open3d::visualization::rendering::GpuComputePass::ok ( ) const
inline

Returns false only when EnsureProgramsLoaded() failed (device error).

◆ operator=()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::operator= ( const GpuComputePass )
delete

◆ Sampler()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::Sampler ( std::uint32_t  unit,
std::uintptr_t  tex,
std::uint32_t  w,
std::uint32_t  h 
)
inline

◆ SSBO()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::SSBO ( std::uint32_t  binding,
std::uintptr_t  buf 
)
inline

◆ UBO()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::UBO ( std::uint32_t  binding,
std::uintptr_t  buf 
)
inline

◆ UBORange()

GpuComputePass& open3d::visualization::rendering::GpuComputePass::UBORange ( std::uint32_t  binding,
std::uintptr_t  buf,
std::size_t  offset,
std::size_t  size 
)
inline

The documentation for this class was generated from the following file: