Record Class SDL_GPUDepthStencilState

java.lang.Object
java.lang.Record
club.doki7.sdl3.datatype.SDL_GPUDepthStencilState
All Implemented Interfaces:
IPointer, ISDL_GPUDepthStencilState

@ValueBasedCandidate @UnsafeConstructor public record SDL_GPUDepthStencilState(@NotNull MemorySegment segment) extends Record implements ISDL_GPUDepthStencilState

A structure specifying the parameters of the graphics pipeline depth stencil state.

Since: This struct is available since SDL 3.2.0.

See also:

  • SDL_GPUGraphicsPipelineCreateInfo

Structure

typedef struct SDL_GPUDepthStencilState {
    SDL_GPUCompareOp compare_op;
    SDL_GPUStencilOpState back_stencil_state;
    SDL_GPUStencilOpState front_stencil_state;
    Uint8 compare_mask;
    Uint8 write_mask;
    bool enable_depth_test;
    bool enable_depth_write;
    bool enable_stencil_test;
    Uint8 padding1;
    Uint8 padding2;
    Uint8 padding3;
} SDL_GPUDepthStencilState;

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

      public static final MemoryLayout.PathElement PATH$compare_op
    • PATH$back_stencil_state

      public static final MemoryLayout.PathElement PATH$back_stencil_state
    • PATH$front_stencil_state

      public static final MemoryLayout.PathElement PATH$front_stencil_state
    • PATH$compare_mask

      public static final MemoryLayout.PathElement PATH$compare_mask
    • PATH$write_mask

      public static final MemoryLayout.PathElement PATH$write_mask
    • PATH$enable_depth_test

      public static final MemoryLayout.PathElement PATH$enable_depth_test
    • PATH$enable_depth_write

      public static final MemoryLayout.PathElement PATH$enable_depth_write
    • PATH$enable_stencil_test

      public static final MemoryLayout.PathElement PATH$enable_stencil_test
    • PATH$padding1

      public static final MemoryLayout.PathElement PATH$padding1
    • PATH$padding2

      public static final MemoryLayout.PathElement PATH$padding2
    • PATH$padding3

      public static final MemoryLayout.PathElement PATH$padding3
    • LAYOUT$compare_op

      public static final ValueLayout.OfInt LAYOUT$compare_op
    • LAYOUT$back_stencil_state

      public static final StructLayout LAYOUT$back_stencil_state
    • LAYOUT$front_stencil_state

      public static final StructLayout LAYOUT$front_stencil_state
    • LAYOUT$compare_mask

      public static final ValueLayout.OfByte LAYOUT$compare_mask
    • LAYOUT$write_mask

      public static final ValueLayout.OfByte LAYOUT$write_mask
    • LAYOUT$enable_depth_test

      public static final ValueLayout.OfBoolean LAYOUT$enable_depth_test
    • LAYOUT$enable_depth_write

      public static final ValueLayout.OfBoolean LAYOUT$enable_depth_write
    • LAYOUT$enable_stencil_test

      public static final ValueLayout.OfBoolean LAYOUT$enable_stencil_test
    • LAYOUT$padding1

      public static final ValueLayout.OfByte LAYOUT$padding1
    • LAYOUT$padding2

      public static final ValueLayout.OfByte LAYOUT$padding2
    • LAYOUT$padding3

      public static final ValueLayout.OfByte LAYOUT$padding3
    • SIZE$compare_op

      public static final long SIZE$compare_op
    • SIZE$back_stencil_state

      public static final long SIZE$back_stencil_state
    • SIZE$front_stencil_state

      public static final long SIZE$front_stencil_state
    • SIZE$compare_mask

      public static final long SIZE$compare_mask
    • SIZE$write_mask

      public static final long SIZE$write_mask
    • SIZE$enable_depth_test

      public static final long SIZE$enable_depth_test
    • SIZE$enable_depth_write

      public static final long SIZE$enable_depth_write
    • SIZE$enable_stencil_test

      public static final long SIZE$enable_stencil_test
    • SIZE$padding1

      public static final long SIZE$padding1
    • SIZE$padding2

      public static final long SIZE$padding2
    • SIZE$padding3

      public static final long SIZE$padding3
    • OFFSET$compare_op

      public static final long OFFSET$compare_op
    • OFFSET$back_stencil_state

      public static final long OFFSET$back_stencil_state
    • OFFSET$front_stencil_state

      public static final long OFFSET$front_stencil_state
    • OFFSET$compare_mask

      public static final long OFFSET$compare_mask
    • OFFSET$write_mask

      public static final long OFFSET$write_mask
    • OFFSET$enable_depth_test

      public static final long OFFSET$enable_depth_test
    • OFFSET$enable_depth_write

      public static final long OFFSET$enable_depth_write
    • OFFSET$enable_stencil_test

      public static final long OFFSET$enable_stencil_test
    • OFFSET$padding1

      public static final long OFFSET$padding1
    • OFFSET$padding2

      public static final long OFFSET$padding2
    • OFFSET$padding3

      public static final long OFFSET$padding3
  • Constructor Details

    • SDL_GPUDepthStencilState

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