Record Class WGPUBufferBindingLayout

java.lang.Object
java.lang.Record
club.doki7.webgpu.datatype.WGPUBufferBindingLayout
All Implemented Interfaces:
IPointer, IWGPUBufferBindingLayout

@ValueBasedCandidate @UnsafeConstructor public record WGPUBufferBindingLayout(@NotNull MemorySegment segment) extends Record implements IWGPUBufferBindingLayout

Represents a pointer to a WGPUBufferBindingLayout structure in native memory.

Structure

typedef struct WGPUBufferBindingLayout {
    WGPUChainedStruct const* nextInChain; // optional
    WGPUBufferBindingType type;
    WGPUBool hasDynamicOffset;
    uint64_t minBindingSize;
} WGPUBufferBindingLayout;

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.

  • Field Details

    • LAYOUT

      public static final StructLayout LAYOUT
    • BYTES

      public static final long BYTES
    • PATH$nextInChain

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

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

      public static final MemoryLayout.PathElement PATH$hasDynamicOffset
    • PATH$minBindingSize

      public static final MemoryLayout.PathElement PATH$minBindingSize
    • LAYOUT$nextInChain

      public static final AddressLayout LAYOUT$nextInChain
    • LAYOUT$type

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

      public static final ValueLayout.OfInt LAYOUT$hasDynamicOffset
    • LAYOUT$minBindingSize

      public static final ValueLayout.OfLong LAYOUT$minBindingSize
    • SIZE$nextInChain

      public static final long SIZE$nextInChain
    • SIZE$type

      public static final long SIZE$type
    • SIZE$hasDynamicOffset

      public static final long SIZE$hasDynamicOffset
    • SIZE$minBindingSize

      public static final long SIZE$minBindingSize
    • OFFSET$nextInChain

      public static final long OFFSET$nextInChain
    • OFFSET$type

      public static final long OFFSET$type
    • OFFSET$hasDynamicOffset

      public static final long OFFSET$hasDynamicOffset
    • OFFSET$minBindingSize

      public static final long OFFSET$minBindingSize
  • Constructor Details

    • WGPUBufferBindingLayout

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