VkDependencyInfo
The VkDependencyInfo
structure is defined as:
typedef struct VkDependencyInfo {
VkStructureType sType;
const void* pNext;
VkDependencyFlags dependencyFlags;
uint32_t memoryBarrierCount;
const VkMemoryBarrier2* pMemoryBarriers;
uint32_t bufferMemoryBarrierCount;
const VkBufferMemoryBarrier2* pBufferMemoryBarriers;
uint32_t imageMemoryBarrierCount;
const VkImageMemoryBarrier2* pImageMemoryBarriers;
} VkDependencyInfo;
or the equivalent
typedef VkDependencyInfo VkDependencyInfoKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.dependencyFlags
is a bitmask of VkDependencyFlagBits specifying how execution and memory dependencies are formed.memoryBarrierCount
is the length of thepMemoryBarriers
array.pMemoryBarriers
is a pointer to an array of VkMemoryBarrier2 structures defining memory dependencies between any memory accesses.bufferMemoryBarrierCount
is the length of thepBufferMemoryBarriers
array.pBufferMemoryBarriers
is a pointer to an array of VkBufferMemoryBarrier2 structures defining memory dependencies between buffer ranges.imageMemoryBarrierCount
is the length of thepImageMemoryBarriers
array.pImageMemoryBarriers
is a pointer to an array of VkImageMemoryBarrier2 structures defining memory dependencies between image subresources.
This structure defines a set of memory dependencies, as well as queue family ownership transfer operations and image layout transitions.
Each member of pMemoryBarriers
, pBufferMemoryBarriers
, and
pImageMemoryBarriers
defines a separate
memory dependency.
Valid Usage (Implicit)
VUID-VkDependencyInfo-sType-sType
sType
must be VK_STRUCTURE_TYPE_DEPENDENCY_INFO
VUID-VkDependencyInfo-pNext-pNext
pNext
must be NULL
VUID-VkDependencyInfo-dependencyFlags-parameter
dependencyFlags
must be a valid combination of VkDependencyFlagBits values
VUID-VkDependencyInfo-pMemoryBarriers-parameter
If memoryBarrierCount
is not 0
, pMemoryBarriers
must be a valid pointer to an array of memoryBarrierCount
valid VkMemoryBarrier2 structures
VUID-VkDependencyInfo-pBufferMemoryBarriers-parameter
If bufferMemoryBarrierCount
is not 0
, pBufferMemoryBarriers
must be a valid pointer to an array of bufferMemoryBarrierCount
valid VkBufferMemoryBarrier2 structures
VUID-VkDependencyInfo-pImageMemoryBarriers-parameter
If imageMemoryBarrierCount
is not 0
, pImageMemoryBarriers
must be a valid pointer to an array of imageMemoryBarrierCount
valid VkImageMemoryBarrier2 structures