vulkan: Update Vulkan XML and headers to 1.2.145
[mesa.git] / include / vulkan / vulkan_metal.h
1 #ifndef VULKAN_METAL_H_
2 #define VULKAN_METAL_H_ 1
3
4 /*
5 ** Copyright (c) 2015-2020 The Khronos Group Inc.
6 **
7 ** SPDX-License-Identifier: Apache-2.0
8 */
9
10 /*
11 ** This header is generated from the Khronos Vulkan XML API Registry.
12 **
13 */
14
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20
21
22 #define VK_EXT_metal_surface 1
23
24 #ifdef __OBJC__
25 @class CAMetalLayer;
26 #else
27 typedef void CAMetalLayer;
28 #endif
29
30 #define VK_EXT_METAL_SURFACE_SPEC_VERSION 1
31 #define VK_EXT_METAL_SURFACE_EXTENSION_NAME "VK_EXT_metal_surface"
32 typedef VkFlags VkMetalSurfaceCreateFlagsEXT;
33 typedef struct VkMetalSurfaceCreateInfoEXT {
34 VkStructureType sType;
35 const void* pNext;
36 VkMetalSurfaceCreateFlagsEXT flags;
37 const CAMetalLayer* pLayer;
38 } VkMetalSurfaceCreateInfoEXT;
39
40 typedef VkResult (VKAPI_PTR *PFN_vkCreateMetalSurfaceEXT)(VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
41
42 #ifndef VK_NO_PROTOTYPES
43 VKAPI_ATTR VkResult VKAPI_CALL vkCreateMetalSurfaceEXT(
44 VkInstance instance,
45 const VkMetalSurfaceCreateInfoEXT* pCreateInfo,
46 const VkAllocationCallbacks* pAllocator,
47 VkSurfaceKHR* pSurface);
48 #endif
49
50 #ifdef __cplusplus
51 }
52 #endif
53
54 #endif