Record Class VkBindVertexBufferIndirectCommandNV

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkBindVertexBufferIndirectCommandNV
All Implemented Interfaces:
IPointer, IVkBindVertexBufferIndirectCommandNV

@ValueBasedCandidate @UnsafeConstructor public record VkBindVertexBufferIndirectCommandNV(@NotNull MemorySegment segment) extends Record implements IVkBindVertexBufferIndirectCommandNV

Represents a pointer to a VkBindVertexBufferIndirectCommandNV structure in native memory.

Structure

typedef struct VkBindVertexBufferIndirectCommandNV {
    VkDeviceAddress bufferAddress;
    uint32_t size;
    uint32_t stride;
} VkBindVertexBufferIndirectCommandNV;

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

      public static final MemoryLayout.PathElement PATH$bufferAddress
    • PATH$size

      public static final MemoryLayout.PathElement PATH$size
    • PATH$stride

      public static final MemoryLayout.PathElement PATH$stride
    • LAYOUT$bufferAddress

      public static final ValueLayout.OfLong LAYOUT$bufferAddress
    • LAYOUT$size

      public static final ValueLayout.OfInt LAYOUT$size
    • LAYOUT$stride

      public static final ValueLayout.OfInt LAYOUT$stride
    • SIZE$bufferAddress

      public static final long SIZE$bufferAddress
    • SIZE$size

      public static final long SIZE$size
    • SIZE$stride

      public static final long SIZE$stride
    • OFFSET$bufferAddress

      public static final long OFFSET$bufferAddress
    • OFFSET$size

      public static final long OFFSET$size
    • OFFSET$stride

      public static final long OFFSET$stride
  • Constructor Details

    • VkBindVertexBufferIndirectCommandNV

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