Blender
V4.3
source
blender
gpu
vulkan
render_graph
nodes
vk_begin_query_node.hh
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2024 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
9
#pragma once
10
11
#include "
vk_node_info.hh
"
12
13
namespace
blender::gpu::render_graph
{
14
18
struct
VKBeginQueryData
{
19
VkQueryPool
vk_query_pool
;
20
uint32_t
query_index
;
21
VkQueryControlFlags
vk_query_control_flags
;
22
};
23
31
class
VKBeginQueryNode
:
public
VKNodeInfo
<VKNodeType::BEGIN_QUERY,
32
VKBeginQueryData,
33
VKBeginQueryData,
34
VK_PIPELINE_STAGE_NONE,
35
VKResourceType::NONE> {
36
public
:
44
template
<
typename
Node>
void
set_node_data
(
Node
&node,
const
CreateInfo
&create_info)
45
{
46
node.begin_query = create_info;
47
}
48
52
void
build_links
(
VKResourceStateTracker
&
/*resources*/
,
53
VKRenderGraphNodeLinks
&
/*node_links*/
,
54
const
CreateInfo
&
/*create_info*/
)
override
55
{
56
}
57
61
void
build_commands
(
VKCommandBufferInterface
&command_buffer,
62
Data
&data,
63
VKBoundPipelines
&
/*r_bound_pipelines*/
)
override
64
{
65
command_buffer.
begin_query
(data.vk_query_pool, data.query_index, data.vk_query_control_flags);
66
}
67
};
68
}
// namespace blender::gpu::render_graph
blender::gpu::render_graph::VKBeginQueryNode
Definition
vk_begin_query_node.hh:35
blender::gpu::render_graph::VKBeginQueryNode::set_node_data
void set_node_data(Node &node, const CreateInfo &create_info)
Definition
vk_begin_query_node.hh:44
blender::gpu::render_graph::VKBeginQueryNode::build_commands
void build_commands(VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &) override
Definition
vk_begin_query_node.hh:61
blender::gpu::render_graph::VKBeginQueryNode::build_links
void build_links(VKResourceStateTracker &, VKRenderGraphNodeLinks &, const CreateInfo &) override
Definition
vk_begin_query_node.hh:52
blender::gpu::render_graph::VKCommandBufferInterface
Definition
vk_command_buffer_wrapper.hh:14
blender::gpu::render_graph::VKCommandBufferInterface::begin_query
virtual void begin_query(VkQueryPool vk_query_pool, uint32_t query_index, VkQueryControlFlags vk_query_control_flags)=0
blender::gpu::render_graph::VKNodeInfo
Definition
vk_node_info.hh:159
blender::gpu::render_graph::VKResourceStateTracker
Definition
vk_resource_state_tracker.hh:121
blender::gpu::render_graph
Definition
vk_begin_query_node.hh:13
uint32_t
unsigned int uint32_t
Definition
stdint.h:80
Node
Definition
graph/node.h:90
blender::gpu::render_graph::VKBeginQueryData
Definition
vk_begin_query_node.hh:18
blender::gpu::render_graph::VKBeginQueryData::query_index
uint32_t query_index
Definition
vk_begin_query_node.hh:20
blender::gpu::render_graph::VKBeginQueryData::vk_query_control_flags
VkQueryControlFlags vk_query_control_flags
Definition
vk_begin_query_node.hh:21
blender::gpu::render_graph::VKBeginQueryData::vk_query_pool
VkQueryPool vk_query_pool
Definition
vk_begin_query_node.hh:19
blender::gpu::render_graph::VKBoundPipelines
Definition
vk_pipeline_data.hh:74
blender::gpu::render_graph::VKRenderGraphNodeLinks
Definition
vk_render_graph_links.hh:68
vk_node_info.hh
Generated on Thu Feb 6 2025 07:36:39 for Blender by
doxygen
1.11.0