1 #ifndef VULKAN_XLIB_H_ 2 #define VULKAN_XLIB_H_ 1 3 4 /* 5 ** Copyright (c) 2015-2019 The Khronos Group Inc. 6 ** 7 ** Licensed under the Apache License, Version 2.0 (the "License"); 8 ** you may not use this file except in compliance with the License. 9 ** You may obtain a copy of the License at 10 ** 11 ** http://www.apache.org/licenses/LICENSE-2.0 12 ** 13 ** Unless required by applicable law or agreed to in writing, software 14 ** distributed under the License is distributed on an "AS IS" BASIS, 15 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 ** See the License for the specific language governing permissions and 17 ** limitations under the License. 18 */ 19 20 /* 21 ** This header is generated from the Khronos Vulkan XML API Registry. 22 ** 23 */ 24 25 26 #ifdef __cplusplus 27 extern "C" { 28 #endif 29 30 31 32 #define VK_KHR_xlib_surface 1 33 #define VK_KHR_XLIB_SURFACE_SPEC_VERSION 6 34 #define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface" 35 typedef VkFlags VkXlibSurfaceCreateFlagsKHR; 36 typedef struct VkXlibSurfaceCreateInfoKHR { 37 VkStructureType sType; 38 const void* pNext; 39 VkXlibSurfaceCreateFlagsKHR flags; 40 Display* dpy; 41 Window window; 42 } VkXlibSurfaceCreateInfoKHR; 43 44 typedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface); 45 typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID); 46 47 #ifndef VK_NO_PROTOTYPES 48 VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR( 49 VkInstance instance, 50 const VkXlibSurfaceCreateInfoKHR* pCreateInfo, 51 const VkAllocationCallbacks* pAllocator, 52 VkSurfaceKHR* pSurface); 53 54 VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR( 55 VkPhysicalDevice physicalDevice, 56 uint32_t queueFamilyIndex, 57 Display* dpy, 58 VisualID visualID); 59 #endif 60 61 #ifdef __cplusplus 62 } 63 #endif 64 65 #endif 66