Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class EXTAcquireXlibDisplay

extends Object
Class Inheritance
Imports
java.nio.*, org.lwjgl.system.*, org.lwjgl.system.linux.*

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.
VK_EXT_acquire_xlib_display
Name String
VK_EXT_acquire_xlib_display
Extension Type
Instance extension
Registered Extension Number
90
Revision
1
Extension and Version Dependencies
VK_EXT_direct_mode_display
Contact
Other Extension Metadata
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

Modifier and TypeField and Description
public static final String
public static final int
VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION

The extension specification version.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static int
nvkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long pDisplay)

Unsafe version of: GetRandROutputDisplayEXT

public static int
vkAcquireXlibDisplayEXT(VkPhysicalDevice
The physical device the display is on.
physicalDevice
,
long
A connection to the X11 server that currently owns display.
dpy
,
long
The display the caller wishes to control in Vulkan.
display
)

Acquire access to a VkDisplayKHR using Xlib.

public static int
vkGetRandROutputDisplayEXT(VkPhysicalDevice
The physical device to query the display handle on.
physicalDevice
,
long
A connection to the X11 server from which rrOutput was queried.
dpy
,
long
An X11 RandR output ID.
rrOutput
,
LongBuffer
The corresponding VkDisplayKHR handle will be returned here.
pDisplay
)

Query the VkDisplayKHR corresponding to an X11 RandR Output.

public static int
vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long[] pDisplay)

Array version of: GetRandROutputDisplayEXT

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAMEback to summary
public static final String VK_EXT_ACQUIRE_XLIB_DISPLAY_EXTENSION_NAME

The extension name.

VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSIONback to summary
public static final int VK_EXT_ACQUIRE_XLIB_DISPLAY_SPEC_VERSION

The extension specification version.

Constructor Detail

EXTAcquireXlibDisplayback to summary
protected EXTAcquireXlibDisplay()

Method Detail

nvkGetRandROutputDisplayEXTback to summary
public static int nvkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long pDisplay)

Unsafe version of: GetRandROutputDisplayEXT

vkAcquireXlibDisplayEXTback to summary
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 by dpy is terminated. Permission to access the display may be temporarily revoked during periods when the X11 server from which control was acquired itself loses access to display. During such periods, operations which require access to the display must fail with an appropriate error code. If the X11 server associated with dpy does not own display, or if permission to access it has already been acquired by another entity, the call must return the error code ERROR_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 valid VkPhysicalDevice handle
  • dpy must be a valid pointer to a Display value
  • display must be a valid VkDisplayKHR handle
  • display must have been created, allocated, or retrieved from physicalDevice
Return Codes
On success, this command returns
On failure, this command returns
Parameters
physicalDevice:VkPhysicalDevice

The physical device the display is on.

dpy:long

A connection to the X11 server that currently owns display.

display:long

The display the caller wishes to control in Vulkan.

Annotations
@NativeType:VkResult
vkGetRandROutputDisplayEXTback to summary
public static int vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, 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 the VkDisplayKHR 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 to rrOutput on physicalDevice, NULL_HANDLE must be returned in pDisplay.

Valid Usage (Implicit)
  • physicalDevice must be a valid VkPhysicalDevice handle
  • dpy must be a valid pointer to a Display value
  • pDisplay must be a valid pointer to a VkDisplayKHR handle
Return Codes
On success, this command returns
On failure, this command returns
Parameters
physicalDevice:VkPhysicalDevice

The physical device to query the display handle on.

dpy:long

A connection to the X11 server from which rrOutput was queried.

rrOutput:long

An X11 RandR output ID.

pDisplay:LongBuffer

The corresponding VkDisplayKHR handle will be returned here.

Annotations
@NativeType:VkResult
vkGetRandROutputDisplayEXTback to summary
public static int vkGetRandROutputDisplayEXT(VkPhysicalDevice physicalDevice, long dpy, long rrOutput, long[] pDisplay)

Array version of: GetRandROutputDisplayEXT

Annotations
@NativeType:VkResult