# Interface VulkanDescriptorSetLayoutBindingType

All Known Implementing Classes:
  `VulkanDescriptorSetLayoutBinding`

@Immutable public interface VulkanDescriptorSetLayoutBindingType
Structure specifying a descriptor set layout binding.

See Also:
  - "VkDescriptorSetLayoutBinding"

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `binding()`
  `int`
  `descriptorCount()`
  `VulkanDescriptorType`
  `descriptorType()`
  `List<VulkanSamplerType>`
  `immutableSamplers()`
  `Set<VulkanShaderStageFlag>`
  `stageFlags()`

- ## Method Details

  - ### binding

    @Parameter int binding()
    Returns:
      The binding number of this entry and corresponds to a resource of the same binding number in the shader stages

  - ### descriptorType

    @Parameter VulkanDescriptorType descriptorType()
    Returns:
      A VulkanDescriptorType specifying which type of resource descriptors are used for this binding.

  - ### descriptorCount

    @Parameter int descriptorCount()
    Returns:
      The number of descriptors contained in the binding, accessed in a shader as an array , except if descriptorType is VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT in which case descriptorCount is the size in bytes of the inline uniform block . If descriptorCount is zero this binding entry is reserved and the resource must not be accessed from any stage via this binding within any pipeline using the set layout.

  - ### stageFlags

    @Parameter Set<VulkanShaderStageFlag> stageFlags()
    Returns:
      A set of VulkanShaderStageFlag values specifying which pipeline shader stages can access a resource for this binding. VK_SHADER_STAGE_ALL is a shorthand specifying that all defined shader stages, including any additional stages defined by extensions, can access the resource.

  - ### immutableSamplers

    @Parameter List<VulkanSamplerType> immutableSamplers()
    Returns:
      A set of samplers to be initialized