Class DescriptorLayoutBuilder

Class Documentation

class DescriptorLayoutBuilder

Builder for Vulkan descriptor set layouts.

Fluent API for constructing vk::DescriptorSetLayout from bindings.

Public Functions

DescriptorLayoutBuilder &add_binding(size_t binding, vk::DescriptorType type, vk::ShaderStageFlags shader_stages, size_t count = 1)

Adds descriptor binding.

Parameters:
  • binding – Binding index

  • type – Descriptor type

  • shader_stagesShader stages accessing binding

  • count – Array size (default 1)

Returns:

Builder reference for chaining

DescriptorLayoutBuilder &set_name(const StringId &layout_name)

Sets layout name for debugging.

Parameters:

layout_name – Debug name

Returns:

Builder reference for chaining

void clear()

Clears all bindings.

vk::raii::DescriptorSetLayout build(const vk::raii::Device &device)

Creates Vulkan descriptor set layout.

Parameters:

device – Vulkan device

Returns:

Descriptor set layout

Public Members

std::vector<vk::DescriptorSetLayoutBinding> layout_bindings
StringId name = INVALID_STRING_ID