Record Class VkPhysicalDeviceVulkan13Features

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkPhysicalDeviceVulkan13Features
All Implemented Interfaces:
IPointer, IVkPhysicalDeviceVulkan13Features

@ValueBasedCandidate @UnsafeConstructor public record VkPhysicalDeviceVulkan13Features(@NotNull MemorySegment segment) extends Record implements IVkPhysicalDeviceVulkan13Features

Represents a pointer to a VkPhysicalDeviceVulkan13Features structure in native memory.

Structure

typedef struct VkPhysicalDeviceVulkan13Features {
    VkStructureType sType;
    void* pNext; // optional
    VkBool32 robustImageAccess;
    VkBool32 inlineUniformBlock;
    VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
    VkBool32 pipelineCreationCacheControl;
    VkBool32 privateData;
    VkBool32 shaderDemoteToHelperInvocation;
    VkBool32 shaderTerminateInvocation;
    VkBool32 subgroupSizeControl;
    VkBool32 computeFullSubgroups;
    VkBool32 synchronization2;
    VkBool32 textureCompressionASTC_HDR;
    VkBool32 shaderZeroInitializeWorkgroupMemory;
    VkBool32 dynamicRendering;
    VkBool32 shaderIntegerDotProduct;
    VkBool32 maintenance4;
} VkPhysicalDeviceVulkan13Features;

