vkGetPhysicalDeviceExternalImageFormatPropertiesNV
To determine the image capabilities compatible with an external memory handle type, call:
VkResult vkGetPhysicalDeviceExternalImageFormatPropertiesNV(
VkPhysicalDevice physicalDevice,
VkFormat format,
VkImageType type,
VkImageTiling tiling,
VkImageUsageFlags usage,
VkImageCreateFlags flags,
VkExternalMemoryHandleTypeFlagsNV externalHandleType,
VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
physicalDeviceis the physical device from which to query the image capabilitiesformatis the image format, corresponding to VkImageCreateInfo::format.typeis the image type, corresponding to VkImageCreateInfo::imageType.tilingis the image tiling, corresponding to VkImageCreateInfo::tiling.usageis the intended usage of the image, corresponding to VkImageCreateInfo::usage.flagsis a bitmask describing additional parameters of the image, corresponding to VkImageCreateInfo::flags.externalHandleTypeis either one of the bits from VkExternalMemoryHandleTypeFlagBitsNV, or 0.pExternalImageFormatPropertiesis a pointer to a VkExternalImageFormatPropertiesNV structure in which capabilities are returned.
If externalHandleType is 0,
pExternalImageFormatProperties→imageFormatProperties will return the
same values as a call to vkGetPhysicalDeviceImageFormatProperties, and
the other members of pExternalImageFormatProperties will all be 0.
Otherwise, they are filled in as described for
VkExternalImageFormatPropertiesNV.
Valid Usage
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-externalHandleType-07721
externalHandleType must not have more than one bit set
Valid Usage (Implicit)
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-physicalDevice-parameter
physicalDevice must be a valid VkPhysicalDevice handle
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-format-parameter
format must be a valid VkFormat value
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-type-parameter
type must be a valid VkImageType value
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-tiling-parameter
tiling must be a valid VkImageTiling value
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-usage-parameter
usage must be a valid combination of VkImageUsageFlagBits values
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-flags-parameter
flags must be a valid combination of VkImageCreateFlagBits values
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-externalHandleType-parameter
externalHandleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values
VUID-vkGetPhysicalDeviceExternalImageFormatPropertiesNV-pExternalImageFormatProperties-parameter
pExternalImageFormatProperties must be a valid pointer to a VkExternalImageFormatPropertiesNV structure