1 | #ifndef VULKAN_WAYLAND_H_ |
2 | #define VULKAN_WAYLAND_H_ 1 |
3 | |
4 | /* |
5 | ** Copyright 2015-2024 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 | // VK_KHR_wayland_surface is a preprocessor guard. Do not pass it to API calls. |
23 | #define VK_KHR_wayland_surface 1 |
24 | #define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6 |
25 | #define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" |
26 | typedef VkFlags VkWaylandSurfaceCreateFlagsKHR; |
27 | typedef struct VkWaylandSurfaceCreateInfoKHR { |
28 | VkStructureType sType; |
29 | const void* pNext; |
30 | VkWaylandSurfaceCreateFlagsKHR flags; |
31 | struct wl_display* display; |
32 | struct wl_surface* surface; |
33 | } VkWaylandSurfaceCreateInfoKHR; |
34 | |
35 | typedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); |
36 | typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display); |
37 | |
38 | #ifndef VK_NO_PROTOTYPES |
39 | VKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR( |
40 | VkInstance instance, |
41 | const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, |
42 | const VkAllocationCallbacks* pAllocator, |
43 | VkSurfaceKHR* pSurface); |
44 | |
45 | VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR( |
46 | VkPhysicalDevice physicalDevice, |
47 | uint32_t queueFamilyIndex, |
48 | struct wl_display* display); |
49 | #endif |
50 | |
51 | #ifdef __cplusplus |
52 | } |
53 | #endif |
54 | |
55 | #endif |
56 | |