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