HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vk_layer.h File Reference
#include "vulkan.h"
+ Include dependency graph for vk_layer.h:

Go to the source code of this file.

Classes

struct  VkNegotiateLayerInterface
 
struct  VkLayerInstanceLink_
 
struct  VkLayerDeviceInfo_
 
struct  VkLayerInstanceCreateInfo
 
struct  VkLayerDeviceLink_
 
struct  VkLayerDeviceCreateInfo
 
struct  VkChainHeader
 
struct  VkEnumerateInstanceExtensionPropertiesChain
 
struct  VkEnumerateInstanceLayerPropertiesChain
 
struct  VkEnumerateInstanceVersionChain
 

Macros

#define VK_LAYER_EXPORT
 
#define MAX_NUM_UNKNOWN_EXTS   250
 
#define CURRENT_LOADER_LAYER_INTERFACE_VERSION   2
 
#define MIN_SUPPORTED_LOADER_LAYER_INTERFACE_VERSION   1
 
#define VK_CURRENT_CHAIN_VERSION   1
 

Typedefs

typedef PFN_vkVoidFunction(VKAPI_PTRPFN_GetPhysicalDeviceProcAddr )(VkInstance instance, const char *pName)
 
typedef enum
VkNegotiateLayerStructType 
VkNegotiateLayerStructType
 
typedef struct
VkNegotiateLayerInterface 
VkNegotiateLayerInterface
 
typedef VkResult(VKAPI_PTRPFN_vkNegotiateLoaderLayerInterfaceVersion )(VkNegotiateLayerInterface *pVersionStruct)
 
typedef VkResult(VKAPI_PTRPFN_PhysDevExt )(VkPhysicalDevice phys_device)
 
typedef enum VkLayerFunction_ VkLayerFunction
 
typedef struct VkLayerInstanceLink_ VkLayerInstanceLink
 
typedef struct VkLayerDeviceInfo_ VkLayerDeviceInfo
 
typedef VkResult(VKAPI_PTRPFN_vkSetInstanceLoaderData )(VkInstance instance, void *object)
 
typedef VkResult(VKAPI_PTRPFN_vkSetDeviceLoaderData )(VkDevice device, void *object)
 
typedef VkResult(VKAPI_PTRPFN_vkLayerCreateDevice )(VkInstance instance, VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDevice *pDevice, PFN_vkGetInstanceProcAddr layerGIPA, PFN_vkGetDeviceProcAddr *nextGDPA)
 
typedef void(VKAPI_PTRPFN_vkLayerDestroyDevice )(VkDevice physicalDevice, const VkAllocationCallbacks *pAllocator, PFN_vkDestroyDevice destroyFunction)
 
typedef enum
VkLoaderFeastureFlagBits 
VkLoaderFlagBits
 
typedef VkFlags VkLoaderFeatureFlags
 
typedef struct VkLayerDeviceLink_ VkLayerDeviceLink
 
typedef enum VkChainType VkChainType
 
typedef struct VkChainHeader VkChainHeader
 
typedef struct
VkEnumerateInstanceExtensionPropertiesChain 
VkEnumerateInstanceExtensionPropertiesChain
 
typedef struct
VkEnumerateInstanceLayerPropertiesChain 
VkEnumerateInstanceLayerPropertiesChain
 
typedef struct
VkEnumerateInstanceVersionChain 
VkEnumerateInstanceVersionChain
 

Enumerations

enum  VkNegotiateLayerStructType { LAYER_NEGOTIATE_UNINTIALIZED = 0, LAYER_NEGOTIATE_INTERFACE_STRUCT = 1 }
 
enum  VkLayerFunction_ { VK_LAYER_LINK_INFO = 0, VK_LOADER_DATA_CALLBACK = 1, VK_LOADER_LAYER_CREATE_DEVICE_CALLBACK = 2, VK_LOADER_FEATURES = 3 }
 
enum  VkLoaderFeastureFlagBits { VK_LOADER_FEATURE_PHYSICAL_DEVICE_SORTING = 0x00000001 }
 
