mesa/src/amd/vulkan/radv_pipeline_layout.h
Samuel Pitoiset 067b05d5b9 radv: remove radv_pipeline_layout::push_constant_size
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37769>
2025-10-23 07:25:41 +00:00

43 lines
1.2 KiB
C

/*
* Copyright © 2016 Bas Nieuwenhuizen
*
* SPDX-License-Identifier: MIT
*/
#ifndef RADV_PIPELINE_LAYOUT_H
#define RADV_PIPELINE_LAYOUT_H
#include "util/mesa-blake3.h"
#include "radv_constants.h"
#include "vk_object.h"
struct radv_device;
struct radv_pipeline_layout {
struct vk_object_base base;
struct {
struct radv_descriptor_set_layout *layout;
uint32_t dynamic_offset_start;
} set[MAX_SETS];
uint32_t num_sets;
uint32_t dynamic_offset_count;
uint16_t dynamic_shader_stages;
bool independent_sets;
blake3_hash hash;
};
VK_DEFINE_NONDISP_HANDLE_CASTS(radv_pipeline_layout, base, VkPipelineLayout, VK_OBJECT_TYPE_PIPELINE_LAYOUT)
void radv_pipeline_layout_init(struct radv_device *device, struct radv_pipeline_layout *layout, bool independent_sets);
void radv_pipeline_layout_finish(struct radv_device *device, struct radv_pipeline_layout *layout);
void radv_pipeline_layout_add_set(struct radv_pipeline_layout *layout, uint32_t set_idx,
struct radv_descriptor_set_layout *set_layout);
void radv_pipeline_layout_hash(struct radv_pipeline_layout *layout);
#endif /* RADV_PIPELINE_LAYOUT_H */