#include "state_tracker/pipeline_layout_state.h"
#include "state_tracker/state_tracker.h"
#include "state_tracker/descriptor_sets.h"
static PipelineLayoutSetLayoutsDict pipeline_layout_set_layouts_dict;
static PipelineLayoutCompatDict pipeline_layout_compat_dict;
static PushConstantRangesDict push_constant_ranges_dict;
size_t PipelineLayoutCompatDef::hash() const { … }
bool PipelineLayoutCompatDef::operator==(const PipelineLayoutCompatDef &other) const { … }
std::string PipelineLayoutCompatDef::DescribeDifference(const PipelineLayoutCompatDef &other) const { … }
static PipelineLayoutCompatId GetCanonicalId(const uint32_t set_index, const PushConstantRangesId &pcr_id,
const PipelineLayoutSetLayoutsId &set_layouts_id) { … }
struct PushConstantRangeCompare { … };
PushConstantRangesId GetCanonicalId(uint32_t pushConstantRangeCount, const VkPushConstantRange *pPushConstantRanges) { … }
static PushConstantRangesId GetPushConstantRangesFromLayouts(const vvl::span<const vvl::PipelineLayout *const> &layouts) { … }
std::vector<PipelineLayoutCompatId> GetCompatForSet(const std::vector<std::shared_ptr<vvl::DescriptorSetLayout const>> &set_layouts,
const PushConstantRangesId &push_constant_ranges) { … }
VkPipelineLayoutCreateFlags GetCreateFlags(const vvl::span<const vvl::PipelineLayout *const> &layouts) { … }
namespace vvl {
static PipelineLayout::SetLayoutVector GetSetLayouts(ValidationStateTracker &dev_data,
const VkPipelineLayoutCreateInfo *pCreateInfo) { … }
static PipelineLayout::SetLayoutVector GetSetLayouts(const vvl::span<const PipelineLayout *const> &layouts) { … }
PipelineLayout::PipelineLayout(ValidationStateTracker &dev_data, VkPipelineLayout handle,
const VkPipelineLayoutCreateInfo *pCreateInfo)
: … { … }
PipelineLayout::PipelineLayout(const vvl::span<const PipelineLayout *const> &layouts)
: … { … }
}