Record Class VkPhysicalDeviceShaderEnqueuePropertiesAMDX

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkPhysicalDeviceShaderEnqueuePropertiesAMDX
All Implemented Interfaces:
IPointer, IVkPhysicalDeviceShaderEnqueuePropertiesAMDX

@ValueBasedCandidate @UnsafeConstructor public record VkPhysicalDeviceShaderEnqueuePropertiesAMDX(@NotNull MemorySegment segment) extends Record implements IVkPhysicalDeviceShaderEnqueuePropertiesAMDX

Represents a pointer to a VkPhysicalDeviceShaderEnqueuePropertiesAMDX structure in native memory.

Structure

typedef struct VkPhysicalDeviceShaderEnqueuePropertiesAMDX {
    VkStructureType sType;
    void* pNext; // optional
    uint32_t maxExecutionGraphDepth;
    uint32_t maxExecutionGraphShaderOutputNodes;
    uint32_t maxExecutionGraphShaderPayloadSize;
    uint32_t maxExecutionGraphShaderPayloadCount;
    uint32_t executionGraphDispatchAddressAlignment;
    uint32_t[3] maxExecutionGraphWorkgroupCount;
    uint32_t maxExecutionGraphWorkgroups;
} VkPhysicalDeviceShaderEnqueuePropertiesAMDX;

Auto initialization

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

  • sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX

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

      public static final MemoryLayout.PathElement PATH$maxExecutionGraphDepth
    • PATH$maxExecutionGraphShaderOutputNodes

      public static final MemoryLayout.PathElement PATH$maxExecutionGraphShaderOutputNodes
    • PATH$maxExecutionGraphShaderPayloadSize

      public static final MemoryLayout.PathElement PATH$maxExecutionGraphShaderPayloadSize
    • PATH$maxExecutionGraphShaderPayloadCount

      public static final MemoryLayout.PathElement PATH$maxExecutionGraphShaderPayloadCount
    • PATH$executionGraphDispatchAddressAlignment

      public static final MemoryLayout.PathElement PATH$executionGraphDispatchAddressAlignment
    • PATH$maxExecutionGraphWorkgroupCount

      public static final MemoryLayout.PathElement PATH$maxExecutionGraphWorkgroupCount
    • PATH$maxExecutionGraphWorkgroups

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

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

      public static final AddressLayout LAYOUT$pNext
    • LAYOUT$maxExecutionGraphDepth

      public static final ValueLayout.OfInt LAYOUT$maxExecutionGraphDepth
    • LAYOUT$maxExecutionGraphShaderOutputNodes

      public static final ValueLayout.OfInt LAYOUT$maxExecutionGraphShaderOutputNodes
    • LAYOUT$maxExecutionGraphShaderPayloadSize

      public static final ValueLayout.OfInt LAYOUT$maxExecutionGraphShaderPayloadSize
    • LAYOUT$maxExecutionGraphShaderPayloadCount

      public static final ValueLayout.OfInt LAYOUT$maxExecutionGraphShaderPayloadCount
    • LAYOUT$executionGraphDispatchAddressAlignment

      public static final ValueLayout.OfInt LAYOUT$executionGraphDispatchAddressAlignment
    • LAYOUT$maxExecutionGraphWorkgroupCount

      public static final SequenceLayout LAYOUT$maxExecutionGraphWorkgroupCount
    • LAYOUT$maxExecutionGraphWorkgroups

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

      public static final long SIZE$sType
    • SIZE$pNext

      public static final long SIZE$pNext
    • SIZE$maxExecutionGraphDepth

      public static final long SIZE$maxExecutionGraphDepth
    • SIZE$maxExecutionGraphShaderOutputNodes

      public static final long SIZE$maxExecutionGraphShaderOutputNodes
    • SIZE$maxExecutionGraphShaderPayloadSize

      public static final long SIZE$maxExecutionGraphShaderPayloadSize
    • SIZE$maxExecutionGraphShaderPayloadCount

      public static final long SIZE$maxExecutionGraphShaderPayloadCount
    • SIZE$executionGraphDispatchAddressAlignment

      public static final long SIZE$executionGraphDispatchAddressAlignment
    • SIZE$maxExecutionGraphWorkgroupCount

      public static final long SIZE$maxExecutionGraphWorkgroupCount
    • SIZE$maxExecutionGraphWorkgroups

      public static final long SIZE$maxExecutionGraphWorkgroups
    • OFFSET$sType

      public static final long OFFSET$sType
    • OFFSET$pNext

      public static final long OFFSET$pNext
    • OFFSET$maxExecutionGraphDepth

      public static final long OFFSET$maxExecutionGraphDepth
    • OFFSET$maxExecutionGraphShaderOutputNodes

      public static final long OFFSET$maxExecutionGraphShaderOutputNodes
    • OFFSET$maxExecutionGraphShaderPayloadSize

      public static final long OFFSET$maxExecutionGraphShaderPayloadSize
    • OFFSET$maxExecutionGraphShaderPayloadCount

      public static final long OFFSET$maxExecutionGraphShaderPayloadCount
    • OFFSET$executionGraphDispatchAddressAlignment

      public static final long OFFSET$executionGraphDispatchAddressAlignment
    • OFFSET$maxExecutionGraphWorkgroupCount

      public static final long OFFSET$maxExecutionGraphWorkgroupCount
    • OFFSET$maxExecutionGraphWorkgroups

      public static final long OFFSET$maxExecutionGraphWorkgroups
  • Constructor Details

    • VkPhysicalDeviceShaderEnqueuePropertiesAMDX

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