Package org.lwjgl.vulkan
Class KHRXcbSurface
java.lang.Object
org.lwjgl.vulkan.KHRXcbSurface
The
VK_KHR_xcb_surface extension is an instance extension. It provides a mechanism to create a VkSurfaceKHR object (defined by the VK_KHR_surface extension) that refers to an X11 Window, using the XCB client-side library, as well as a query to determine support for rendering via XCB.
- Name String
VK_KHR_xcb_surface- Extension Type
- Instance extension
- Registered Extension Number
- 6
- Revision
- 6
- Extension and Version Dependencies
VK_KHR_surface- Contact
- Jesse Hall critsec
- Ian Elliott ianelliottus
Other Extension Metadata
- Last Modified Date
- 2015-11-28
- IP Status
- No known IP claims.
- Contributors
- Patrick Doane, Blizzard
- Faith Ekstrand, Intel
- Ian Elliott, LunarG
- Courtney Goeltzenleuchter, LunarG
- Jesse Hall, Google
- James Jones, NVIDIA
- Antoine Labour, Google
- Jon Leech, Khronos
- David Mao, AMD
- Norbert Nopper, Freescale
- Alon Or-bach, Samsung
- Daniel Rakos, AMD
- Graham Sellers, AMD
- Ray Smith, ARM
- Jeff Vigil, Qualcomm
- Chia-I Wu, LunarG
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnvkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateXcbSurfaceKHRstatic intvkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXcbSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateXcbSurfaceKHRstatic intvkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXcbSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create aVkSurfaceKHRobject for a X11 window, using the XCB client-side library.static booleanvkGetPhysicalDeviceXcbPresentationSupportKHR(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int queueFamilyIndex, long connection, int visual_id) Query physical device for presentation to X11 server using XCB.
-
Field Details
-
VK_KHR_XCB_SURFACE_SPEC_VERSION
public static final int VK_KHR_XCB_SURFACE_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_XCB_SURFACE_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHRExtendsVkStructureType.- See Also:
-
-
Method Details
-
nvkCreateXcbSurfaceKHR
public static int nvkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, long pCreateInfo, long pAllocator, long pSurface) Unsafe version of:CreateXcbSurfaceKHR -
vkCreateXcbSurfaceKHR
public static int vkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXcbSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, LongBuffer pSurface) Create aVkSurfaceKHRobject for a X11 window, using the XCB client-side library.C Specification
To create a
VkSurfaceKHRobject for an X11 window, using the XCB client-side library, call:VkResult vkCreateXcbSurfaceKHR( VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);Valid Usage (Implicit)
instancemust be a validVkInstancehandlepCreateInfomust be a valid pointer to a validVkXcbSurfaceCreateInfoKHRstructure- If
pAllocatoris notNULL,pAllocatormust be a valid pointer to a validVkAllocationCallbacksstructure pSurfacemust be a valid pointer to aVkSurfaceKHRhandle
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
instance- the instance to associate the surface with.pCreateInfo- a pointer to aVkXcbSurfaceCreateInfoKHRstructure containing parameters affecting the creation of the surface object.pAllocator- the allocator used for host memory allocated for the surface object when there is no more specific allocator available (see Memory Allocation).pSurface- a pointer to aVkSurfaceKHRhandle in which the created surface object is returned.
-
vkGetPhysicalDeviceXcbPresentationSupportKHR
public static boolean vkGetPhysicalDeviceXcbPresentationSupportKHR(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int queueFamilyIndex, long connection, int visual_id) Query physical device for presentation to X11 server using XCB.C Specification
To determine whether a queue family of a physical device supports presentation to an X11 server, using the XCB client-side library, call:
VkBool32 vkGetPhysicalDeviceXcbPresentationSupportKHR( VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, xcb_connection_t* connection, xcb_visualid_t visual_id);Description
This platform-specific function can be called prior to creating a surface.
Valid Usage
queueFamilyIndexmust be less thanpQueueFamilyPropertyCountreturned byvkGetPhysicalDeviceQueueFamilyPropertiesfor the givenphysicalDevice
Valid Usage (Implicit)
physicalDevicemust be a validVkPhysicalDevicehandleconnectionmust be a valid pointer to anxcb_connection_tvalue
- Parameters:
physicalDevice- the physical device.queueFamilyIndex- the queue family index.connection- a pointer to anxcb_connection_tto the X server.visual_id- an X11 visual (xcb_visualid_t).
-
vkCreateXcbSurfaceKHR
public static int vkCreateXcbSurfaceKHR(org.lwjgl.vulkan.VkInstance instance, VkXcbSurfaceCreateInfoKHR pCreateInfo, @Nullable VkAllocationCallbacks pAllocator, long[] pSurface) Array version of:CreateXcbSurfaceKHR
-