enumerateInstanceExtensionProperties :: MonadIO io=>"layerName"
::: Maybe ByteStringpLayerNameis eitherNULLor a pointer to a null-terminated UTF-8 string naming the layer to retrieve extensions from.-> io (Result,"properties"
::: Vector ExtensionProperties)
vkEnumerateInstanceExtensionProperties - Returns up to requested number of global extension properties
Description
When pLayerName parameter is NULL, only extensions provided by the
Vulkan implementation or by implicitly enabled layers are returned. When
pLayerName is the name of a layer, the instance extensions provided by
that layer are returned.
If pProperties is NULL, then the number of extensions properties
available is returned in pPropertyCount. Otherwise, pPropertyCount
must point to a variable set by the application to the number of
elements in the pProperties array, and on return the variable is
overwritten with the number of structures actually written to
pProperties. If pPropertyCount is less than the number of extension
properties available, at most pPropertyCount structures will be
written, and INCOMPLETE will be returned
instead of SUCCESS, to indicate that not
all the available properties were returned.
Because the list of available layers may change externally between calls
to enumerateInstanceExtensionProperties, two calls may retrieve
different results if a pLayerName is available in one call but not in
another. The extensions supported by a layer may also change between two
calls, e.g. if the layer implementation is replaced by a different
version between those calls.
Implementations must not advertise any pair of extensions that cannot be enabled together due to behavioral differences, or any extension that cannot be enabled against the advertised version.
Valid Usage (Implicit)
If
pLayerNameis notNULL,pLayerNamemust be a null-terminated UTF-8 string
pPropertyCountmust be a valid pointer to auint32_tvalueIf the value referenced by
pPropertyCountis not0, andpPropertiesis notNULL,pPropertiesmust be a valid pointer to an array ofpPropertyCountExtensionProperties structures