aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJon Ashburn <jon@lunarg.com>2015-05-06 10:15:07 -0600
committerJon Ashburn <jon@lunarg.com>2015-05-07 16:24:43 -0600
commitc5104f208dd40c53c47a77d84b4c5cd68065af26 (patch)
tree2bcce4f0d3cf736a33e2c0127fedd79a1267f4e9 /include
parent8abcd57aee10259ad7066200383c0769bdb7e3f4 (diff)
downloadusermoji-c5104f208dd40c53c47a77d84b4c5cd68065af26.tar.xz
misc: Add vkGetInstanceProcAddr() entrypoint
Adding this entrypoint as this has been discussed in khronos and is needed for the loader/layer/extension proposal. Caveats: 1) Have not updated layers or any tests/demos yet that will come later; 2) No one including loader is using this call yet; 3) Leaving exisitng vkGetProcAddr() as is for now; later once loader is using vkGetInstanceProcAddr call can switch vkGetProcAddr() to vkGetDeviceProcAddr()
Diffstat (limited to 'include')
-rw-r--r--include/vkLayer.h1
-rw-r--r--include/vulkan.h8
2 files changed, 7 insertions, 2 deletions
diff --git a/include/vkLayer.h b/include/vkLayer.h
index e95811b8..87a79e5d 100644
--- a/include/vkLayer.h
+++ b/include/vkLayer.h
@@ -26,6 +26,7 @@ typedef struct VkBaseLayerObject_
typedef struct VkLayerDispatchTable_
{
PFN_vkGetProcAddr GetProcAddr;
+ PFN_vkGetInstanceProcAddr GetInstanceProcAddr;
PFN_vkCreateInstance CreateInstance;
PFN_vkDestroyInstance DestroyInstance;
PFN_vkEnumeratePhysicalDevices EnumeratePhysicalDevices;
diff --git a/include/vulkan.h b/include/vulkan.h
index 00ebbf51..ed222438 100644
--- a/include/vulkan.h
+++ b/include/vulkan.h
@@ -33,7 +33,7 @@
#include "vk_platform.h"
// Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 93, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 93, 1)
#ifdef __cplusplus
extern "C"
@@ -2136,6 +2136,7 @@ typedef VkResult (VKAPI *PFN_vkCreateInstance)(const VkInstanceCreateInfo* pCrea
typedef VkResult (VKAPI *PFN_vkDestroyInstance)(VkInstance instance);
typedef VkResult (VKAPI *PFN_vkEnumeratePhysicalDevices)(VkInstance instance, uint32_t* pPhysicalDeviceCount, VkPhysicalDevice* pPhysicalDevices);
typedef VkResult (VKAPI *PFN_vkGetPhysicalDeviceInfo)(VkPhysicalDevice physicalDevice, VkPhysicalDeviceInfoType infoType, size_t* pDataSize, void* pData);
+typedef void * (VKAPI *PFN_vkGetInstanceProcAddr)(VkInstance instance, const char * pName);
typedef void * (VKAPI *PFN_vkGetProcAddr)(VkPhysicalDevice physicalDevice, const char * pName);
typedef VkResult (VKAPI *PFN_vkCreateDevice)(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, VkDevice* pDevice);
typedef VkResult (VKAPI *PFN_vkDestroyDevice)(VkDevice device);
@@ -2271,10 +2272,13 @@ VkResult VKAPI vkGetPhysicalDeviceInfo(
size_t* pDataSize,
void* pData);
+void * VKAPI vkGetInstanceProcAddr(
+ VkInstance instance,
+ const char* pName);
+
void * VKAPI vkGetProcAddr(
VkPhysicalDevice physicalDevice,
const char* pName);
-
// Device functions
VkResult VKAPI vkCreateDevice(