vulkan_xcb.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #ifndef VULKAN_XCB_H_
  2. #define VULKAN_XCB_H_ 1
  3. /*
  4. ** Copyright 2015-2023 The Khronos Group Inc.
  5. **
  6. ** SPDX-License-Identifier: Apache-2.0
  7. */
  8. /*
  9. ** This header is generated from the Khronos Vulkan XML API Registry.
  10. **
  11. */
  12. #ifdef __cplusplus
  13. extern "C" {
  14. #endif
  15. // VK_KHR_xcb_surface is a preprocessor guard. Do not pass it to API calls.
  16. #define VK_KHR_xcb_surface 1
  17. #define VK_KHR_XCB_SURFACE_SPEC_VERSION 6
  18. #define VK_KHR_XCB_SURFACE_EXTENSION_NAME "VK_KHR_xcb_surface"
  19. typedef VkFlags VkXcbSurfaceCreateFlagsKHR;
  20. typedef struct VkXcbSurfaceCreateInfoKHR {
  21. VkStructureType sType;
  22. const void* pNext;
  23. VkXcbSurfaceCreateFlagsKHR flags;
  24. xcb_connection_t* connection;
  25. xcb_window_t window;
  26. } VkXcbSurfaceCreateInfoKHR;
  27. typedef VkResult (VKAPI_PTR *PFN_vkCreateXcbSurfaceKHR)(VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
  28. typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id);
  29. #ifndef VK_NO_PROTOTYPES
  30. VKAPI_ATTR VkResult VKAPI_CALL vkCreateXcbSurfaceKHR(
  31. VkInstance instance,
  32. const VkXcbSurfaceCreateInfoKHR* pCreateInfo,
  33. const VkAllocationCallbacks* pAllocator,
  34. VkSurfaceKHR* pSurface);
  35. VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceXcbPresentationSupportKHR(
  36. VkPhysicalDevice physicalDevice,
  37. uint32_t queueFamilyIndex,
  38. xcb_connection_t* connection,
  39. xcb_visualid_t visual_id);
  40. #endif
  41. #ifdef __cplusplus
  42. }
  43. #endif
  44. #endif