Skip to content

KDGpu::VulkanComputePassCommandRecorder

Module: Vulkan

VulkanComputePassCommandRecorder.

#include <vulkan_compute_pass_command_recorder.h>

Inherits from KDGpu::ApiComputePassCommandRecorder

Public Functions

Name
VulkanComputePassCommandRecorder(VkCommandBuffer _commandBuffer, VulkanResourceManager * _vulkanResourceManager, const Handle< Device_t > & _deviceHandle)
virtual void setPipeline(const Handle< ComputePipeline_t > & pipeline)
virtual void setBindGroup(uint32_t group, const Handle< BindGroup_t > & bindGroup, const Handle< PipelineLayout_t > & pipelineLayout, const std::vector< uint32_t > & dynamicBufferOffsets)
virtual void dispatchCompute(const ComputeCommand & command)
virtual void dispatchCompute(const std::vector< ComputeCommand > & commands)
virtual void dispatchComputeIndirect(const ComputeCommandIndirect & command)
virtual void dispatchComputeIndirect(const std::vector< ComputeCommandIndirect > & commands)
virtual void pushConstant(const PushConstantRange & constantRange, const void * data)
virtual void end()

Public Attributes

Name
VkCommandBuffer commandBuffer
VulkanResourceManager * vulkanResourceManager
Handle< Device_t > deviceHandle
Handle< ComputePipeline_t > pipeline

Public Functions Documentation

function VulkanComputePassCommandRecorder

1
2
3
4
5
explicit VulkanComputePassCommandRecorder(
    VkCommandBuffer _commandBuffer,
    VulkanResourceManager * _vulkanResourceManager,
    const Handle< Device_t > & _deviceHandle
)

function setPipeline

1
2
3
virtual void setPipeline(
    const Handle< ComputePipeline_t > & pipeline
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::setPipeline

function setBindGroup

1
2
3
4
5
6
virtual void setBindGroup(
    uint32_t group,
    const Handle< BindGroup_t > & bindGroup,
    const Handle< PipelineLayout_t > & pipelineLayout,
    const std::vector< uint32_t > & dynamicBufferOffsets
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::setBindGroup

function dispatchCompute

1
2
3
virtual void dispatchCompute(
    const ComputeCommand & command
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::dispatchCompute

function dispatchCompute

1
2
3
virtual void dispatchCompute(
    const std::vector< ComputeCommand > & commands
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::dispatchCompute

function dispatchComputeIndirect

1
2
3
virtual void dispatchComputeIndirect(
    const ComputeCommandIndirect & command
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::dispatchComputeIndirect

function dispatchComputeIndirect

1
2
3
virtual void dispatchComputeIndirect(
    const std::vector< ComputeCommandIndirect > & commands
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::dispatchComputeIndirect

function pushConstant

1
2
3
4
virtual void pushConstant(
    const PushConstantRange & constantRange,
    const void * data
)

Reimplements: KDGpu::ApiComputePassCommandRecorder::pushConstant

function end

1
virtual void end()

Reimplements: KDGpu::ApiComputePassCommandRecorder::end

Public Attributes Documentation

variable commandBuffer

1
VkCommandBuffer commandBuffer { VK_NULL_HANDLE };

variable vulkanResourceManager

1
VulkanResourceManager * vulkanResourceManager { nullptr };

variable deviceHandle

1
Handle< Device_t > deviceHandle;

variable pipeline

1
Handle< ComputePipeline_t > pipeline;

Updated on 2024-08-28 at 00:05:06 +0000