Class VkPhysicalDeviceExternalBufferInfo

java.lang.Object
overrungl.struct.GroupType
overrungl.vulkan.struct.VkPhysicalDeviceExternalBufferInfo
All Implemented Interfaces:
Addressable

public final class VkPhysicalDeviceExternalBufferInfo extends GroupType

Layout

struct VkPhysicalDeviceExternalBufferInfo {
    (int) VkStructureType sType;
    const void* pNext;
    ((uint32_t) VkFlags) VkBufferCreateFlags flags;
    ((uint32_t) VkFlags) VkBufferUsageFlags usage;
    (int) VkExternalMemoryHandleTypeFlagBits handleType;
};
  • Field Details

    • LAYOUT

      public static final GroupLayout LAYOUT
      The struct layout of VkPhysicalDeviceExternalBufferInfo.
    • OFFSET_sType

      public static final long OFFSET_sType
      The byte offset of sType.
    • LAYOUT_sType

      public static final MemoryLayout LAYOUT_sType
      The memory layout of sType.
    • VH_sType

      public static final VarHandle VH_sType
      The VarHandle of sType of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_pNext

      public static final long OFFSET_pNext
      The byte offset of pNext.
    • LAYOUT_pNext

      public static final MemoryLayout LAYOUT_pNext
      The memory layout of pNext.
    • VH_pNext

      public static final VarHandle VH_pNext
      The VarHandle of pNext of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_flags

      public static final long OFFSET_flags
      The byte offset of flags.
    • LAYOUT_flags

      public static final MemoryLayout LAYOUT_flags
      The memory layout of flags.
    • VH_flags

      public static final VarHandle VH_flags
      The VarHandle of flags of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_usage

      public static final long OFFSET_usage
      The byte offset of usage.
    • LAYOUT_usage

      public static final MemoryLayout LAYOUT_usage
      The memory layout of usage.
    • VH_usage

      public static final VarHandle VH_usage
      The VarHandle of usage of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_handleType

      public static final long OFFSET_handleType
      The byte offset of handleType.
    • LAYOUT_handleType

      public static final MemoryLayout LAYOUT_handleType
      The memory layout of handleType.
    • VH_handleType

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

    • VkPhysicalDeviceExternalBufferInfo

      public VkPhysicalDeviceExternalBufferInfo(MemorySegment segment, long elementCount)
      Creates VkPhysicalDeviceExternalBufferInfo with the given segment.
      Parameters:
      segment - the memory segment
      elementCount - the element count of this struct buffer
  • Method Details

    • of

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

      public static VkPhysicalDeviceExternalBufferInfo ofNative(MemorySegment segment)

      Creates VkPhysicalDeviceExternalBufferInfo 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 VkPhysicalDeviceExternalBufferInfo ofNative(MemorySegment segment, long count)

      Creates VkPhysicalDeviceExternalBufferInfo 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 VkPhysicalDeviceExternalBufferInfo alloc(SegmentAllocator allocator)
      Allocates a VkPhysicalDeviceExternalBufferInfo with the given segment allocator.
      Parameters:
      allocator - the segment allocator
      Returns:
      the allocated VkPhysicalDeviceExternalBufferInfo
    • alloc

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

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

      public VkPhysicalDeviceExternalBufferInfo reinterpret(long count)
      Reinterprets this buffer with the given count.
      Parameters:
      count - the new count
      Returns:
      the reinterpreted buffer
    • sType

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

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

      public static void sType(MemorySegment segment, long index, int value)
      Sets sType 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
    • sType

      public VkPhysicalDeviceExternalBufferInfo sType(int value)
      Sets sType with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • pNext

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

      public MemorySegment pNext()
      Returns pNext.
      Returns:
      pNext
    • pNext

      public static void pNext(MemorySegment segment, long index, MemorySegment value)
      Sets pNext 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
    • pNext

      Sets pNext with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • flags

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

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

      public static void flags(MemorySegment segment, long index, int value)
      Sets flags 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
    • flags

      public VkPhysicalDeviceExternalBufferInfo flags(int value)
      Sets flags with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • usage

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

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

      public static void usage(MemorySegment segment, long index, int value)
      Sets usage 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
    • usage

      public VkPhysicalDeviceExternalBufferInfo usage(int value)
      Sets usage with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • handleType

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

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

      public static void handleType(MemorySegment segment, long index, int value)
      Sets handleType 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
    • handleType

      public VkPhysicalDeviceExternalBufferInfo handleType(int value)
      Sets handleType with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • asSlice

      public VkPhysicalDeviceExternalBufferInfo asSlice(long index)
      Creates a slice of VkPhysicalDeviceExternalBufferInfo.
      Parameters:
      index - the index of the struct buffer
      Returns:
      the slice of VkPhysicalDeviceExternalBufferInfo
    • asSlice

      public VkPhysicalDeviceExternalBufferInfo asSlice(long index, long count)
      Creates a slice of VkPhysicalDeviceExternalBufferInfo.
      Parameters:
      index - the index of the struct buffer
      count - the count
      Returns:
      the slice of VkPhysicalDeviceExternalBufferInfo
    • at

      Visits VkPhysicalDeviceExternalBufferInfo buffer at the given index.
      Parameters:
      index - the index of this buffer
      func - the function to run with the slice of this buffer
      Returns:
      this
    • sTypeAt

      public int sTypeAt(long index)
      Returns sType at the given index.
      Parameters:
      index - the index of the struct buffer
      Returns:
      sType at the given index
    • sTypeAt

      public VkPhysicalDeviceExternalBufferInfo sTypeAt(long index, int value)
      Sets sType with the given value at the given index.
      Parameters:
      index - the index of the struct buffer
      value - the value
      Returns:
      this
    • pNextAt

      public MemorySegment pNextAt(long index)
      Returns pNext at the given index.
      Parameters:
      index - the index of the struct buffer
      Returns:
      pNext at the given index
    • pNextAt

      public VkPhysicalDeviceExternalBufferInfo pNextAt(long index, MemorySegment value)
      Sets pNext with the given value at the given index.
      Parameters:
      index - the index of the struct buffer
      value - the value
      Returns:
      this
    • flagsAt

      public int flagsAt(long index)
      Returns flags at the given index.
      Parameters:
      index - the index of the struct buffer
      Returns:
      flags at the given index
    • flagsAt

      public VkPhysicalDeviceExternalBufferInfo flagsAt(long index, int value)
      Sets flags with the given value at the given index.
      Parameters:
      index - the index of the struct buffer
      value - the value
      Returns:
      this
    • usageAt

      public int usageAt(long index)
      Returns usage at the given index.
      Parameters:
      index - the index of the struct buffer
      Returns:
      usage at the given index
    • usageAt

      public VkPhysicalDeviceExternalBufferInfo usageAt(long index, int value)
      Sets usage with the given value at the given index.
      Parameters:
      index - the index of the struct buffer
      value - the value
      Returns:
      this
    • handleTypeAt

      public int handleTypeAt(long index)
      Returns handleType at the given index.
      Parameters:
      index - the index of the struct buffer
      Returns:
      handleType at the given index
    • handleTypeAt

      public VkPhysicalDeviceExternalBufferInfo handleTypeAt(long index, int value)
      Sets handleType with the given value at the given index.
      Parameters:
      index - the index of the struct buffer
      value - the value
      Returns:
      this