Record Class VkPhysicalDeviceAccelerationStructurePropertiesKHR

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkPhysicalDeviceAccelerationStructurePropertiesKHR
All Implemented Interfaces:
IPointer, IVkPhysicalDeviceAccelerationStructurePropertiesKHR

@ValueBasedCandidate @UnsafeConstructor public record VkPhysicalDeviceAccelerationStructurePropertiesKHR(@NotNull MemorySegment segment) extends Record implements IVkPhysicalDeviceAccelerationStructurePropertiesKHR

Represents a pointer to a VkPhysicalDeviceAccelerationStructurePropertiesKHR structure in native memory.

Structure

typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR {
    VkStructureType sType;
    void* pNext; // optional
    uint64_t maxGeometryCount;
    uint64_t maxInstanceCount;
    uint64_t maxPrimitiveCount;
    uint32_t maxPerStageDescriptorAccelerationStructures;
    uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures;
    uint32_t maxDescriptorSetAccelerationStructures;
    uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures;
    uint32_t minAccelerationStructureScratchOffsetAlignment;
} VkPhysicalDeviceAccelerationStructurePropertiesKHR;

Auto initialization

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

  • sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR

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

      public static final MemoryLayout.PathElement PATH$maxGeometryCount
    • PATH$maxInstanceCount

      public static final MemoryLayout.PathElement PATH$maxInstanceCount
    • PATH$maxPrimitiveCount

      public static final MemoryLayout.PathElement PATH$maxPrimitiveCount
    • PATH$maxPerStageDescriptorAccelerationStructures

      public static final MemoryLayout.PathElement PATH$maxPerStageDescriptorAccelerationStructures
    • PATH$maxPerStageDescriptorUpdateAfterBindAccelerationStructures

      public static final MemoryLayout.PathElement PATH$maxPerStageDescriptorUpdateAfterBindAccelerationStructures
    • PATH$maxDescriptorSetAccelerationStructures

      public static final MemoryLayout.PathElement PATH$maxDescriptorSetAccelerationStructures
    • PATH$maxDescriptorSetUpdateAfterBindAccelerationStructures

      public static final MemoryLayout.PathElement PATH$maxDescriptorSetUpdateAfterBindAccelerationStructures
    • PATH$minAccelerationStructureScratchOffsetAlignment

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

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

      public static final AddressLayout LAYOUT$pNext
    • LAYOUT$maxGeometryCount

      public static final ValueLayout.OfLong LAYOUT$maxGeometryCount
    • LAYOUT$maxInstanceCount

      public static final ValueLayout.OfLong LAYOUT$maxInstanceCount
    • LAYOUT$maxPrimitiveCount

      public static final ValueLayout.OfLong LAYOUT$maxPrimitiveCount
    • LAYOUT$maxPerStageDescriptorAccelerationStructures

      public static final ValueLayout.OfInt LAYOUT$maxPerStageDescriptorAccelerationStructures
    • LAYOUT$maxPerStageDescriptorUpdateAfterBindAccelerationStructures

      public static final ValueLayout.OfInt LAYOUT$maxPerStageDescriptorUpdateAfterBindAccelerationStructures
    • LAYOUT$maxDescriptorSetAccelerationStructures

      public static final ValueLayout.OfInt LAYOUT$maxDescriptorSetAccelerationStructures
    • LAYOUT$maxDescriptorSetUpdateAfterBindAccelerationStructures

      public static final ValueLayout.OfInt LAYOUT$maxDescriptorSetUpdateAfterBindAccelerationStructures
    • LAYOUT$minAccelerationStructureScratchOffsetAlignment

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

      public static final long SIZE$sType
    • SIZE$pNext

      public static final long SIZE$pNext
    • SIZE$maxGeometryCount

      public static final long SIZE$maxGeometryCount
    • SIZE$maxInstanceCount

      public static final long SIZE$maxInstanceCount
    • SIZE$maxPrimitiveCount

      public static final long SIZE$maxPrimitiveCount
    • SIZE$maxPerStageDescriptorAccelerationStructures

      public static final long SIZE$maxPerStageDescriptorAccelerationStructures
    • SIZE$maxPerStageDescriptorUpdateAfterBindAccelerationStructures

      public static final long SIZE$maxPerStageDescriptorUpdateAfterBindAccelerationStructures
    • SIZE$maxDescriptorSetAccelerationStructures

      public static final long SIZE$maxDescriptorSetAccelerationStructures
    • SIZE$maxDescriptorSetUpdateAfterBindAccelerationStructures

      public static final long SIZE$maxDescriptorSetUpdateAfterBindAccelerationStructures
    • SIZE$minAccelerationStructureScratchOffsetAlignment

      public static final long SIZE$minAccelerationStructureScratchOffsetAlignment
    • OFFSET$sType

      public static final long OFFSET$sType
    • OFFSET$pNext

      public static final long OFFSET$pNext
    • OFFSET$maxGeometryCount

      public static final long OFFSET$maxGeometryCount
    • OFFSET$maxInstanceCount

      public static final long OFFSET$maxInstanceCount
    • OFFSET$maxPrimitiveCount

      public static final long OFFSET$maxPrimitiveCount
    • OFFSET$maxPerStageDescriptorAccelerationStructures

      public static final long OFFSET$maxPerStageDescriptorAccelerationStructures
    • OFFSET$maxPerStageDescriptorUpdateAfterBindAccelerationStructures

      public static final long OFFSET$maxPerStageDescriptorUpdateAfterBindAccelerationStructures
    • OFFSET$maxDescriptorSetAccelerationStructures

      public static final long OFFSET$maxDescriptorSetAccelerationStructures
    • OFFSET$maxDescriptorSetUpdateAfterBindAccelerationStructures

      public static final long OFFSET$maxDescriptorSetUpdateAfterBindAccelerationStructures
    • OFFSET$minAccelerationStructureScratchOffsetAlignment

      public static final long OFFSET$minAccelerationStructureScratchOffsetAlignment
  • Constructor Details

    • VkPhysicalDeviceAccelerationStructurePropertiesKHR

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