Record Class VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT

java.lang.Object
java.lang.Record
club.doki7.vulkan.datatype.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT
All Implemented Interfaces:
IPointer, IVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT

@ValueBasedCandidate @UnsafeConstructor public record VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(@NotNull MemorySegment segment) extends Record implements IVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT

Represents a pointer to a VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT structure in native memory.

Structure

typedef struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
    VkStructureType sType;
    void* pNext; // optional
    uint32_t advancedBlendMaxColorAttachments;
    VkBool32 advancedBlendIndependentBlend;
    VkBool32 advancedBlendNonPremultipliedSrcColor;
    VkBool32 advancedBlendNonPremultipliedDstColor;
    VkBool32 advancedBlendCorrelatedOverlap;
    VkBool32 advancedBlendAllOperations;
} VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT;

Auto initialization

This structure has the following members that can be automatically initialized:

  • sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT

The allocate (allocate(Arena), allocate(Arena, long)) functions will automatically initialize these fields. Also, you may call autoInit() to initialize these fields manually for non-allocated instances.

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

      public static final MemoryLayout.PathElement PATH$sType
    • PATH$pNext

      public static final MemoryLayout.PathElement PATH$pNext
    • PATH$advancedBlendMaxColorAttachments

      public static final MemoryLayout.PathElement PATH$advancedBlendMaxColorAttachments
    • PATH$advancedBlendIndependentBlend

      public static final MemoryLayout.PathElement PATH$advancedBlendIndependentBlend
    • PATH$advancedBlendNonPremultipliedSrcColor

      public static final MemoryLayout.PathElement PATH$advancedBlendNonPremultipliedSrcColor
    • PATH$advancedBlendNonPremultipliedDstColor

      public static final MemoryLayout.PathElement PATH$advancedBlendNonPremultipliedDstColor
    • PATH$advancedBlendCorrelatedOverlap

      public static final MemoryLayout.PathElement PATH$advancedBlendCorrelatedOverlap
    • PATH$advancedBlendAllOperations

      public static final MemoryLayout.PathElement PATH$advancedBlendAllOperations
    • LAYOUT$sType

      public static final ValueLayout.OfInt LAYOUT$sType
    • LAYOUT$pNext

      public static final AddressLayout LAYOUT$pNext
    • LAYOUT$advancedBlendMaxColorAttachments

      public static final ValueLayout.OfInt LAYOUT$advancedBlendMaxColorAttachments
    • LAYOUT$advancedBlendIndependentBlend

      public static final ValueLayout.OfInt LAYOUT$advancedBlendIndependentBlend
    • LAYOUT$advancedBlendNonPremultipliedSrcColor

      public static final ValueLayout.OfInt LAYOUT$advancedBlendNonPremultipliedSrcColor
    • LAYOUT$advancedBlendNonPremultipliedDstColor

      public static final ValueLayout.OfInt LAYOUT$advancedBlendNonPremultipliedDstColor
    • LAYOUT$advancedBlendCorrelatedOverlap

      public static final ValueLayout.OfInt LAYOUT$advancedBlendCorrelatedOverlap
    • LAYOUT$advancedBlendAllOperations

      public static final ValueLayout.OfInt LAYOUT$advancedBlendAllOperations
    • SIZE$sType

      public static final long SIZE$sType
    • SIZE$pNext

      public static final long SIZE$pNext
    • SIZE$advancedBlendMaxColorAttachments

      public static final long SIZE$advancedBlendMaxColorAttachments
    • SIZE$advancedBlendIndependentBlend

      public static final long SIZE$advancedBlendIndependentBlend
    • SIZE$advancedBlendNonPremultipliedSrcColor

      public static final long SIZE$advancedBlendNonPremultipliedSrcColor
    • SIZE$advancedBlendNonPremultipliedDstColor

      public static final long SIZE$advancedBlendNonPremultipliedDstColor
    • SIZE$advancedBlendCorrelatedOverlap

      public static final long SIZE$advancedBlendCorrelatedOverlap
    • SIZE$advancedBlendAllOperations

      public static final long SIZE$advancedBlendAllOperations
    • OFFSET$sType

      public static final long OFFSET$sType
    • OFFSET$pNext

      public static final long OFFSET$pNext
    • OFFSET$advancedBlendMaxColorAttachments

      public static final long OFFSET$advancedBlendMaxColorAttachments
    • OFFSET$advancedBlendIndependentBlend

      public static final long OFFSET$advancedBlendIndependentBlend
    • OFFSET$advancedBlendNonPremultipliedSrcColor

      public static final long OFFSET$advancedBlendNonPremultipliedSrcColor
    • OFFSET$advancedBlendNonPremultipliedDstColor

      public static final long OFFSET$advancedBlendNonPremultipliedDstColor
    • OFFSET$advancedBlendCorrelatedOverlap

      public static final long OFFSET$advancedBlendCorrelatedOverlap
    • OFFSET$advancedBlendAllOperations

      public static final long OFFSET$advancedBlendAllOperations
  • Constructor Details

    • VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT

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