1bf215546Sopenharmony_ci#ifndef VULKAN_WAYLAND_H_ 2bf215546Sopenharmony_ci#define VULKAN_WAYLAND_H_ 1 3bf215546Sopenharmony_ci 4bf215546Sopenharmony_ci/* 5bf215546Sopenharmony_ci** Copyright 2015-2022 The Khronos Group Inc. 6bf215546Sopenharmony_ci** 7bf215546Sopenharmony_ci** SPDX-License-Identifier: Apache-2.0 8bf215546Sopenharmony_ci*/ 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ci/* 11bf215546Sopenharmony_ci** This header is generated from the Khronos Vulkan XML API Registry. 12bf215546Sopenharmony_ci** 13bf215546Sopenharmony_ci*/ 14bf215546Sopenharmony_ci 15bf215546Sopenharmony_ci 16bf215546Sopenharmony_ci#ifdef __cplusplus 17bf215546Sopenharmony_ciextern "C" { 18bf215546Sopenharmony_ci#endif 19bf215546Sopenharmony_ci 20bf215546Sopenharmony_ci 21bf215546Sopenharmony_ci 22bf215546Sopenharmony_ci#define VK_KHR_wayland_surface 1 23bf215546Sopenharmony_ci#define VK_KHR_WAYLAND_SURFACE_SPEC_VERSION 6 24bf215546Sopenharmony_ci#define VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME "VK_KHR_wayland_surface" 25bf215546Sopenharmony_citypedef VkFlags VkWaylandSurfaceCreateFlagsKHR; 26bf215546Sopenharmony_citypedef struct VkWaylandSurfaceCreateInfoKHR { 27bf215546Sopenharmony_ci VkStructureType sType; 28bf215546Sopenharmony_ci const void* pNext; 29bf215546Sopenharmony_ci VkWaylandSurfaceCreateFlagsKHR flags; 30bf215546Sopenharmony_ci struct wl_display* display; 31bf215546Sopenharmony_ci struct wl_surface* surface; 32bf215546Sopenharmony_ci} VkWaylandSurfaceCreateInfoKHR; 33bf215546Sopenharmony_ci 34bf215546Sopenharmony_citypedef VkResult (VKAPI_PTR *PFN_vkCreateWaylandSurfaceKHR)(VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 35bf215546Sopenharmony_citypedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct wl_display* display); 36bf215546Sopenharmony_ci 37bf215546Sopenharmony_ci#ifndef VK_NO_PROTOTYPES 38bf215546Sopenharmony_ciVKAPI_ATTR VkResult VKAPI_CALL vkCreateWaylandSurfaceKHR( 39bf215546Sopenharmony_ci VkInstance instance, 40bf215546Sopenharmony_ci const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, 41bf215546Sopenharmony_ci const VkAllocationCallbacks* pAllocator, 42bf215546Sopenharmony_ci VkSurfaceKHR* pSurface); 43bf215546Sopenharmony_ci 44bf215546Sopenharmony_ciVKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceWaylandPresentationSupportKHR( 45bf215546Sopenharmony_ci VkPhysicalDevice physicalDevice, 46bf215546Sopenharmony_ci uint32_t queueFamilyIndex, 47bf215546Sopenharmony_ci struct wl_display* display); 48bf215546Sopenharmony_ci#endif 49bf215546Sopenharmony_ci 50bf215546Sopenharmony_ci#ifdef __cplusplus 51bf215546Sopenharmony_ci} 52bf215546Sopenharmony_ci#endif 53bf215546Sopenharmony_ci 54bf215546Sopenharmony_ci#endif 55