Blender V5.0
vk_reset_query_pool_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
8
9#pragma once
10
11#include "vk_node_info.hh"
12
14
19 VkQueryPool vk_query_pool;
20 uint32_t first_query;
21 uint32_t query_count;
22};
23
31class VKResetQueryPoolNode : public VKNodeInfo<VKNodeType::RESET_QUERY_POOL,
32 VKResetQueryPoolData,
33 VKResetQueryPoolData,
34 VK_PIPELINE_STAGE_NONE,
35 VKResourceType::NONE> {
36 public:
44 template<typename Node, typename Storage>
45 void set_node_data(Node &node, Storage & /*storage*/, const CreateInfo &create_info)
46 {
47 node.reset_query_pool = create_info;
48 }
49
53 void build_links(VKResourceStateTracker & /*resources*/,
54 VKRenderGraphNodeLinks & /*node_links*/,
55 const CreateInfo & /*create_info*/) override
56 {
57 }
58
63 Data &data,
64 VKBoundPipelines & /*r_bound_pipelines*/) override
65 {
66 command_buffer.reset_query_pool(data.vk_query_pool, data.first_query, data.query_count);
67 }
68};
69} // namespace blender::gpu::render_graph
BMesh const char void * data
virtual void reset_query_pool(VkQueryPool vk_query_pool, uint32_t first_query, uint32_t query_count)=0
void build_links(VKResourceStateTracker &, VKRenderGraphNodeLinks &, const CreateInfo &) override
void build_commands(VKCommandBufferInterface &command_buffer, Data &data, VKBoundPipelines &) override
void set_node_data(Node &node, Storage &, const CreateInfo &create_info)