Record Class VkPhysicalDeviceDescriptorBufferPropertiesEXT

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkPhysicalDeviceDescriptorBufferPropertiesEXT
All Implemented Interfaces:
IPointer, IVkPhysicalDeviceDescriptorBufferPropertiesEXT

@ValueBasedCandidate @UnsafeConstructor public record VkPhysicalDeviceDescriptorBufferPropertiesEXT(@NotNull MemorySegment segment) extends Record implements IVkPhysicalDeviceDescriptorBufferPropertiesEXT

Represents a pointer to a VkPhysicalDeviceDescriptorBufferPropertiesEXT structure in native memory.

Structure

typedef struct VkPhysicalDeviceDescriptorBufferPropertiesEXT {
    VkStructureType sType;
    void* pNext; // optional
    VkBool32 combinedImageSamplerDescriptorSingleArray;
    VkBool32 bufferlessPushDescriptors;
    VkBool32 allowSamplerImageViewPostSubmitCreation;
    VkDeviceSize descriptorBufferOffsetAlignment;
    uint32_t maxDescriptorBufferBindings;
    uint32_t maxResourceDescriptorBufferBindings;
    uint32_t maxSamplerDescriptorBufferBindings;
    uint32_t maxEmbeddedImmutableSamplerBindings;
    uint32_t maxEmbeddedImmutableSamplers;
    size_t bufferCaptureReplayDescriptorDataSize;
    size_t imageCaptureReplayDescriptorDataSize;
    size_t imageViewCaptureReplayDescriptorDataSize;
    size_t samplerCaptureReplayDescriptorDataSize;
    size_t accelerationStructureCaptureReplayDescriptorDataSize;
    size_t samplerDescriptorSize;
    size_t combinedImageSamplerDescriptorSize;
    size_t sampledImageDescriptorSize;
    size_t storageImageDescriptorSize;
    size_t uniformTexelBufferDescriptorSize;
    size_t robustUniformTexelBufferDescriptorSize;
    size_t storageTexelBufferDescriptorSize;
    size_t robustStorageTexelBufferDescriptorSize;
    size_t uniformBufferDescriptorSize;
    size_t robustUniformBufferDescriptorSize;
    size_t storageBufferDescriptorSize;
    size_t robustStorageBufferDescriptorSize;
    size_t inputAttachmentDescriptorSize;
    size_t accelerationStructureDescriptorSize;
    VkDeviceSize maxSamplerDescriptorBufferRange;
    VkDeviceSize maxResourceDescriptorBufferRange;
    VkDeviceSize samplerDescriptorBufferAddressSpaceSize;
    VkDeviceSize resourceDescriptorBufferAddressSpaceSize;
    VkDeviceSize descriptorBufferAddressSpaceSize;
} VkPhysicalDeviceDescriptorBufferPropertiesEXT;

Auto initialization

This structure has the following members that can be automatically initialized:

  • sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT

The allocate (allocate(Arena), allocate(Arena, long)) functions will automatically initialize these fields. Also, you may call autoInit() to initialize these fields manually for non-allocated instances.

Contracts

The property segment() should always be not-null (segment != NULL && !segment.equals(MemorySegment.NULL)), and properly aligned to LAYOUT.byteAlignment() bytes. To represent null pointer, you may use a Java null instead. See the documentation of IPointer.segment() for more details.

The constructor of this class is marked as UnsafeConstructor, because it does not perform any runtime check. The constructor can be useful for automatic code generators.

