aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCourtney Goeltzenleuchter <courtneygo@google.com>2016-01-08 11:40:27 -0700
committerJon Ashburn <jon@lunarg.com>2016-01-20 18:04:25 -0700
commit8198939289db88989cae0acdd59df916b9df9603 (patch)
tree947c6146d97cb7079381454cb04be32eac1b0a4b /include
parent485c63c8c61b0584c54e1447ce15c4d7df4acef5 (diff)
downloadusermoji-8198939289db88989cae0acdd59df916b9df9603.tar.xz
loader: Add structures to support new init method
These structures will be used to extend CreateInstance and CreateDevice to support layers. The loader will create a chain of these structures - one per layer - that tells the layer the Get*ProcAddr for the next lower part.
Diffstat (limited to 'include')
-rw-r--r--include/vulkan/vk_layer.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/vulkan/vk_layer.h b/include/vulkan/vk_layer.h
index aeb6ab91..68991824 100644
--- a/include/vulkan/vk_layer.h
+++ b/include/vulkan/vk_layer.h
@@ -222,4 +222,29 @@ typedef enum VkLayerDbgAction_
} VkLayerDbgAction;
// ------------------------------------------------------------------------------------------------
+// CreateInstance and CreateDevice support structures
+typedef struct VkLayerInstanceLink_ {
+ struct VkLayerInstanceLink_* pNext;
+ PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr;
+} VkLayerInstanceLink;
+
+typedef struct {
+ VkStructureType sType; // VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO
+ const void* pNext;
+ VkLayerInstanceLink* pLayerInfo;
+} VkLayerInstanceCreateInfo;
+
+typedef struct VkLayerDeviceLink_ {
+ struct VkLayerDeviceLink_* pNext;
+ PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr;
+ PFN_vkGetDeviceProcAddr pfnNextGetDeviceProcAddr;
+} VkLayerDeviceLink;
+
+typedef struct {
+ VkStructureType sType; // VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO
+ const void* pNext;
+ VkLayerDeviceLink* pLayerInfo;
+} VkLayerDeviceCreateInfo;
+
+// ------------------------------------------------------------------------------------------------
// API functions