diff options
author | 2017-03-16 16:10:15 +1300 | |
---|---|---|
committer | 2017-03-16 10:40:34 -0700 | |
commit | e2d3ee180a2521c8db03a9702cb2669735f239ac (patch) | |
tree | af17223fc68ff48ad491ef3c39c9bbe0fd19327a | |
parent | 9f3283a11aa74e2afdcde38d290f08323c537456 (diff) |
vulkan: Update header for KHR_get_surface_capabilities2
.. and new struct added to latest version of
KHR_shared_presentable_image.
Test: build
Change-Id: I653d0d8ad384c256e9a5c4cb79554360a5b2606e
-rw-r--r-- | vulkan/api/vulkan.api | 57 | ||||
-rw-r--r-- | vulkan/include/vulkan/vulkan.h | 51 | ||||
-rw-r--r-- | vulkan/libvulkan/api_gen.cpp | 4 | ||||
-rw-r--r-- | vulkan/libvulkan/api_gen.h | 2 | ||||
-rw-r--r-- | vulkan/libvulkan/driver_gen.cpp | 2 | ||||
-rw-r--r-- | vulkan/libvulkan/driver_gen.h | 4 | ||||
-rw-r--r-- | vulkan/nulldrv/null_driver_gen.cpp | 2 |
7 files changed, 116 insertions, 6 deletions
diff --git a/vulkan/api/vulkan.api b/vulkan/api/vulkan.api index b4708b0245..86dd0016ff 100644 --- a/vulkan/api/vulkan.api +++ b/vulkan/api/vulkan.api @@ -320,6 +320,10 @@ define NULL_HANDLE 0 @extension("VK_KHR_shared_presentable_image") define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1 @extension("VK_KHR_shared_presentable_image") define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image" +// 119 +@extension("VK_KHR_get_surface_capabilities2") define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1 +@extension("VK_KHR_get_surface_capabilities2") define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2" + // 123 @extension("VK_MVK_ios_surface") define VK_MVK_IOS_SURFACE_SPEC_VERSION 1 @extension("VK_MVK_ios_surface") define VK_MVK_IOS_SURFACE_EXTENSION_NAME "VK_MVK_ios_surface" @@ -1082,6 +1086,14 @@ enum VkStructureType { //@extension("VK_EXT_hdr_metadata") // 106 VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000, + //@extension("VK_KHR_shared_presentable_image") // 111 + VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000, + + //@extension("VK_KHR_get_surface_capabilities2") // 119 + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000, + VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001, + VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002, + //@extension("VK_MVK_ios_surface") // 123 VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000, @@ -4245,6 +4257,34 @@ class VkHdrMetadataEXT { f32 maxFrameAverageLightLevel } +@extension("VK_KHR_shared_presentable_image") // 111 +class VkSharedPresentSurfaceCapabilitiesKHR { + VkStructureType sType + const void* pNext + VkImageUsageFlags sharedPresentSupportedUsageFlags +} + +@extension("VK_KHR_get_surface_capabilities2") // 119 +class VkPhysicalDeviceSurfaceInfo2KHR { + VkStructureType sType + const void* pNext + VkSurfaceKHR surface +} + +@extension("VK_KHR_get_surface_capabilities2") // 119 +class VkSurfaceCapabilities2KHR { + VkStructureType sType + void* pNext + VkSurfaceCapabilitiesKHR surfaceCapabilities +} + +@extension("VK_KHR_get_surface_capabilities2") // 119 +class VkSurfaceFormat2KHR { + VkStructureType sType + void* pNext + VkSurfaceFormatKHR surfaceFormat +} + @extension("VK_MVK_ios_surface") // 123 class VkIOSSurfaceCreateInfoMVK { VkStructureType sType @@ -7418,6 +7458,23 @@ cmd VkResult vkGetSwapchainStatusKHR( return ? } +@extension("VK_KHR_get_surface_capabilities2") // 119 +cmd VkResult vkGetPhysicalDeviceSurfaceCapabilities2KHR( + VkPhysicalDevice physicalDevice, + const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, + VkSurfaceCapabilities2KHR* pSurfaceCapabilities) { + return ? +} + +@extension("VK_KHR_get_surface_capabilities2") // 119 +cmd VkResult vkGetPhysicalDeviceSurfaceFormats2KHR( + VkPhysicalDevice physicalDevice, + const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, + u32* pSurfaceFormatCount, + VkSurfaceFormat2KHR* pSurfaceFormats) { + return ? +} + @extension("VK_MVK_ios_surface") // 123 cmd VkResult vkCreateIOSSurfaceMVK( VkInstance instance, diff --git a/vulkan/include/vulkan/vulkan.h b/vulkan/include/vulkan/vulkan.h index 8bb5448425..22939606e9 100644 --- a/vulkan/include/vulkan/vulkan.h +++ b/vulkan/include/vulkan/vulkan.h @@ -301,6 +301,10 @@ typedef enum VkStructureType { VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT = 1000099000, VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT = 1000099001, VK_STRUCTURE_TYPE_HDR_METADATA_EXT = 1000105000, + VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR = 1000111000, + VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR = 1000119000, + VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR = 1000119001, + VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR = 1000119002, VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK = 1000122000, VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK = 1000123000, VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO, @@ -5766,6 +5770,13 @@ VKAPI_ATTR void VKAPI_CALL vkSetHdrMetadataEXT( #define VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION 1 #define VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME "VK_KHR_shared_presentable_image" +typedef struct VkSharedPresentSurfaceCapabilitiesKHR { + VkStructureType sType; + void* pNext; + VkImageUsageFlags sharedPresentSupportedUsageFlags; +} VkSharedPresentSurfaceCapabilitiesKHR; + + typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainStatusKHR)(VkDevice device, VkSwapchainKHR swapchain); #ifndef VK_NO_PROTOTYPES @@ -5774,6 +5785,46 @@ VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainStatusKHR( VkSwapchainKHR swapchain); #endif +#define VK_KHR_get_surface_capabilities2 1 +#define VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION 1 +#define VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME "VK_KHR_get_surface_capabilities2" + +typedef struct VkPhysicalDeviceSurfaceInfo2KHR { + VkStructureType sType; + const void* pNext; + VkSurfaceKHR surface; +} VkPhysicalDeviceSurfaceInfo2KHR; + +typedef struct VkSurfaceCapabilities2KHR { + VkStructureType sType; + void* pNext; + VkSurfaceCapabilitiesKHR surfaceCapabilities; +} VkSurfaceCapabilities2KHR; + +typedef struct VkSurfaceFormat2KHR { + VkStructureType sType; + void* pNext; + VkSurfaceFormatKHR surfaceFormat; +} VkSurfaceFormat2KHR; + + +typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, VkSurfaceCapabilities2KHR* pSurfaceCapabilities); +typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceSurfaceFormats2KHR)(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, uint32_t* pSurfaceFormatCount, VkSurfaceFormat2KHR* pSurfaceFormats); + +#ifndef VK_NO_PROTOTYPES +VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceCapabilities2KHR( + VkPhysicalDevice physicalDevice, + const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, + VkSurfaceCapabilities2KHR* pSurfaceCapabilities); + +VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceSurfaceFormats2KHR( + VkPhysicalDevice physicalDevice, + const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo, + uint32_t* pSurfaceFormatCount, + VkSurfaceFormat2KHR* pSurfaceFormats); +#endif + + #ifdef VK_USE_PLATFORM_IOS_MVK #define VK_MVK_ios_surface 1 diff --git a/vulkan/libvulkan/api_gen.cpp b/vulkan/libvulkan/api_gen.cpp index 69e38de5ad..54c77f1e6a 100644 --- a/vulkan/libvulkan/api_gen.cpp +++ b/vulkan/libvulkan/api_gen.cpp @@ -110,7 +110,7 @@ VKAPI_ATTR VkResult disabledCreateAndroidSurfaceKHR(VkInstance instance, const V // clang-format on -} // anonymous +} // namespace bool InitDispatchTable( VkInstance instance, @@ -473,7 +473,9 @@ VKAPI_ATTR PFN_vkVoidFunction GetDeviceProcAddr(VkDevice device, const char* pNa "vkGetPhysicalDeviceQueueFamilyProperties2KHR", "vkGetPhysicalDeviceSparseImageFormatProperties", "vkGetPhysicalDeviceSparseImageFormatProperties2KHR", + "vkGetPhysicalDeviceSurfaceCapabilities2KHR", "vkGetPhysicalDeviceSurfaceCapabilitiesKHR", + "vkGetPhysicalDeviceSurfaceFormats2KHR", "vkGetPhysicalDeviceSurfaceFormatsKHR", "vkGetPhysicalDeviceSurfacePresentModesKHR", "vkGetPhysicalDeviceSurfaceSupportKHR", diff --git a/vulkan/libvulkan/api_gen.h b/vulkan/libvulkan/api_gen.h index 7f8d274b60..3e50fda949 100644 --- a/vulkan/libvulkan/api_gen.h +++ b/vulkan/libvulkan/api_gen.h @@ -19,8 +19,8 @@ #ifndef LIBVULKAN_API_GEN_H #define LIBVULKAN_API_GEN_H -#include <bitset> #include <vulkan/vulkan.h> +#include <bitset> #include "driver_gen.h" namespace vulkan { diff --git a/vulkan/libvulkan/driver_gen.cpp b/vulkan/libvulkan/driver_gen.cpp index fc3f87a188..9b3695faf7 100644 --- a/vulkan/libvulkan/driver_gen.cpp +++ b/vulkan/libvulkan/driver_gen.cpp @@ -348,7 +348,7 @@ const ProcHook g_proc_hooks[] = { // clang-format on }; -} // anonymous +} // namespace const ProcHook* GetProcHook(const char* name) { const auto& begin = g_proc_hooks; diff --git a/vulkan/libvulkan/driver_gen.h b/vulkan/libvulkan/driver_gen.h index 738da5b0f3..1fc0ed5d4e 100644 --- a/vulkan/libvulkan/driver_gen.h +++ b/vulkan/libvulkan/driver_gen.h @@ -19,9 +19,9 @@ #ifndef LIBVULKAN_DRIVER_GEN_H #define LIBVULKAN_DRIVER_GEN_H -#include <bitset> -#include <vulkan/vulkan.h> #include <vulkan/vk_android_native_buffer.h> +#include <vulkan/vulkan.h> +#include <bitset> namespace vulkan { namespace driver { diff --git a/vulkan/nulldrv/null_driver_gen.cpp b/vulkan/nulldrv/null_driver_gen.cpp index 7cbbdb1f6a..25ee65add5 100644 --- a/vulkan/nulldrv/null_driver_gen.cpp +++ b/vulkan/nulldrv/null_driver_gen.cpp @@ -16,8 +16,8 @@ // WARNING: This file is generated. See ../README.md for instructions. -#include "null_driver_gen.h" #include <algorithm> +#include "null_driver_gen.h" using namespace null_driver; |