Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- enumerateInstanceExtensionProperties :: ("layerName" ::: Maybe ByteString) -> IO (Result, "properties" ::: Vector ExtensionProperties)
- enumerateDeviceExtensionProperties :: PhysicalDevice -> ("layerName" ::: Maybe ByteString) -> IO (Result, "properties" ::: Vector ExtensionProperties)
- data ExtensionProperties = ExtensionProperties {}
Documentation
enumerateInstanceExtensionProperties :: ("layerName" ::: Maybe ByteString) -> IO (Result, "properties" ::: Vector ExtensionProperties) Source #
vkEnumerateInstanceExtensionProperties - Returns up to requested number of global extension properties
Parameters
pLayerName
is eitherNULL
or a pointer to a null-terminated UTF-8 string naming the layer to retrieve extensions from.
pPropertyCount
is a pointer to an integer related to the number of extension properties available or queried, as described below.pProperties
is eitherNULL
or a pointer to an array ofExtensionProperties
structures.
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 user 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. If
pPropertyCount
is smaller than the number of extensions available,
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
pLayerName
is notNULL
,pLayerName
must be a null-terminated UTF-8 string
pPropertyCount
must be a valid pointer to auint32_t
value- If the value referenced by
pPropertyCount
is not0
, andpProperties
is notNULL
,pProperties
must be a valid pointer to an array ofpPropertyCount
ExtensionProperties
structures
Return Codes
See Also
enumerateDeviceExtensionProperties :: PhysicalDevice -> ("layerName" ::: Maybe ByteString) -> IO (Result, "properties" ::: Vector ExtensionProperties) Source #
vkEnumerateDeviceExtensionProperties - Returns properties of available physical device extensions
Parameters
PhysicalDevice
is the physical device that will be queried.
pLayerName
is eitherNULL
or a pointer to a null-terminated UTF-8 string naming the layer to retrieve extensions from.pPropertyCount
is a pointer to an integer related to the number of extension properties available or queried, and is treated in the same fashion as theenumerateInstanceExtensionProperties
::pPropertyCount
parameter.pProperties
is eitherNULL
or a pointer to an array ofExtensionProperties
structures.
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 device extensions provided by
that layer are returned.
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)
PhysicalDevice
must be a validPhysicalDevice
handle
- If
pLayerName
is notNULL
,pLayerName
must be a null-terminated UTF-8 string pPropertyCount
must be a valid pointer to auint32_t
value- If the value referenced by
pPropertyCount
is not0
, andpProperties
is notNULL
,pProperties
must be a valid pointer to an array ofpPropertyCount
ExtensionProperties
structures
Return Codes
See Also
data ExtensionProperties Source #
VkExtensionProperties - Structure specifying an extension properties
See Also
enumerateDeviceExtensionProperties
,
enumerateInstanceExtensionProperties
ExtensionProperties | |
|