Go to the documentation of this file.
30 #if defined(__GNUC__) && __GNUC__ >= 4
31 #define VK_LAYER_EXPORT __attribute__((visibility("default")))
32 #elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
33 #define VK_LAYER_EXPORT __attribute__((visibility("default")))
35 #define VK_LAYER_EXPORT
38 #define MAX_NUM_UNKNOWN_EXTS 250
45 #define CURRENT_LOADER_LAYER_INTERFACE_VERSION 2
46 #define MIN_SUPPORTED_LOADER_LAYER_INTERFACE_VERSION 1
48 #define VK_CURRENT_CHAIN_VERSION 1
83 typedef enum VkLayerFunction_ {
88 typedef struct VkLayerInstanceLink_ {
89 struct VkLayerInstanceLink_ *
pNext;
101 typedef struct VkLayerDeviceInfo_ {
121 typedef struct VkLayerDeviceLink_ {
162 #if defined(__cplusplus)
164 return pfnNextLayer(
pNextLink, pLayerName, pPropertyCount, pProperties);
174 #if defined(__cplusplus)
176 return pfnNextLayer(
pNextLink, pPropertyCount, pProperties);
186 #if defined(__cplusplus)
188 return pfnNextLayer(
pNextLink, pApiVersion);
PFN_vkGetDeviceProcAddr pfnNextGetDeviceProcAddr
PFN_vkGetInstanceProcAddr pfnGetInstanceProcAddr
PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr
@ LAYER_NEGOTIATE_INTERFACE_STRUCT
PFN_vkVoidFunction(VKAPI_PTR * PFN_vkGetInstanceProcAddr)(VkInstance instance, const char *pName)
@ VK_CHAIN_TYPE_ENUMERATE_INSTANCE_LAYER_PROPERTIES
PFN_GetPhysicalDeviceProcAddr pfnGetPhysicalDeviceProcAddr
void(VKAPI_PTR * PFN_vkVoidFunction)(void)
@ VK_CHAIN_TYPE_ENUMERATE_INSTANCE_VERSION
PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr
struct VkLayerDeviceLink_ * pNext
PFN_GetPhysicalDeviceProcAddr pfnNextGetPhysicalDeviceProcAddr
@ VK_CHAIN_TYPE_ENUMERATE_INSTANCE_EXTENSION_PROPERTIES
VkResult(VKAPI_PTR *pfnNextLayer)(const struct VkEnumerateInstanceVersionChain *
uint32_t VkLayerProperties *const struct VkEnumerateInstanceLayerPropertiesChain * pNextLink
@ VK_LOADER_DATA_CALLBACK
VkResult(VKAPI_PTR * PFN_vkSetInstanceLoaderData)(VkInstance instance, void *object)
VkNegotiateLayerStructType
VkResult(VKAPI_PTR * PFN_PhysDevExt)(VkPhysicalDevice phys_device)
VkNegotiateLayerStructType sType
struct VkLayerInstanceLink_ * pNext
uint32_t *const struct VkEnumerateInstanceVersionChain * pNextLink
PFN_vkVoidFunction(VKAPI_PTR * PFN_vkGetDeviceProcAddr)(VkDevice device, const char *pName)
PFN_vkSetInstanceLoaderData pfnSetInstanceLoaderData
PFN_vkSetDeviceLoaderData pfnSetDeviceLoaderData
VkResult(VKAPI_PTR * PFN_vkNegotiateLoaderLayerInterfaceVersion)(VkNegotiateLayerInterface *pVersionStruct)
VkResult(VKAPI_PTR * PFN_vkSetDeviceLoaderData)(VkDevice device, void *object)
VkResult(VKAPI_PTR *pfnNextLayer)(const struct VkEnumerateInstanceExtensionPropertiesChain *
uint32_t loaderLayerInterfaceVersion
VkResult(VKAPI_PTR *pfnNextLayer)(const struct VkEnumerateInstanceLayerPropertiesChain *
VkLayerInstanceLink * pLayerInfo
VKAPI_ATTR VkResult VKAPI_CALL vkNegotiateLoaderLayerInterfaceVersion(VkNegotiateLayerInterface *pVersionStruct)
PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr
@ LAYER_NEGOTIATE_UNINTIALIZED
const char uint32_t VkExtensionProperties *const struct VkEnumerateInstanceExtensionPropertiesChain * pNextLink
static SDL_AudioDeviceID device
PFN_vkVoidFunction(VKAPI_PTR * PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char *pName)
PFN_vkGetDeviceProcAddr pfnGetDeviceProcAddr
VkLayerDeviceLink * pLayerInfo