Class VkBufferCopy2

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

public sealed class VkBufferCopy2 extends GroupType permits VkBufferCopy2.Buffer

Layout

struct VkBufferCopy2 {
    (int) VkStructureType sType;
    const void* pNext;
    (uint64_t) VkDeviceSize srcOffset;
    (uint64_t) VkDeviceSize dstOffset;
    (uint64_t) VkDeviceSize size;
};
  • Field Details

    • LAYOUT

      public static final GroupLayout LAYOUT
      The struct layout of VkBufferCopy2.
    • 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_srcOffset

      public static final long OFFSET_srcOffset
      The byte offset of srcOffset.
    • LAYOUT_srcOffset

      public static final MemoryLayout LAYOUT_srcOffset
      The memory layout of srcOffset.
    • VH_srcOffset

      public static final VarHandle VH_srcOffset
      The VarHandle of srcOffset of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_dstOffset

      public static final long OFFSET_dstOffset
      The byte offset of dstOffset.
    • LAYOUT_dstOffset

      public static final MemoryLayout LAYOUT_dstOffset
      The memory layout of dstOffset.
    • VH_dstOffset

      public static final VarHandle VH_dstOffset
      The VarHandle of dstOffset of type (MemorySegment base, long baseOffset, long index)MemorySegment.
    • OFFSET_size

      public static final long OFFSET_size
      The byte offset of size.
    • LAYOUT_size

      public static final MemoryLayout LAYOUT_size
      The memory layout of size.
    • VH_size

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

    • VkBufferCopy2

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

    • of

      public static VkBufferCopy2.Buffer of(MemorySegment segment)
      Creates VkBufferCopy2 with the given segment.
      Parameters:
      segment - the memory segment
      Returns:
      the created instance or null if the segment is NULL
    • ofNative

      public static VkBufferCopy2 ofNative(MemorySegment segment)

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

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

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

      public VkBufferCopy2 copyFrom(VkBufferCopy2 src)
      Copies from the given source.
      Parameters:
      src - the source
      Returns:
      this
    • asBuffer

      public VkBufferCopy2.Buffer asBuffer()
      Converts this instance to a buffer.
      Returns:
      the 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 VkBufferCopy2 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

      public VkBufferCopy2 pNext(MemorySegment value)
      Sets pNext with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • srcOffset

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

      public long srcOffset()
      Returns srcOffset.
      Returns:
      srcOffset
    • srcOffset

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

      public VkBufferCopy2 srcOffset(long value)
      Sets srcOffset with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • dstOffset

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

      public long dstOffset()
      Returns dstOffset.
      Returns:
      dstOffset
    • dstOffset

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

      public VkBufferCopy2 dstOffset(long value)
      Sets dstOffset with the given value.
      Parameters:
      value - the value
      Returns:
      this
    • size

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

      public long size()
      Returns size.
      Returns:
      size
    • size

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

      public VkBufferCopy2 size(long value)
      Sets size with the given value.
      Parameters:
      value - the value
      Returns:
      this