VkSurfaceProtectedCapabilitiesKHR
An application queries if a protected VkSurfaceKHR is displayable on a
specific windowing system using VkSurfaceProtectedCapabilitiesKHR
,
which can be passed in pNext
parameter of
VkSurfaceCapabilities2KHR
.
The VkSurfaceProtectedCapabilitiesKHR
structure is defined as:
typedef struct VkSurfaceProtectedCapabilitiesKHR {
VkStructureType sType;
const void* pNext;
VkBool32 supportsProtected;
} VkSurfaceProtectedCapabilitiesKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.supportsProtected
specifies whether a protected swapchain created from VkPhysicalDeviceSurfaceInfo2KHR::surface
for a particular windowing system can be displayed on screen or not. IfsupportsProtected
isVK_TRUE
, then creation of swapchains with theVK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR
flag set must be supported forsurface
.
If the VK_GOOGLE_surfaceless_query extension is enabled, the value
returned in supportsProtected
will be identical for every valid
surface created on this physical device, and so in the
vkGetPhysicalDeviceSurfaceCapabilities2KHR call,
VkPhysicalDeviceSurfaceInfo2KHR::surface
can be
VK_NULL_HANDLE.
In that case, the contents of
VkSurfaceCapabilities2KHR::surfaceCapabilities
as well as any
other struct chained to it will be undefined:.
Valid Usage (Implicit)
VUID-VkSurfaceProtectedCapabilitiesKHR-sType-sType
sType
must be VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR