Class VkExternalMemoryProperties

java.lang.Object
overrungl.struct.GroupType
overrungl.vulkan.struct.VkExternalMemoryProperties
All Implemented Interfaces:
Addressable
Direct Known Subclasses:
VkExternalMemoryProperties.Buffer

public sealed class VkExternalMemoryProperties extends GroupType permits VkExternalMemoryProperties.Buffer

Layout

struct VkExternalMemoryProperties {
    ((uint32_t) VkFlags) VkExternalMemoryFeatureFlags externalMemoryFeatures;
    ((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;
    ((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags compatibleHandleTypes;
};
  • Field Details

    • LAYOUT

      public static final GroupLayout LAYOUT
      The struct layout of VkExternalMemoryProperties.
    • OFFSET_externalMemoryFeatures

      public static final long OFFSET_externalMemoryFeatures
      The byte offset of externalMemoryFeatures.
    • LAYOUT_externalMemoryFeatures

      public static final MemoryLayout LAYOUT_externalMemoryFeatures
      The memory layout of externalMemoryFeatures.
    • VH_externalMemoryFeatures

      public static final VarHandle VH_externalMemoryFeatures
      The VarHandle of externalMemoryFeatures of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_exportFromImportedHandleTypes

      public static final long OFFSET_exportFromImportedHandleTypes
      The byte offset of exportFromImportedHandleTypes.
    • LAYOUT_exportFromImportedHandleTypes

      public static final MemoryLayout LAYOUT_exportFromImportedHandleTypes
      The memory layout of exportFromImportedHandleTypes.
    • VH_exportFromImportedHandleTypes

      public static final VarHandle VH_exportFromImportedHandleTypes
      The VarHandle of exportFromImportedHandleTypes of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_compatibleHandleTypes

      public static final long OFFSET_compatibleHandleTypes
      The byte offset of compatibleHandleTypes.
    • LAYOUT_compatibleHandleTypes

      public static final MemoryLayout LAYOUT_compatibleHandleTypes
      The memory layout of compatibleHandleTypes.
    • VH_compatibleHandleTypes

      public static final VarHandle VH_compatibleHandleTypes
      The VarHandle of compatibleHandleTypes of type (MemorySegment base, long baseOffset, long index)MemorySegment.
  • Constructor Details

    • VkExternalMemoryProperties

      public VkExternalMemoryProperties(MemorySegment segment)
      Creates VkExternalMemoryProperties with the given segment.
      Parameters:
      segment - the memory segment
  • Method Details

    • of

      Creates VkExternalMemoryProperties with the given segment.
      Parameters:
      segment - the memory segment
      Returns:
      the created instance or null if the segment is NULL
    • ofNative

      public static VkExternalMemoryProperties ofNative(MemorySegment segment)

      Creates VkExternalMemoryProperties with the given segment.

      Reinterprets the segment if zero-length.

      Parameters:
      segment - the memory segment
      Returns:
      the created instance or null if the segment is NULL
    • ofNative

      public static VkExternalMemoryProperties.Buffer ofNative(MemorySegment segment, long count)

      Creates VkExternalMemoryProperties with the given segment.

      Reinterprets the segment if zero-length.

      Parameters:
      segment - the memory segment
      count - the count of the buffer
      Returns:
      the created instance or null if the segment is NULL
    • alloc

      public static VkExternalMemoryProperties alloc(SegmentAllocator allocator)
      Allocates a VkExternalMemoryProperties with the given segment allocator.
      Parameters:
      allocator - the segment allocator
      Returns:
      the allocated VkExternalMemoryProperties
    • alloc

      public static VkExternalMemoryProperties.Buffer alloc(SegmentAllocator allocator, long count)
      Allocates a VkExternalMemoryProperties with the given segment allocator and count.
      Parameters:
      allocator - the segment allocator
      count - the count
      Returns:
      the allocated VkExternalMemoryProperties
    • copyFrom

      Copies from the given source.
      Parameters:
      src - the source
      Returns:
      this
    • asBuffer

      Converts this instance to a buffer.
      Returns:
      the buffer
    • externalMemoryFeatures

      public static int externalMemoryFeatures(MemorySegment segment, long index)
      Returns externalMemoryFeatures at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      Returns:
      externalMemoryFeatures at the given index
    • externalMemoryFeatures

      public int externalMemoryFeatures()
      Returns externalMemoryFeatures.
      Returns:
      externalMemoryFeatures
    • externalMemoryFeatures

      public static void externalMemoryFeatures(MemorySegment segment, long index, int value)
      Sets externalMemoryFeatures with the given value at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      value - the value
    • externalMemoryFeatures

      public VkExternalMemoryProperties externalMemoryFeatures(int value)
      Sets externalMemoryFeatures with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • exportFromImportedHandleTypes

      public static int exportFromImportedHandleTypes(MemorySegment segment, long index)
      Returns exportFromImportedHandleTypes at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      Returns:
      exportFromImportedHandleTypes at the given index
    • exportFromImportedHandleTypes

      public int exportFromImportedHandleTypes()
      Returns exportFromImportedHandleTypes.
      Returns:
      exportFromImportedHandleTypes
    • exportFromImportedHandleTypes

      public static void exportFromImportedHandleTypes(MemorySegment segment, long index, int value)
      Sets exportFromImportedHandleTypes with the given value at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      value - the value
    • exportFromImportedHandleTypes

      public VkExternalMemoryProperties exportFromImportedHandleTypes(int value)
      Sets exportFromImportedHandleTypes with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • compatibleHandleTypes

      public static int compatibleHandleTypes(MemorySegment segment, long index)
      Returns compatibleHandleTypes at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      Returns:
      compatibleHandleTypes at the given index
    • compatibleHandleTypes

      public int compatibleHandleTypes()
      Returns compatibleHandleTypes.
      Returns:
      compatibleHandleTypes
    • compatibleHandleTypes

      public static void compatibleHandleTypes(MemorySegment segment, long index, int value)
      Sets compatibleHandleTypes with the given value at the given index.
      Parameters:
      segment - the segment of the struct
      index - the index of the struct buffer
      value - the value
    • compatibleHandleTypes

      public VkExternalMemoryProperties compatibleHandleTypes(int value)
      Sets compatibleHandleTypes with the given value.
      Parameters:
      value - the value
      Returns:
      this