Auto initialization

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

  • sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES

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$robustImageAccess

      public static final MemoryLayout.PathElement PATH$robustImageAccess
    • PATH$inlineUniformBlock

      public static final MemoryLayout.PathElement PATH$inlineUniformBlock
    • PATH$descriptorBindingInlineUniformBlockUpdateAfterBind

      public static final MemoryLayout.PathElement PATH$descriptorBindingInlineUniformBlockUpdateAfterBind
    • PATH$pipelineCreationCacheControl

      public static final MemoryLayout.PathElement PATH$pipelineCreationCacheControl
    • PATH$privateData

      public static final MemoryLayout.PathElement PATH$privateData
    • PATH$shaderDemoteToHelperInvocation

      public static final MemoryLayout.PathElement PATH$shaderDemoteToHelperInvocation
    • PATH$shaderTerminateInvocation

      public static final MemoryLayout.PathElement PATH$shaderTerminateInvocation
    • PATH$subgroupSizeControl

      public static final MemoryLayout.PathElement PATH$subgroupSizeControl
    • PATH$computeFullSubgroups

      public static final MemoryLayout.PathElement PATH$computeFullSubgroups
    • PATH$synchronization2

      public static final MemoryLayout.PathElement PATH$synchronization2
    • PATH$textureCompressionASTC_HDR

      public static final MemoryLayout.PathElement PATH$textureCompressionASTC_HDR
    • PATH$shaderZeroInitializeWorkgroupMemory

      public static final MemoryLayout.PathElement PATH$shaderZeroInitializeWorkgroupMemory
    • PATH$dynamicRendering

      public static final MemoryLayout.PathElement PATH$dynamicRendering
    • PATH$shaderIntegerDotProduct

      public static final MemoryLayout.PathElement PATH$shaderIntegerDotProduct
    • PATH$maintenance4

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

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

      public static final AddressLayout LAYOUT$pNext
    • LAYOUT$robustImageAccess

      public static final ValueLayout.OfInt LAYOUT$robustImageAccess
    • LAYOUT$inlineUniformBlock

      public static final ValueLayout.OfInt LAYOUT$inlineUniformBlock
    • LAYOUT$descriptorBindingInlineUniformBlockUpdateAfterBind

      public static final ValueLayout.OfInt LAYOUT$descriptorBindingInlineUniformBlockUpdateAfterBind
    • LAYOUT$pipelineCreationCacheControl

      public static final ValueLayout.OfInt LAYOUT$pipelineCreationCacheControl
    • LAYOUT$privateData

      public static final ValueLayout.OfInt LAYOUT$privateData
    • LAYOUT$shaderDemoteToHelperInvocation

      public static final ValueLayout.OfInt LAYOUT$shaderDemoteToHelperInvocation
    • LAYOUT$shaderTerminateInvocation

      public static final ValueLayout.OfInt LAYOUT$shaderTerminateInvocation
    • LAYOUT$subgroupSizeControl

      public static final ValueLayout.OfInt LAYOUT$subgroupSizeControl
    • LAYOUT$computeFullSubgroups

      public static final ValueLayout.OfInt LAYOUT$computeFullSubgroups
    • LAYOUT$synchronization2

      public static final ValueLayout.OfInt LAYOUT$synchronization2
    • LAYOUT$textureCompressionASTC_HDR

      public static final ValueLayout.OfInt LAYOUT$textureCompressionASTC_HDR
    • LAYOUT$shaderZeroInitializeWorkgroupMemory

      public static final ValueLayout.OfInt LAYOUT$shaderZeroInitializeWorkgroupMemory
    • LAYOUT$dynamicRendering

      public static final ValueLayout.OfInt LAYOUT$dynamicRendering
    • LAYOUT$shaderIntegerDotProduct

      public static final ValueLayout.OfInt LAYOUT$shaderIntegerDotProduct
    • LAYOUT$maintenance4

      public static final ValueLayout.OfInt LAYOUT$maintenance4
    • SIZE$sType

      public static final long SIZE$sType
    • SIZE$pNext

      public static final long SIZE$pNext
    • SIZE$robustImageAccess

      public static final long SIZE$robustImageAccess
    • SIZE$inlineUniformBlock

      public static final long SIZE$inlineUniformBlock
    • SIZE$descriptorBindingInlineUniformBlockUpdateAfterBind

      public static final long SIZE$descriptorBindingInlineUniformBlockUpdateAfterBind
    • SIZE$pipelineCreationCacheControl

      public static final long SIZE$pipelineCreationCacheControl
    • SIZE$privateData

      public static final long SIZE$privateData
    • SIZE$shaderDemoteToHelperInvocation

      public static final long SIZE$shaderDemoteToHelperInvocation
    • SIZE$shaderTerminateInvocation

      public static final long SIZE$shaderTerminateInvocation
    • SIZE$subgroupSizeControl

      public static final long SIZE$subgroupSizeControl
    • SIZE$computeFullSubgroups

      public static final long SIZE$computeFullSubgroups
    • SIZE$synchronization2

      public static final long SIZE$synchronization2
    • SIZE$textureCompressionASTC_HDR

      public static final long SIZE$textureCompressionASTC_HDR
    • SIZE$shaderZeroInitializeWorkgroupMemory

      public static final long SIZE$shaderZeroInitializeWorkgroupMemory
    • SIZE$dynamicRendering

      public static final long SIZE$dynamicRendering
    • SIZE$shaderIntegerDotProduct

      public static final long SIZE$shaderIntegerDotProduct
    • SIZE$maintenance4

      public static final long SIZE$maintenance4
    • OFFSET$sType

      public static final long OFFSET$sType
    • OFFSET$pNext

      public static final long OFFSET$pNext
    • OFFSET$robustImageAccess

      public static final long OFFSET$robustImageAccess
    • OFFSET$inlineUniformBlock

      public static final long OFFSET$inlineUniformBlock
    • OFFSET$descriptorBindingInlineUniformBlockUpdateAfterBind

      public static final long OFFSET$descriptorBindingInlineUniformBlockUpdateAfterBind
    • OFFSET$pipelineCreationCacheControl

      public static final long OFFSET$pipelineCreationCacheControl
    • OFFSET$privateData

      public static final long OFFSET$privateData
    • OFFSET$shaderDemoteToHelperInvocation

      public static final long OFFSET$shaderDemoteToHelperInvocation
    • OFFSET$shaderTerminateInvocation

      public static final long OFFSET$shaderTerminateInvocation
    • OFFSET$subgroupSizeControl

      public static final long OFFSET$subgroupSizeControl
    • OFFSET$computeFullSubgroups

      public static final long OFFSET$computeFullSubgroups
    • OFFSET$synchronization2

      public static final long OFFSET$synchronization2
    • OFFSET$textureCompressionASTC_HDR

      public static final long OFFSET$textureCompressionASTC_HDR
    • OFFSET$shaderZeroInitializeWorkgroupMemory

      public static final long OFFSET$shaderZeroInitializeWorkgroupMemory
    • OFFSET$dynamicRendering

      public static final long OFFSET$dynamicRendering
    • OFFSET$shaderIntegerDotProduct

      public static final long OFFSET$shaderIntegerDotProduct
    • OFFSET$maintenance4

      public static final long OFFSET$maintenance4
  • Constructor Details

    • VkPhysicalDeviceVulkan13Features

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