Blender V4.3
blender::gpu::render_graph::VKDispatchIndirectNode Class Reference

#include <vk_dispatch_indirect_node.hh>

Inherits blender::gpu::render_graph::VKNodeInfo< VKNodeType::DISPATCH_INDIRECT, VKDispatchIndirectCreateInfo, VKDispatchIndirectData, VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT|VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER >.

Public Member Functions

void free_data (VKDispatchIndirectData &data)
 
void build_links (VKResourceStateTracker &resources, VKRenderGraphNodeLinks &node_links, const CreateInfo &create_info) override
 
void build_commands (VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &r_bound_pipelines) override
 
- Public Member Functions inherited from blender::NonCopyable
 NonCopyable (const NonCopyable &other)=delete
 
NonCopyableoperator= (const NonCopyable &other)=delete
 
 NonCopyable ()=default
 
 NonCopyable (NonCopyable &&other)=default
 
NonCopyableoperator= (NonCopyable &&other)=default
 

Static Public Member Functions

template<typename Node >
static void set_node_data (Node &node, const CreateInfo &create_info)
 
- Static Public Member Functions inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DISPATCH_INDIRECT, VKDispatchIndirectCreateInfo, VKDispatchIndirectData, VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT|VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER >
static void set_node_data (Node &node, const CreateInfo &create_info)
 

Additional Inherited Members

- Public Types inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DISPATCH_INDIRECT, VKDispatchIndirectCreateInfo, VKDispatchIndirectData, VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT|VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER >
using CreateInfo
 
using Data
 
- Static Public Attributes inherited from blender::gpu::render_graph::VKNodeInfo< VKNodeType::DISPATCH_INDIRECT, VKDispatchIndirectCreateInfo, VKDispatchIndirectData, VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT|VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VKResourceType::IMAGE|VKResourceType::BUFFER >
static constexpr VKNodeType node_type
 
static constexpr VkPipelineStageFlags pipeline_stage
 
static constexpr VKResourceType resource_usages
 

Detailed Description

Definition at line 38 of file vk_dispatch_indirect_node.hh.

Member Function Documentation

◆ build_commands()

◆ build_links()

◆ free_data()

void blender::gpu::render_graph::VKDispatchIndirectNode::free_data ( VKDispatchIndirectData & data)
inline

Free the pipeline data stored in the render graph node data.

Definition at line 62 of file vk_dispatch_indirect_node.hh.

References blender::gpu::render_graph::vk_pipeline_data_free().

◆ set_node_data()

template<typename Node >
static void blender::gpu::render_graph::VKDispatchIndirectNode::set_node_data ( Node & node,
const CreateInfo & create_info )
inlinestatic

Update the node data with the data inside create_info.

Has been implemented as a template to ensure all node specific data (VK*Data/VK*CreateInfo) types can be included in the same header file as the logic. The actual node data (VKRenderGraphNode includes all header files.)

Definition at line 52 of file vk_dispatch_indirect_node.hh.

References blender::gpu::render_graph::VKDispatchIndirectCreateInfo::dispatch_indirect_node, blender::gpu::render_graph::VKDispatchIndirectData::pipeline_data, and blender::gpu::render_graph::vk_pipeline_data_copy().


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