Structures

VkCopyMemoryIndirectCommandKHR

Structure specifying indirect memory region copy operation

The structure describing source and destination memory regions, VkCopyMemoryIndirectCommandKHR is defined as:

typedef struct VkCopyMemoryIndirectCommandKHR {
    VkDeviceAddress srcAddress;
    VkDeviceAddress dstAddress;
    VkDeviceSize size;
} VkCopyMemoryIndirectCommandKHR;
typedef VkCopyMemoryIndirectCommandKHR VkCopyMemoryIndirectCommandNV;
  • srcAddress is the starting address of the source device memory to copy from.
  • dstAddress is the starting address of the destination device memory to copy to.
  • size is the size of the copy in bytes.

Valid Usage

VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-10958

The srcAddress must be 4 byte aligned

VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-10959

The dstAddress must be 4 byte aligned

VUID-VkCopyMemoryIndirectCommandKHR-size-10960

The size must be 4 byte aligned

VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-10961

The memory in range [srcAddress, srcAddress + size - 1] must be within the bounds of the memory allocation backing srcAddress

VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-10962

The memory in range [dstAddress, dstAddress + size - 1] must be within the bounds of the memory allocation backing dstAddress

VUID-VkCopyMemoryIndirectCommandKHR-srcAddress-12211

The range of memory defined by srcAddress and size must be a device address range allocated to the application from a buffer created with the VK_BUFFER_USAGE_TRANSFER_SRC_BIT usage flag set

VUID-VkCopyMemoryIndirectCommandKHR-dstAddress-12212

The range of memory defined by dstAddress and size must be a device address range allocated to the application from a buffer created with the VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag set