OSDN Git Service

vulkan: Update from version 0.209.0 to 0.210.0
authorJesse Hall <jessehall@google.com>
Tue, 1 Dec 2015 00:22:16 +0000 (16:22 -0800)
committerJesse Hall <jessehall@google.com>
Mon, 25 Jan 2016 21:49:31 +0000 (13:49 -0800)
Change-Id: Ic5791cf1193de1e5d2ce355d9dcc4450b0def85a
(cherry picked from commit 5fa30181e473f9055884404545e7345c75440e64)

vulkan/api/vulkan.api
vulkan/include/vulkan/vulkan.h
vulkan/libvulkan/get_proc_addr.cpp.tmpl

index d35e11d..243951d 100644 (file)
@@ -27,7 +27,7 @@ import platform "platform.api"
 
 // API version (major.minor.patch)
 define VERSION_MAJOR 0
-define VERSION_MINOR 209
+define VERSION_MINOR 210
 define VERSION_PATCH 0
 
 // API limits
@@ -57,7 +57,7 @@ define NULL_HANDLE 0
 @extension("VK_KHR_display") define VK_KHR_DISPLAY_EXTENSION_NUMBER             3
 @extension("VK_KHR_display") define VK_KHR_DISPLAY_EXTENSION_NAME               "VK_KHR_display"
 
-@extension("VK_KHR_display_swapchain") define VK_KHR_DISPLAY_SWAPCHAIN_REVISION         8
+@extension("VK_KHR_display_swapchain") define VK_KHR_DISPLAY_SWAPCHAIN_REVISION         9
 @extension("VK_KHR_display_swapchain") define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NUMBER 4
 @extension("VK_KHR_display_swapchain") define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME   "VK_KHR_display_swapchain"
 
@@ -630,8 +630,7 @@ enum VkStructureType {
     VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR           = 0xc0000c01,
 
     //@extension("VK_KHR_display_swapchain")
-    VK_STRUCTURE_TYPE_DISPLAY_SWAPCHAIN_CREATE_INFO_KHR         = 0xc0001000,
-    VK_STRUCTURE_TYPE_DISPLAY_DISPLAY_PRESENT_INFO_KHR          = 0xc0001001,
+    VK_STRUCTURE_TYPE_DISPLAY_DISPLAY_PRESENT_INFO_KHR          = 0xc0001000,
 }
 
 enum VkSubpassContents {
@@ -673,7 +672,7 @@ enum VkResult {
     VK_ERROR_OUT_OF_DATE_KHR                                = 0xC0000804,
 
     //@extension("VK_KHR_display_swapchain")
-    VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                       = 0xC0001002,
+    VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                       = 0xC0001001,
 
     //@extension("VK_KHR_android_surface")
     VK_ERROR_NATIVE_WINDOW_IN_USE_KHR                       = 0xC0002400,
@@ -1147,15 +1146,15 @@ bitfield VkCullModeFlagBits {
 type VkFlags VkSurfaceTransformFlagsKHR
 @extension("VK_KHR_swapchain")
 bitfield VkSurfaceTransformFlagBitsKHR {
-    VK_SURFACE_TRANSFORM_NONE_BIT_KHR                       = 0x00000001,
-    VK_SURFACE_TRANSFORM_ROT90_BIT_KHR                      = 0x00000002,
-    VK_SURFACE_TRANSFORM_ROT180_BIT_KHR                     = 0x00000004,
-    VK_SURFACE_TRANSFORM_ROT270_BIT_KHR                     = 0x00000008,
-    VK_SURFACE_TRANSFORM_HMIRROR_BIT_KHR                    = 0x00000010,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT90_BIT_KHR              = 0x00000020,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT180_BIT_KHR             = 0x00000040,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT270_BIT_KHR             = 0x00000080,
-    VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR                    = 0x00000100,
+    VK_SURFACE_TRANSFORM_NONE_BIT_KHR                           = 0x00000001,
+    VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR                      = 0x00000002,
+    VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR                     = 0x00000004,
+    VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR                     = 0x00000008,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR              = 0x00000010,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR    = 0x00000020,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR   = 0x00000040,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR   = 0x00000080,
+    VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR                        = 0x00000100,
 }
 
 @extension("VK_KHR_swapchain")
@@ -1190,6 +1189,12 @@ type VkFlags VkDisplaySurfaceCreateFlagsKHR
 //bitfield VkDisplaySurfaceCreateFlagBitsKHR {
 //}
 
+@extension("VK_KHR_display")
+type VkFlags VkDisplayModeCreateFlagsKHR
+//@extension("VK_KHR_display")
+//bitfield VkDisplayModeCreateFlagBitsKHR {
+//}
+
 
 //////////////////
 //  Structures  //
@@ -2366,6 +2371,7 @@ class VkDisplayModePropertiesKHR {
 class VkDisplayModeCreateInfoKHR {
     VkStructureType                             sType
     const void*                                 pNext
+    VkDisplayModeCreateFlagsKHR                 flags
     VkDisplayModeParametersKHR                  parameters
 }
 
@@ -2403,13 +2409,6 @@ class VkDisplaySurfaceCreateInfoKHR {
 }
 
 @extension("VK_KHR_display_swapchain")
-class VkDisplaySwapchainCreateInfoKHR {
-    VkStructureType                             sType
-    const void*                                 pNext
-    const VkSwapchainCreateInfoKHR*             pNextSwapchainCreateInfo
-}
-
-@extension("VK_KHR_display_swapchain")
 class VkDisplayPresentInfoKHR {
     VkStructureType                             sType
     const void*                                 pNext
@@ -4813,7 +4812,7 @@ cmd VkResult vkCreateDisplayModeKHR(
 @extension("VK_KHR_display")
 cmd VkResult vkGetDisplayPlaneCapabilitiesKHR(
         VkPhysicalDevice                        physicalDevice,
-        VkDisplayModeCreateInfoKHR              mode,
+        VkDisplayModeKHR                        mode,
         u32                                     planeIndex,
         VkDisplayPlaneCapabilitiesKHR*          pCapabilities) {
     physicalDeviceObject := GetPhysicalDevice(physicalDevice)
@@ -4829,6 +4828,16 @@ cmd VkResult vkCreateDisplayPlaneSurfaceKHR(
     return ?
 }
 
+@extension("VK_KHR_display_swapchain")
+cmd VkResult vkCreateSharedSwapchainsKHR(
+        VkDevice                                device,
+        u32                                     swapchainCount,
+        const VkSwapchainCreateInfoKHR*         pCreateInfos,
+        const VkAllocationCallbacks*            pAllocator,
+        VkSwapchainKHR*                         pSwapchains) {
+    return ?
+}
+
 @extension("VK_KHR_xlib_surface")
 cmd VkResult vkCreateXlibSurfaceKHR(
         VkInstance                              instance,
index a255e1f..598d98e 100644 (file)
@@ -41,7 +41,7 @@ extern "C" {
     ((major << 22) | (minor << 12) | patch)
 
 // Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 209, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 210, 0)
 
 
 #define VK_NULL_HANDLE 0
@@ -128,7 +128,7 @@ typedef enum VkResult {
     VK_ERROR_SURFACE_LOST_KHR = 0xC0000400,
     VK_SUBOPTIMAL_KHR = 0x40000403,
     VK_ERROR_OUT_OF_DATE_KHR = 0xC0000804,
-    VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = 0xC0001002,
+    VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = 0xC0001001,
     VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = 0xC0002400,
     VK_RESULT_BEGIN_RANGE = VK_ERROR_FORMAT_NOT_SUPPORTED,
     VK_RESULT_END_RANGE = VK_INCOMPLETE,
@@ -189,8 +189,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PRESENT_INFO_KHR = 0xC0000801,
     VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR = 0xC0000C00,
     VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR = 0xC0000C01,
-    VK_STRUCTURE_TYPE_DISPLAY_SWAPCHAIN_CREATE_INFO_KHR = 0xC0001000,
-    VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 0xC0001001,
+    VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR = 0xC0001000,
     VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,
     VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
     VK_STRUCTURE_TYPE_RANGE_SIZE = (VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
@@ -3123,13 +3122,13 @@ typedef enum VkPresentModeKHR {
 
 typedef enum VkSurfaceTransformFlagBitsKHR {
     VK_SURFACE_TRANSFORM_NONE_BIT_KHR = 0x00000001,
-    VK_SURFACE_TRANSFORM_ROT90_BIT_KHR = 0x00000002,
-    VK_SURFACE_TRANSFORM_ROT180_BIT_KHR = 0x00000004,
-    VK_SURFACE_TRANSFORM_ROT270_BIT_KHR = 0x00000008,
-    VK_SURFACE_TRANSFORM_HMIRROR_BIT_KHR = 0x00000010,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT90_BIT_KHR = 0x00000020,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT180_BIT_KHR = 0x00000040,
-    VK_SURFACE_TRANSFORM_HMIRROR_ROT270_BIT_KHR = 0x00000080,
+    VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 0x00000002,
+    VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 0x00000004,
+    VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR = 0x00000008,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR = 0x00000010,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR = 0x00000020,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 0x00000040,
+    VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 0x00000080,
     VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 0x00000100,
 } VkSurfaceTransformFlagBitsKHR;
 typedef VkFlags VkSurfaceTransformFlagsKHR;
@@ -3291,6 +3290,7 @@ typedef enum VkDisplayPlaneAlphaFlagBitsKHR {
     VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 0x00000004,
     VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 0x00000008,
 } VkDisplayPlaneAlphaFlagBitsKHR;
+typedef VkFlags VkDisplayModeCreateFlagsKHR;
 typedef VkFlags VkDisplayPlaneAlphaFlagsKHR;
 typedef VkFlags VkDisplaySurfaceCreateFlagsKHR;
 
@@ -3317,6 +3317,7 @@ typedef struct VkDisplayModePropertiesKHR {
 typedef struct VkDisplayModeCreateInfoKHR {
     VkStructureType                             sType;
     const void*                                 pNext;
+    VkDisplayModeCreateFlagsKHR                 flags;
     VkDisplayModeParametersKHR                  parameters;
 } VkDisplayModeCreateInfoKHR;
 
@@ -3356,7 +3357,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR)(V
 typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneSupportedDisplaysKHR)(VkPhysicalDevice physicalDevice, uint32_t* pDisplayCount, VkDisplayKHR* pDisplays);
 typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayModePropertiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, uint32_t* pPropertyCount, VkDisplayModePropertiesKHR* pProperties);
 typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayModeKHR)(VkPhysicalDevice physicalDevice, VkDisplayKHR display, const VkDisplayModeCreateInfoKHR*pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDisplayModeKHR* pMode);
-typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeCreateInfoKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);
+typedef VkResult (VKAPI_PTR *PFN_vkGetDisplayPlaneCapabilitiesKHR)(VkPhysicalDevice physicalDevice, VkDisplayModeKHR mode, uint32_t planeIndex, VkDisplayPlaneCapabilitiesKHR* pCapabilities);
 typedef VkResult (VKAPI_PTR *PFN_vkCreateDisplayPlaneSurfaceKHR)(VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
 
 #ifdef VK_PROTOTYPES
@@ -3390,7 +3391,7 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayModeKHR(
 
 VKAPI_ATTR VkResult VKAPI_CALL vkGetDisplayPlaneCapabilitiesKHR(
     VkPhysicalDevice                            physicalDevice,
-    VkDisplayModeCreateInfoKHR                  mode,
+    VkDisplayModeKHR                            mode,
     uint32_t                                    planeIndex,
     VkDisplayPlaneCapabilitiesKHR*              pCapabilities);
 
@@ -3402,16 +3403,10 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateDisplayPlaneSurfaceKHR(
 #endif
 
 #define VK_KHR_display_swapchain 1
-#define VK_KHR_DISPLAY_SWAPCHAIN_REVISION 8
+#define VK_KHR_DISPLAY_SWAPCHAIN_REVISION 9
 #define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NUMBER 4
 #define VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME "VK_KHR_display_swapchain"
 
-typedef struct VkDisplaySwapchainCreateInfoKHR {
-    VkStructureType                             sType;
-    const void*                                 pNext;
-    const VkSwapchainCreateInfoKHR*             pNextSwapchainCreateInfo;
-} VkDisplaySwapchainCreateInfoKHR;
-
 typedef struct VkDisplayPresentInfoKHR {
     VkStructureType                             sType;
     const void*                                 pNext;
@@ -3421,6 +3416,16 @@ typedef struct VkDisplayPresentInfoKHR {
 } VkDisplayPresentInfoKHR;
 
 
+typedef VkResult (VKAPI_PTR *PFN_vkCreateSharedSwapchainsKHR)(VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator, VkSwapchainKHR* pSwapchains);
+
+#ifdef VK_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateSharedSwapchainsKHR(
+    VkDevice                                    device,
+    uint32_t                                    swapchainCount,
+    const VkSwapchainCreateInfoKHR*             pCreateInfos,
+    const VkAllocationCallbacks*                pAllocator,
+    VkSwapchainKHR*                             pSwapchains);
+#endif
 
 #ifdef VK_USE_PLATFORM_XLIB_KHR
 #define VK_KHR_xlib_surface 1
index aad177d..423dea4 100644 (file)
@@ -217,8 +217,21 @@ bool LoadDeviceVtbl(VkDevice device,
         success = false;
     }
     {{range $f := AllCommands $}}
+      {{if and (eq (Macro "Vtbl" $f) "Device") (not (eq (Macro "FunctionName" $f) "vkGetDeviceProcAddr"))}}
+        {{if not (GetAnnotation $f "extension")}}
+    vtbl.{{TrimPrefix "vk" (Macro "FunctionName" $f)}} = §
+        reinterpret_cast<{{Macro "FunctionPtrName" $f}}>(§
+            get_proc_addr(device, "{{Macro "FunctionName" $f}}"));
+    if (UNLIKELY(!vtbl.{{TrimPrefix "vk" (Macro "FunctionName" $f)}})) {
+        ALOGE("missing device proc: %s", "{{Macro "FunctionName" $f}}");
+        success = false;
+    }
+        {{end}}
+      {{end}}
+    {{end}}
+    {{range $f := AllCommands $}}
       {{if eq (Macro "Vtbl" $f) "Device"}}
-        {{if not (eq (Macro "FunctionName" $f) "vkGetDeviceProcAddr")}}
+        {{if and (GetAnnotation $f "extension") (Macro "IsDispatched" $f)}}
     vtbl.{{TrimPrefix "vk" (Macro "FunctionName" $f)}} = §
         reinterpret_cast<{{Macro "FunctionPtrName" $f}}>(§
             get_proc_addr(device, "{{Macro "FunctionName" $f}}"));