Home | History | Annotate | Download | only in vulkan
      1 #ifndef VULKAN_XLIB_H_
      2 #define VULKAN_XLIB_H_ 1
      3 
      4 #ifdef __cplusplus
      5 extern "C" {
      6 #endif
      7 
      8 /*
      9 ** Copyright (c) 2015-2018 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 #define VK_KHR_xlib_surface 1
     31 #define VK_KHR_XLIB_SURFACE_SPEC_VERSION  6
     32 #define VK_KHR_XLIB_SURFACE_EXTENSION_NAME "VK_KHR_xlib_surface"
     33 
     34 typedef VkFlags VkXlibSurfaceCreateFlagsKHR;
     35 
     36 typedef struct VkXlibSurfaceCreateInfoKHR {
     37     VkStructureType                sType;
     38     const void*                    pNext;
     39     VkXlibSurfaceCreateFlagsKHR    flags;
     40     Display*                       dpy;
     41     Window                         window;
     42 } VkXlibSurfaceCreateInfoKHR;
     43 
     44 
     45 typedef VkResult (VKAPI_PTR *PFN_vkCreateXlibSurfaceKHR)(VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
     46 typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, Display* dpy, VisualID visualID);
     47 
     48 #ifndef VK_NO_PROTOTYPES
     49 VKAPI_ATTR VkResult VKAPI_CALL vkCreateXlibSurfaceKHR(
     50     VkInstance                                  instance,
     51     const VkXlibSurfaceCreateInfoKHR*           pCreateInfo,
     52     const VkAllocationCallbacks*                pAllocator,
     53     VkSurfaceKHR*                               pSurface);
     54 
     55 VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXlibPresentationSupportKHR(
     56     VkPhysicalDevice                            physicalDevice,
     57     uint32_t                                    queueFamilyIndex,
     58     Display*                                    dpy,
     59     VisualID                                    visualID);
     60 #endif
     61 
     62 #ifdef __cplusplus
     63 }
     64 #endif
     65 
     66 #endif
     67