See Also:
  • Field Details

    • LAYOUT

      public static final StructLayout LAYOUT
    • BYTES

      public static final long BYTES
    • PATH$sType

      public static final MemoryLayout.PathElement PATH$sType
    • PATH$pNext

      public static final MemoryLayout.PathElement PATH$pNext
    • PATH$combinedImageSamplerDescriptorSingleArray

      public static final MemoryLayout.PathElement PATH$combinedImageSamplerDescriptorSingleArray
    • PATH$bufferlessPushDescriptors

      public static final MemoryLayout.PathElement PATH$bufferlessPushDescriptors
    • PATH$allowSamplerImageViewPostSubmitCreation

      public static final MemoryLayout.PathElement PATH$allowSamplerImageViewPostSubmitCreation
    • PATH$descriptorBufferOffsetAlignment

      public static final MemoryLayout.PathElement PATH$descriptorBufferOffsetAlignment
    • PATH$maxDescriptorBufferBindings

      public static final MemoryLayout.PathElement PATH$maxDescriptorBufferBindings
    • PATH$maxResourceDescriptorBufferBindings

      public static final MemoryLayout.PathElement PATH$maxResourceDescriptorBufferBindings
    • PATH$maxSamplerDescriptorBufferBindings

      public static final MemoryLayout.PathElement PATH$maxSamplerDescriptorBufferBindings
    • PATH$maxEmbeddedImmutableSamplerBindings

      public static final MemoryLayout.PathElement PATH$maxEmbeddedImmutableSamplerBindings
    • PATH$maxEmbeddedImmutableSamplers

      public static final MemoryLayout.PathElement PATH$maxEmbeddedImmutableSamplers
    • PATH$bufferCaptureReplayDescriptorDataSize

      public static final MemoryLayout.PathElement PATH$bufferCaptureReplayDescriptorDataSize
    • PATH$imageCaptureReplayDescriptorDataSize

      public static final MemoryLayout.PathElement PATH$imageCaptureReplayDescriptorDataSize
    • PATH$imageViewCaptureReplayDescriptorDataSize

      public static final MemoryLayout.PathElement PATH$imageViewCaptureReplayDescriptorDataSize
    • PATH$samplerCaptureReplayDescriptorDataSize

      public static final MemoryLayout.PathElement PATH$samplerCaptureReplayDescriptorDataSize
    • PATH$accelerationStructureCaptureReplayDescriptorDataSize

      public static final MemoryLayout.PathElement PATH$accelerationStructureCaptureReplayDescriptorDataSize
    • PATH$samplerDescriptorSize

      public static final MemoryLayout.PathElement PATH$samplerDescriptorSize
    • PATH$combinedImageSamplerDescriptorSize

      public static final MemoryLayout.PathElement PATH$combinedImageSamplerDescriptorSize
    • PATH$sampledImageDescriptorSize

      public static final MemoryLayout.PathElement PATH$sampledImageDescriptorSize
    • PATH$storageImageDescriptorSize

      public static final MemoryLayout.PathElement PATH$storageImageDescriptorSize
    • PATH$uniformTexelBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$uniformTexelBufferDescriptorSize
    • PATH$robustUniformTexelBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$robustUniformTexelBufferDescriptorSize
    • PATH$storageTexelBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$storageTexelBufferDescriptorSize
    • PATH$robustStorageTexelBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$robustStorageTexelBufferDescriptorSize
    • PATH$uniformBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$uniformBufferDescriptorSize
    • PATH$robustUniformBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$robustUniformBufferDescriptorSize
    • PATH$storageBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$storageBufferDescriptorSize
    • PATH$robustStorageBufferDescriptorSize

      public static final MemoryLayout.PathElement PATH$robustStorageBufferDescriptorSize
    • PATH$inputAttachmentDescriptorSize

      public static final MemoryLayout.PathElement PATH$inputAttachmentDescriptorSize
    • PATH$accelerationStructureDescriptorSize

      public static final MemoryLayout.PathElement PATH$accelerationStructureDescriptorSize
    • PATH$maxSamplerDescriptorBufferRange

      public static final MemoryLayout.PathElement PATH$maxSamplerDescriptorBufferRange
    • PATH$maxResourceDescriptorBufferRange

      public static final MemoryLayout.PathElement PATH$maxResourceDescriptorBufferRange
    • PATH$samplerDescriptorBufferAddressSpaceSize

      public static final MemoryLayout.PathElement PATH$samplerDescriptorBufferAddressSpaceSize
    • PATH$resourceDescriptorBufferAddressSpaceSize

      public static final MemoryLayout.PathElement PATH$resourceDescriptorBufferAddressSpaceSize
    • PATH$descriptorBufferAddressSpaceSize

      public static final MemoryLayout.PathElement PATH$descriptorBufferAddressSpaceSize
    • LAYOUT$sType

      public static final ValueLayout.OfInt LAYOUT$sType
    • LAYOUT$pNext

      public static final AddressLayout LAYOUT$pNext
    • LAYOUT$combinedImageSamplerDescriptorSingleArray

      public static final ValueLayout.OfInt LAYOUT$combinedImageSamplerDescriptorSingleArray
    • LAYOUT$bufferlessPushDescriptors

      public static final ValueLayout.OfInt LAYOUT$bufferlessPushDescriptors
    • LAYOUT$allowSamplerImageViewPostSubmitCreation

      public static final ValueLayout.OfInt LAYOUT$allowSamplerImageViewPostSubmitCreation
    • LAYOUT$descriptorBufferOffsetAlignment

      public static final ValueLayout.OfLong LAYOUT$descriptorBufferOffsetAlignment
    • LAYOUT$maxDescriptorBufferBindings

      public static final ValueLayout.OfInt LAYOUT$maxDescriptorBufferBindings
    • LAYOUT$maxResourceDescriptorBufferBindings

      public static final ValueLayout.OfInt LAYOUT$maxResourceDescriptorBufferBindings
    • LAYOUT$maxSamplerDescriptorBufferBindings

      public static final ValueLayout.OfInt LAYOUT$maxSamplerDescriptorBufferBindings
    • LAYOUT$maxEmbeddedImmutableSamplerBindings

      public static final ValueLayout.OfInt LAYOUT$maxEmbeddedImmutableSamplerBindings
    • LAYOUT$maxEmbeddedImmutableSamplers

      public static final ValueLayout.OfInt LAYOUT$maxEmbeddedImmutableSamplers
    • LAYOUT$maxSamplerDescriptorBufferRange

      public static final ValueLayout.OfLong LAYOUT$maxSamplerDescriptorBufferRange
    • LAYOUT$maxResourceDescriptorBufferRange

      public static final ValueLayout.OfLong LAYOUT$maxResourceDescriptorBufferRange
    • LAYOUT$samplerDescriptorBufferAddressSpaceSize

      public static final ValueLayout.OfLong LAYOUT$samplerDescriptorBufferAddressSpaceSize
    • LAYOUT$resourceDescriptorBufferAddressSpaceSize

      public static final ValueLayout.OfLong LAYOUT$resourceDescriptorBufferAddressSpaceSize
    • LAYOUT$descriptorBufferAddressSpaceSize

      public static final ValueLayout.OfLong LAYOUT$descriptorBufferAddressSpaceSize
    • SIZE$sType

      public static final long SIZE$sType
    • SIZE$pNext

      public static final long SIZE$pNext
    • SIZE$combinedImageSamplerDescriptorSingleArray

      public static final long SIZE$combinedImageSamplerDescriptorSingleArray
    • SIZE$bufferlessPushDescriptors

      public static final long SIZE$bufferlessPushDescriptors
    • SIZE$allowSamplerImageViewPostSubmitCreation

      public static final long SIZE$allowSamplerImageViewPostSubmitCreation
    • SIZE$descriptorBufferOffsetAlignment

      public static final long SIZE$descriptorBufferOffsetAlignment
    • SIZE$maxDescriptorBufferBindings

      public static final long SIZE$maxDescriptorBufferBindings
    • SIZE$maxResourceDescriptorBufferBindings

      public static final long SIZE$maxResourceDescriptorBufferBindings
    • SIZE$maxSamplerDescriptorBufferBindings

      public static final long SIZE$maxSamplerDescriptorBufferBindings
    • SIZE$maxEmbeddedImmutableSamplerBindings

      public static final long SIZE$maxEmbeddedImmutableSamplerBindings
    • SIZE$maxEmbeddedImmutableSamplers

      public static final long SIZE$maxEmbeddedImmutableSamplers
    • SIZE$bufferCaptureReplayDescriptorDataSize

      public static final long SIZE$bufferCaptureReplayDescriptorDataSize
    • SIZE$imageCaptureReplayDescriptorDataSize

      public static final long SIZE$imageCaptureReplayDescriptorDataSize
    • SIZE$imageViewCaptureReplayDescriptorDataSize

      public static final long SIZE$imageViewCaptureReplayDescriptorDataSize
    • SIZE$samplerCaptureReplayDescriptorDataSize

      public static final long SIZE$samplerCaptureReplayDescriptorDataSize
    • SIZE$accelerationStructureCaptureReplayDescriptorDataSize

      public static final long SIZE$accelerationStructureCaptureReplayDescriptorDataSize
    • SIZE$samplerDescriptorSize

      public static final long SIZE$samplerDescriptorSize
    • SIZE$combinedImageSamplerDescriptorSize

      public static final long SIZE$combinedImageSamplerDescriptorSize
    • SIZE$sampledImageDescriptorSize

      public static final long SIZE$sampledImageDescriptorSize
    • SIZE$storageImageDescriptorSize

      public static final long SIZE$storageImageDescriptorSize
    • SIZE$uniformTexelBufferDescriptorSize

      public static final long SIZE$uniformTexelBufferDescriptorSize
    • SIZE$robustUniformTexelBufferDescriptorSize

      public static final long SIZE$robustUniformTexelBufferDescriptorSize
    • SIZE$storageTexelBufferDescriptorSize

      public static final long SIZE$storageTexelBufferDescriptorSize
    • SIZE$robustStorageTexelBufferDescriptorSize

      public static final long SIZE$robustStorageTexelBufferDescriptorSize
    • SIZE$uniformBufferDescriptorSize

      public static final long SIZE$uniformBufferDescriptorSize
    • SIZE$robustUniformBufferDescriptorSize

      public static final long SIZE$robustUniformBufferDescriptorSize
    • SIZE$storageBufferDescriptorSize

      public static final long SIZE$storageBufferDescriptorSize
    • SIZE$robustStorageBufferDescriptorSize

      public static final long SIZE$robustStorageBufferDescriptorSize
    • SIZE$inputAttachmentDescriptorSize

      public static final long SIZE$inputAttachmentDescriptorSize
    • SIZE$accelerationStructureDescriptorSize

      public static final long SIZE$accelerationStructureDescriptorSize
    • SIZE$maxSamplerDescriptorBufferRange

      public static final long SIZE$maxSamplerDescriptorBufferRange
    • SIZE$maxResourceDescriptorBufferRange

      public static final long SIZE$maxResourceDescriptorBufferRange
    • SIZE$samplerDescriptorBufferAddressSpaceSize

      public static final long SIZE$samplerDescriptorBufferAddressSpaceSize
    • SIZE$resourceDescriptorBufferAddressSpaceSize

      public static final long SIZE$resourceDescriptorBufferAddressSpaceSize
    • SIZE$descriptorBufferAddressSpaceSize

      public static final long SIZE$descriptorBufferAddressSpaceSize
    • OFFSET$sType

      public static final long OFFSET$sType
    • OFFSET$pNext

      public static final long OFFSET$pNext
    • OFFSET$combinedImageSamplerDescriptorSingleArray

      public static final long OFFSET$combinedImageSamplerDescriptorSingleArray
    • OFFSET$bufferlessPushDescriptors

      public static final long OFFSET$bufferlessPushDescriptors
    • OFFSET$allowSamplerImageViewPostSubmitCreation

      public static final long OFFSET$allowSamplerImageViewPostSubmitCreation
    • OFFSET$descriptorBufferOffsetAlignment

      public static final long OFFSET$descriptorBufferOffsetAlignment
    • OFFSET$maxDescriptorBufferBindings

      public static final long OFFSET$maxDescriptorBufferBindings
    • OFFSET$maxResourceDescriptorBufferBindings

      public static final long OFFSET$maxResourceDescriptorBufferBindings
    • OFFSET$maxSamplerDescriptorBufferBindings

      public static final long OFFSET$maxSamplerDescriptorBufferBindings
    • OFFSET$maxEmbeddedImmutableSamplerBindings

      public static final long OFFSET$maxEmbeddedImmutableSamplerBindings
    • OFFSET$maxEmbeddedImmutableSamplers

      public static final long OFFSET$maxEmbeddedImmutableSamplers
    • OFFSET$bufferCaptureReplayDescriptorDataSize

      public static final long OFFSET$bufferCaptureReplayDescriptorDataSize
    • OFFSET$imageCaptureReplayDescriptorDataSize

      public static final long OFFSET$imageCaptureReplayDescriptorDataSize
    • OFFSET$imageViewCaptureReplayDescriptorDataSize

      public static final long OFFSET$imageViewCaptureReplayDescriptorDataSize
    • OFFSET$samplerCaptureReplayDescriptorDataSize

      public static final long OFFSET$samplerCaptureReplayDescriptorDataSize
    • OFFSET$accelerationStructureCaptureReplayDescriptorDataSize

      public static final long OFFSET$accelerationStructureCaptureReplayDescriptorDataSize
    • OFFSET$samplerDescriptorSize

      public static final long OFFSET$samplerDescriptorSize
    • OFFSET$combinedImageSamplerDescriptorSize

      public static final long OFFSET$combinedImageSamplerDescriptorSize
    • OFFSET$sampledImageDescriptorSize

      public static final long OFFSET$sampledImageDescriptorSize
    • OFFSET$storageImageDescriptorSize

      public static final long OFFSET$storageImageDescriptorSize
    • OFFSET$uniformTexelBufferDescriptorSize

      public static final long OFFSET$uniformTexelBufferDescriptorSize
    • OFFSET$robustUniformTexelBufferDescriptorSize

      public static final long OFFSET$robustUniformTexelBufferDescriptorSize
    • OFFSET$storageTexelBufferDescriptorSize

      public static final long OFFSET$storageTexelBufferDescriptorSize
    • OFFSET$robustStorageTexelBufferDescriptorSize

      public static final long OFFSET$robustStorageTexelBufferDescriptorSize
    • OFFSET$uniformBufferDescriptorSize

      public static final long OFFSET$uniformBufferDescriptorSize
    • OFFSET$robustUniformBufferDescriptorSize

      public static final long OFFSET$robustUniformBufferDescriptorSize
    • OFFSET$storageBufferDescriptorSize

      public static final long OFFSET$storageBufferDescriptorSize
    • OFFSET$robustStorageBufferDescriptorSize

      public static final long OFFSET$robustStorageBufferDescriptorSize
    • OFFSET$inputAttachmentDescriptorSize

      public static final long OFFSET$inputAttachmentDescriptorSize
    • OFFSET$accelerationStructureDescriptorSize

      public static final long OFFSET$accelerationStructureDescriptorSize
    • OFFSET$maxSamplerDescriptorBufferRange

      public static final long OFFSET$maxSamplerDescriptorBufferRange
    • OFFSET$maxResourceDescriptorBufferRange

      public static final long OFFSET$maxResourceDescriptorBufferRange
    • OFFSET$samplerDescriptorBufferAddressSpaceSize

      public static final long OFFSET$samplerDescriptorBufferAddressSpaceSize
    • OFFSET$resourceDescriptorBufferAddressSpaceSize

      public static final long OFFSET$resourceDescriptorBufferAddressSpaceSize
    • OFFSET$descriptorBufferAddressSpaceSize

      public static final long OFFSET$descriptorBufferAddressSpaceSize
  • Constructor Details

    • VkPhysicalDeviceDescriptorBufferPropertiesEXT

      public VkPhysicalDeviceDescriptorBufferPropertiesEXT(@NotNull @NotNull MemorySegment segment)
      Creates an instance of a VkPhysicalDeviceDescriptorBufferPropertiesEXT record class.
      Parameters:
      segment - the value for the segment record component
  • Method Details