Record Class XrGraphicsBindingVulkanKHR

java.lang.Object
java.lang.Record
club.doki7.openxr.datatype.XrGraphicsBindingVulkanKHR
All Implemented Interfaces:
IPointer, IXrGraphicsBindingVulkanKHR

@ValueBasedCandidate @UnsafeConstructor public record XrGraphicsBindingVulkanKHR(@NotNull MemorySegment segment) extends Record implements IXrGraphicsBindingVulkanKHR

Represents a pointer to a XrGraphicsBindingVulkanKHR structure in native memory.

Structure

typedef struct XrGraphicsBindingVulkanKHR {
    XrStructureType type;
    void const* next;
    VkInstance instance;
    VkPhysicalDevice physicalDevice;
    VkDevice device;
    uint32_t queueFamilyIndex;
    uint32_t queueIndex;
} XrGraphicsBindingVulkanKHR;

Auto initialization

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

  • type = XR_TYPE_GRAPHICS_BINDING_VULKAN_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$type

      public static final MemoryLayout.PathElement PATH$type
    • PATH$next

      public static final MemoryLayout.PathElement PATH$next
    • PATH$instance

      public static final MemoryLayout.PathElement PATH$instance
    • PATH$physicalDevice

      public static final MemoryLayout.PathElement PATH$physicalDevice
    • PATH$device

      public static final MemoryLayout.PathElement PATH$device
    • PATH$queueFamilyIndex

      public static final MemoryLayout.PathElement PATH$queueFamilyIndex
    • PATH$queueIndex

      public static final MemoryLayout.PathElement PATH$queueIndex
    • LAYOUT$type

      public static final ValueLayout.OfInt LAYOUT$type
    • LAYOUT$next

      public static final AddressLayout LAYOUT$next
    • LAYOUT$instance

      public static final AddressLayout LAYOUT$instance
    • LAYOUT$physicalDevice

      public static final AddressLayout LAYOUT$physicalDevice
    • LAYOUT$device

      public static final AddressLayout LAYOUT$device
    • LAYOUT$queueFamilyIndex

      public static final ValueLayout.OfInt LAYOUT$queueFamilyIndex
    • LAYOUT$queueIndex

      public static final ValueLayout.OfInt LAYOUT$queueIndex
    • SIZE$type

      public static final long SIZE$type
    • SIZE$next

      public static final long SIZE$next
    • SIZE$instance

      public static final long SIZE$instance
    • SIZE$physicalDevice

      public static final long SIZE$physicalDevice
    • SIZE$device

      public static final long SIZE$device
    • SIZE$queueFamilyIndex

      public static final long SIZE$queueFamilyIndex
    • SIZE$queueIndex

      public static final long SIZE$queueIndex
    • OFFSET$type

      public static final long OFFSET$type
    • OFFSET$next

      public static final long OFFSET$next
    • OFFSET$instance

      public static final long OFFSET$instance
    • OFFSET$physicalDevice

      public static final long OFFSET$physicalDevice
    • OFFSET$device

      public static final long OFFSET$device
    • OFFSET$queueFamilyIndex

      public static final long OFFSET$queueFamilyIndex
    • OFFSET$queueIndex

      public static final long OFFSET$queueIndex
  • Constructor Details

    • XrGraphicsBindingVulkanKHR

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