Class EXTAcquireXlibDisplay
- java.lang.Object
-
- org.lwjgl.vulkan.EXTAcquireXlibDisplay
-
public class EXTAcquireXlibDisplay extends java.lang.Object
This extension allows an application to take exclusive control on a display currently associated with an X11 screen. When control is acquired, the display will be deassociated from the X11 screen until control is released or the specified display connection is closed. Essentially, the X11 screen will behave as if the monitor has been unplugged until control is released.- Name String
VK_EXT_acquire_xlib_display
- Extension Type
- Instance extension
- Registered Extension Number
- 90
- Revision
- 1
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Requires
VK_EXT_direct_mode_display
- Contact
- James Jones cubanismo
- Last Modified Date
- 2016-12-13
- IP Status
- No known IP claims.
- Contributors
- Dave Airlie, Red Hat
- Pierre Boudier, NVIDIA
- James Jones, NVIDIA
- Damien Leone, NVIDIA
- Pierre-Loup Griffais, Valve
- Liam Middlebrook, NVIDIA
- Daniel Vetter, Intel
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME
The extension name.static int
VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION
The extension specification version.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int
nvkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long pDisplay)
Unsafe version of:GetRandROutputDisplayEXT
static int
vkAcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long display)
Acquire access to a VkDisplayKHR using Xlib.static int
vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long[] pDisplay)
Array version of:GetRandROutputDisplayEXT
static int
vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, java.nio.LongBuffer pDisplay)
Query the VkDisplayKHR corresponding to an X11 RandR Output.
-
-
-
Field Detail
-
VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION
public static final int VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION
The extension specification version.- See Also:
- Constant Field Values
-
VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME
public static final java.lang.String VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME
The extension name.- See Also:
- Constant Field Values
-
-
Method Detail
-
vkAcquireXlibDisplayEXT
public static int vkAcquireXlibDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long display)
Acquire access to a VkDisplayKHR using Xlib.C Specification
To acquire permission to directly access a display in Vulkan from an X11 server, call:
VkResult vkAcquireXlibDisplayEXT( VkPhysicalDevice physicalDevice, Display* dpy, VkDisplayKHR display);
Description
All permissions necessary to control the display are granted to the Vulkan instance associated with
physicalDevice
until the display is released or the X11 connection specified bydpy
is terminated. Permission to access the display may be temporarily revoked during periods when the X11 server from which control was acquired itself looses access todisplay
. During such periods, operations which require access to the display must fail with an approriate error code. If the X11 server associated withdpy
does not owndisplay
, or if permission to access it has already been acquired by another entity, the call must return the error codeERROR_INITIALIZATION_FAILED
.Note
One example of when an X11 server loses access to a display is when it loses ownership of its virtual terminal.
Valid Usage (Implicit)
physicalDevice
must be a validVkPhysicalDevice
handledpy
must be a valid pointer to aDisplay
valuedisplay
must be a validVkDisplayKHR
handle
Return Codes
- On success, this command returns
- On failure, this command returns
- Parameters:
physicalDevice
- The physical device the display is on.dpy
- A connection to the X11 server that currently ownsdisplay
.display
- The display the caller wishes to control in Vulkan.
-
nvkGetRandROutputDisplayEXT
public static int nvkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long pDisplay)
Unsafe version of:GetRandROutputDisplayEXT
-
vkGetRandROutputDisplayEXT
public static int vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, java.nio.LongBuffer pDisplay)
Query the VkDisplayKHR corresponding to an X11 RandR Output.C Specification
When acquiring displays from an X11 server, an application may also wish to enumerate and identify them using a native handle rather than a
VkDisplayKHR
handle. To determine theVkDisplayKHR
handle corresponding to an X11 RandR Output, call:VkResult vkGetRandROutputDisplayEXT( VkPhysicalDevice physicalDevice, Display* dpy, RROutput rrOutput, VkDisplayKHR* pDisplay);
Description
If there is no
VkDisplayKHR
corresponding torrOutput
onphysicalDevice
,NULL_HANDLE
must be returned inpDisplay
.Valid Usage (Implicit)
physicalDevice
must be a validVkPhysicalDevice
handledpy
must be a valid pointer to aDisplay
valuepDisplay
must be a valid pointer to aVkDisplayKHR
handle
Return Codes
- On success, this command returns
- Parameters:
physicalDevice
- The physical device to query the display handle on.dpy
- A connection to the X11 server from whichrrOutput
was queried.rrOutput
- An X11 RandR output ID.pDisplay
- The correspondingVkDisplayKHR
handle will be returned here.
-
vkGetRandROutputDisplayEXT
public static int vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long[] pDisplay)
Array version of:GetRandROutputDisplayEXT
-
-