Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::geode::RuntimeComputeProgram Struct Reference

A compute pipeline built from a precompiled shader artifact, with the objects it is layered on. More...

#include "donner/svg/renderer/geode/GeodeFilterEngine.h"

Public Attributes

gpu::ShaderModule shaderModule
 Module holding the compute entry point.
gpu::BindGroupLayout bindGroupLayout
 Layout of group 0.
gpu::PipelineLayout pipelineLayout
 Pipeline layout over that one group.
gpu::ComputePipeline pipeline
 The pipeline itself.
gpu::WorkgroupSize workgroupSize
 Dispatch dimensions declared by the entry point.
std::array< uint32_t, 3 > inputOutputParameterBindings = {0, 1, 2}
 Reflected input texture, output texture, and parameter resource bindings.
std::optional< uint32_t > transferTableBinding
 Optional reflected lookup-table binding.
std::array< uint32_t, 4 > twoInputBindings = {0, 1, 2, 3}
 Reflected source, backdrop, output and parameter bindings of a two-input program.

Detailed Description

A compute pipeline built from a precompiled shader artifact, with the objects it is layered on.

Every handle is null when any step of the build failed, which is what a dispatch checks before recording: a pipeline that was never created must not be dispatched with. Binding slots come from the artifact's reflected resource names, never from a host-side table.

Member Data Documentation

◆ bindGroupLayout

gpu::BindGroupLayout donner::geode::RuntimeComputeProgram::bindGroupLayout

Layout of group 0.

◆ inputOutputParameterBindings

std::array<uint32_t, 3> donner::geode::RuntimeComputeProgram::inputOutputParameterBindings = {0, 1, 2}

Reflected input texture, output texture, and parameter resource bindings.

◆ pipeline

gpu::ComputePipeline donner::geode::RuntimeComputeProgram::pipeline

The pipeline itself.

◆ pipelineLayout

gpu::PipelineLayout donner::geode::RuntimeComputeProgram::pipelineLayout

Pipeline layout over that one group.

◆ shaderModule

gpu::ShaderModule donner::geode::RuntimeComputeProgram::shaderModule

Module holding the compute entry point.

◆ transferTableBinding

std::optional<uint32_t> donner::geode::RuntimeComputeProgram::transferTableBinding

Optional reflected lookup-table binding.

◆ twoInputBindings

std::array<uint32_t, 4> donner::geode::RuntimeComputeProgram::twoInputBindings = {0, 1, 2, 3}

Reflected source, backdrop, output and parameter bindings of a two-input program.

◆ workgroupSize

gpu::WorkgroupSize donner::geode::RuntimeComputeProgram::workgroupSize

Dispatch dimensions declared by the entry point.


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