Record Class VkFormatProperties

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkFormatProperties
All Implemented Interfaces:
IPointer, IVkFormatProperties

@ValueBasedCandidate @UnsafeConstructor public record VkFormatProperties(@NotNull MemorySegment segment) extends Record implements IVkFormatProperties

Represents a pointer to a VkFormatProperties structure in native memory.

Structure

typedef struct VkFormatProperties {
    VkFormatFeatureFlags linearTilingFeatures; // optional
    VkFormatFeatureFlags optimalTilingFeatures; // optional
    VkFormatFeatureFlags bufferFeatures; // optional
} VkFormatProperties;

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

      public static final MemoryLayout.PathElement PATH$linearTilingFeatures
    • PATH$optimalTilingFeatures

      public static final MemoryLayout.PathElement PATH$optimalTilingFeatures
    • PATH$bufferFeatures

      public static final MemoryLayout.PathElement PATH$bufferFeatures
    • LAYOUT$linearTilingFeatures

      public static final ValueLayout.OfInt LAYOUT$linearTilingFeatures
    • LAYOUT$optimalTilingFeatures

      public static final ValueLayout.OfInt LAYOUT$optimalTilingFeatures
    • LAYOUT$bufferFeatures

      public static final ValueLayout.OfInt LAYOUT$bufferFeatures
    • SIZE$linearTilingFeatures

      public static final long SIZE$linearTilingFeatures
    • SIZE$optimalTilingFeatures

      public static final long SIZE$optimalTilingFeatures
    • SIZE$bufferFeatures

      public static final long SIZE$bufferFeatures
    • OFFSET$linearTilingFeatures

      public static final long OFFSET$linearTilingFeatures
    • OFFSET$optimalTilingFeatures

      public static final long OFFSET$optimalTilingFeatures
    • OFFSET$bufferFeatures

      public static final long OFFSET$bufferFeatures
  • Constructor Details

    • VkFormatProperties

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