Record Class VkStencilOpState

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkStencilOpState
All Implemented Interfaces:
IPointer, IVkStencilOpState

@ValueBasedCandidate @UnsafeConstructor public record VkStencilOpState(@NotNull MemorySegment segment) extends Record implements IVkStencilOpState

Represents a pointer to a VkStencilOpState structure in native memory.

Structure

typedef struct VkStencilOpState {
    VkStencilOp failOp;
    VkStencilOp passOp;
    VkStencilOp depthFailOp;
    VkCompareOp compareOp;
    uint32_t compareMask;
    uint32_t writeMask;
    uint32_t reference;
} VkStencilOpState;

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

      public static final MemoryLayout.PathElement PATH$failOp
    • PATH$passOp

      public static final MemoryLayout.PathElement PATH$passOp
    • PATH$depthFailOp

      public static final MemoryLayout.PathElement PATH$depthFailOp
    • PATH$compareOp

      public static final MemoryLayout.PathElement PATH$compareOp
    • PATH$compareMask

      public static final MemoryLayout.PathElement PATH$compareMask
    • PATH$writeMask

      public static final MemoryLayout.PathElement PATH$writeMask
    • PATH$reference

      public static final MemoryLayout.PathElement PATH$reference
    • LAYOUT$failOp

      public static final ValueLayout.OfInt LAYOUT$failOp
    • LAYOUT$passOp

      public static final ValueLayout.OfInt LAYOUT$passOp
    • LAYOUT$depthFailOp

      public static final ValueLayout.OfInt LAYOUT$depthFailOp
    • LAYOUT$compareOp

      public static final ValueLayout.OfInt LAYOUT$compareOp
    • LAYOUT$compareMask

      public static final ValueLayout.OfInt LAYOUT$compareMask
    • LAYOUT$writeMask

      public static final ValueLayout.OfInt LAYOUT$writeMask
    • LAYOUT$reference

      public static final ValueLayout.OfInt LAYOUT$reference
    • SIZE$failOp

      public static final long SIZE$failOp
    • SIZE$passOp

      public static final long SIZE$passOp
    • SIZE$depthFailOp

      public static final long SIZE$depthFailOp
    • SIZE$compareOp

      public static final long SIZE$compareOp
    • SIZE$compareMask

      public static final long SIZE$compareMask
    • SIZE$writeMask

      public static final long SIZE$writeMask
    • SIZE$reference

      public static final long SIZE$reference
    • OFFSET$failOp

      public static final long OFFSET$failOp
    • OFFSET$passOp

      public static final long OFFSET$passOp
    • OFFSET$depthFailOp

      public static final long OFFSET$depthFailOp
    • OFFSET$compareOp

      public static final long OFFSET$compareOp
    • OFFSET$compareMask

      public static final long OFFSET$compareMask
    • OFFSET$writeMask

      public static final long OFFSET$writeMask
    • OFFSET$reference

      public static final long OFFSET$reference
  • Constructor Details

    • VkStencilOpState

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