Structures

VkCommandPoolCreateInfo

Structure specifying parameters of a newly created command pool

The VkCommandPoolCreateInfo structure is defined as:

typedef struct VkCommandPoolCreateInfo {
    VkStructureType sType;
    const void* pNext;
    VkCommandPoolCreateFlags flags;
    uint32_t queueFamilyIndex;
} VkCommandPoolCreateInfo;
  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • flags is a bitmask of VkCommandPoolCreateFlagBits indicating usage behavior for the pool and command buffers allocated from it.
  • queueFamilyIndex designates a queue family as described in section Queue Family Properties. All command buffers allocated from this command pool must be submitted on queues from the same queue family.

Valid Usage

VUID-VkCommandPoolCreateInfo-flags-02860

If the protectedMemory feature is not enabled, the VK_COMMAND_POOL_CREATE_PROTECTED_BIT bit of flags must not be set

VUID-VkCommandPoolCreateInfo-pNext-09908

If the pNext chain includes a VkDataGraphProcessingEngineCreateInfoARM structure, then queueFamilyIndex must designate a queue family that supports VK_QUEUE_DATA_GRAPH_BIT_ARM

VUID-VkCommandPoolCreateInfo-pNext-09909

If the pNext chain includes a VkDataGraphProcessingEngineCreateInfoARM structure, each member of pProcessingEngines must be identical to VkQueueFamilyDataGraphPropertiesARM::engine retrieved from vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with queueFamilyIndex and the physicalDevice that was used to create device

VUID-VkCommandPoolCreateInfo-queueFamilyIndex-11830

If queueFamilyIndex designates a queue family that supports VK_QUEUE_DATA_GRAPH_BIT_ARM and enumerates a foreign engine through vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM with type VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_NEURAL_QCOM or VK_PHYSICAL_DEVICE_DATA_GRAPH_PROCESSING_ENGINE_TYPE_COMPUTE_QCOM, the pNext chain must include VkDataGraphProcessingEngineCreateInfoARM with VkPhysicalDeviceDataGraphProcessingEngineARM::isForeign set to VK_TRUE for all elements of pProcessingEngines

Valid Usage (Implicit)

VUID-VkCommandPoolCreateInfo-sType-sType

sType must be VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO

VUID-VkCommandPoolCreateInfo-pNext-pNext

pNext must be NULL or a pointer to a valid instance of VkDataGraphProcessingEngineCreateInfoARM

VUID-VkCommandPoolCreateInfo-sType-unique

The sType value of each structure in the pNext chain must be unique