enum  VkChainType { VK_CHAIN_TYPE_UNKNOWN = 0, VK_CHAIN_TYPE_ENUMERATE_INSTANCE_EXTENSION_PROPERTIES = 1, VK_CHAIN_TYPE_ENUMERATE_INSTANCE_LAYER_PROPERTIES = 2, VK_CHAIN_TYPE_ENUMERATE_INSTANCE_VERSION = 3 }
 

Functions

VKAPI_ATTR VkResult VKAPI_CALL vkNegotiateLoaderLayerInterfaceVersion (VkNegotiateLayerInterface *pVersionStruct)
 

Macro Definition Documentation

#define CURRENT_LOADER_LAYER_INTERFACE_VERSION   2

Definition at line 45 of file vk_layer.h.

#define MAX_NUM_UNKNOWN_EXTS   250

Definition at line 38 of file vk_layer.h.

#define MIN_SUPPORTED_LOADER_LAYER_INTERFACE_VERSION   1

Definition at line 46 of file vk_layer.h.

#define VK_CURRENT_CHAIN_VERSION   1

Definition at line 48 of file vk_layer.h.

#define VK_LAYER_EXPORT

Definition at line 35 of file vk_layer.h.

Typedef Documentation

typedef PFN_vkVoidFunction(VKAPI_PTR * PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char *pName)

Definition at line 51 of file vk_layer.h.

typedef VkResult(VKAPI_PTR * PFN_PhysDevExt)(VkPhysicalDevice phys_device)

Definition at line 73 of file vk_layer.h.

typedef VkResult(VKAPI_PTR * PFN_vkLayerCreateDevice)(VkInstance instance, VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDevice *pDevice, PFN_vkGetInstanceProcAddr layerGIPA, PFN_vkGetDeviceProcAddr *nextGDPA)

Definition at line 112 of file vk_layer.h.

typedef void(VKAPI_PTR * PFN_vkLayerDestroyDevice)(VkDevice physicalDevice, const VkAllocationCallbacks *pAllocator, PFN_vkDestroyDevice destroyFunction)

Definition at line 114 of file vk_layer.h.

typedef VkResult(VKAPI_PTR * PFN_vkNegotiateLoaderLayerInterfaceVersion)(VkNegotiateLayerInterface *pVersionStruct)

Definition at line 70 of file vk_layer.h.

typedef VkResult(VKAPI_PTR * PFN_vkSetDeviceLoaderData)(VkDevice device, void *object)

Definition at line 110 of file vk_layer.h.

typedef VkResult(VKAPI_PTR * PFN_vkSetInstanceLoaderData)(VkInstance instance, void *object)

Definition at line 108 of file vk_layer.h.

typedef struct VkChainHeader VkChainHeader
typedef enum VkChainType VkChainType

Definition at line 119 of file vk_layer.h.

Enumeration Type Documentation

Enumerator
VK_CHAIN_TYPE_UNKNOWN 
VK_CHAIN_TYPE_ENUMERATE_INSTANCE_EXTENSION_PROPERTIES 
VK_CHAIN_TYPE_ENUMERATE_INSTANCE_LAYER_PROPERTIES 
VK_CHAIN_TYPE_ENUMERATE_INSTANCE_VERSION 

Definition at line 158 of file vk_layer.h.

Enumerator
VK_LAYER_LINK_INFO 
VK_LOADER_DATA_CALLBACK 
VK_LOADER_LAYER_CREATE_DEVICE_CALLBACK 
VK_LOADER_FEATURES 

Definition at line 83 of file vk_layer.h.

Enumerator
VK_LOADER_FEATURE_PHYSICAL_DEVICE_SORTING 

Definition at line 116 of file vk_layer.h.

Enumerator
LAYER_NEGOTIATE_UNINTIALIZED 
LAYER_NEGOTIATE_INTERFACE_STRUCT 

Definition at line 54 of file vk_layer.h.

Function Documentation

VKAPI_ATTR VkResult VKAPI_CALL vkNegotiateLoaderLayerInterfaceVersion ( VkNegotiateLayerInterface pVersionStruct)