etnaviv: drm: s/bo_del/_etna_bo_del/
[mesa.git] / include / vulkan / vulkan_metal.h
1 #ifndef VULKAN_METAL_H_
2 #define VULKAN_METAL_H_ 1
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 /*
9 ** Copyright (c) 2015-2019 The Khronos Group Inc.
10 **
11 ** Licensed under the Apache License, Version 2.0 (the "License");
12 ** you may not use this file except in compliance with the License.
13 ** You may obtain a copy of the License at
14 **
15 ** http://www.apache.org/licenses/LICENSE-2.0
16 **
17 ** Unless required by applicable law or agreed to in writing, software
18 ** distributed under the License is distributed on an "AS IS" BASIS,
19 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 ** See the License for the specific language governing permissions and
21 ** limitations under the License.
22 */
23
24 /*
25 ** This header is generated from the Khronos Vulkan XML API Registry.
26 **
27 */
28
29
30
31 #define VK_EXT_metal_surface 1
32
33 #ifdef __OBJC__
34 @class CAMetalLayer;
35 #else
36 typedef void CAMetalLayer;
37 #endif
38
39 #define VK_EXT_METAL_SURFACE_SPEC_VERSION 1
40 #define VK_EXT_METAL_SURFACE_EXTENSION_NAME "VK_EXT_metal_surface"
41 typedef VkFlags VkMetalSurfaceCreateFlagsEXT;
42 typedef struct VkMetalSurfaceCreateInfoEXT {
43 VkStructureType sType;
44 const void* pNext;
45 VkMetalSurfaceCreateFlagsEXT flags;
46 const CAMetalLayer* pLayer;
47 } VkMetalSurfaceCreateInfoEXT;
48
49 typedef VkResult (VKAPI_PTR *PFN_vkCreateMetalSurfaceEXT)(VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
50
51 #ifndef VK_NO_PROTOTYPES
52 VKAPI_ATTR VkResult VKAPI_CALL vkCreateMetalSurfaceEXT(
53 VkInstance instance,
54 const VkMetalSurfaceCreateInfoEXT* pCreateInfo,
55 const VkAllocationCallbacks* pAllocator,
56 VkSurfaceKHR* pSurface);
57 #endif
58
59 #ifdef __cplusplus
60 }
61 #endif
62
63 #endif