Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class EXTAcquireDrmDisplay

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

This extension allows an application to take exclusive control of a display using the Direct Rendering Manager (DRM) interface. When acquired, the display will be under full control of the application until the display is either released or the connector is unplugged.
VK_EXT_acquire_drm_display
Name String
VK_EXT_acquire_drm_display
Extension Type
Instance extension
Registered Extension Number
286
Revision
1
Extension and Version Dependencies
VK_EXT_direct_mode_display
Contact
Other Extension Metadata
Last Modified Date
2021-06-09
IP Status
No known IP claims.
Contributors
  • Simon Zeni, Status Holdings, Ltd.

Field Summary

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

The extension specification version.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static int
nvkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long display)

Unsafe version of: GetDrmDisplayEXT

public static int
vkAcquireDrmDisplayEXT(VkPhysicalDevice
The physical device the display is on.
physicalDevice
,
int
DRM primary file descriptor.
drmFd
,
long
The display the caller wishes Vulkan to control.
display
)

Acquire access to a VkDisplayKHR using DRM.

public static int
vkGetDrmDisplayEXT(VkPhysicalDevice
The physical device to query the display from.
physicalDevice
,
int
DRM primary file descriptor.
drmFd
,
int
Identifier of the specified DRM connector.
connectorId
,
LongBuffer
The corresponding VkDisplayKHR handle will be returned here.
display
)

Query the VkDisplayKHR corresponding to a DRM connector ID. C Specification

Before acquiring a display from the DRM interface, the caller may want to select a specific VkDisplayKHR handle by identifying it using a connectorId.

public static int
vkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long[] display)

Array version of: GetDrmDisplayEXT

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAMEback to summary
public static final String VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME

The extension name.

VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSIONback to summary
public static final int VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION

The extension specification version.

Constructor Detail

EXTAcquireDrmDisplayback to summary
protected EXTAcquireDrmDisplay()

Method Detail

nvkGetDrmDisplayEXTback to summary
public static int nvkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long display)

Unsafe version of: GetDrmDisplayEXT

vkAcquireDrmDisplayEXTback to summary
public static int vkAcquireDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, long display)

Acquire access to a VkDisplayKHR using DRM.

C Specification

To acquire permission to directly a display in Vulkan from the Direct Rendering Manager (DRM) interface, call:


VkResult vkAcquireDrmDisplayEXT(
    VkPhysicalDevice                            physicalDevice,
    int32_t                                     drmFd,
    VkDisplayKHR                                display);
Description

All permissions necessary to control the display are granted to the Vulkan instance associated with the provided physicalDevice until the display is either released or the connector is unplugged. The provided drmFd must correspond to the one owned by the physicalDevice. If not, the error code ERROR_UNKNOWN must be returned. The DRM FD must have DRM master permissions. If any error is encountered during the acquisition of the display, the call must return the error code ERROR_INITIALIZATION_FAILED.

The provided DRM fd should not be closed before the display is released, attempting to do it may result in undefined behaviour.

Valid Usage (Implicit)
  • physicalDevice must be a valid VkPhysicalDevice handle
  • 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.

drmFd:int

DRM primary file descriptor.

display:long

The display the caller wishes Vulkan to control.

Annotations
@NativeType:VkResult
vkGetDrmDisplayEXTback to summary
public static int vkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, int connectorId, LongBuffer display)

Query the VkDisplayKHR corresponding to a DRM connector ID.

C Specification

Before acquiring a display from the DRM interface, the caller may want to select a specific VkDisplayKHR handle by identifying it using a connectorId. To do so, call:


VkResult vkGetDrmDisplayEXT(
    VkPhysicalDevice                            physicalDevice,
    int32_t                                     drmFd,
    uint32_t                                    connectorId,
    VkDisplayKHR*                               display);
Description

If there is no VkDisplayKHR corresponding to the connectorId on the physicalDevice, the returning display must be set to NULL_HANDLE. The provided drmFd must correspond to the one owned by the physicalDevice. If not, the error code ERROR_UNKNOWN must be returned. Master permissions are not required, because the file descriptor is just used for information gathering purposes. The given connectorId must be a resource owned by the provided drmFd. If not, the error code ERROR_UNKNOWN must be returned. If any error is encountered during the identification of the display, the call must return the error code ERROR_INITIALIZATION_FAILED.

Valid Usage (Implicit)
  • physicalDevice must be a valid VkPhysicalDevice handle
  • display 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 from.

drmFd:int

DRM primary file descriptor.

connectorId:int

Identifier of the specified DRM connector.

display:LongBuffer

The corresponding VkDisplayKHR handle will be returned here.

Annotations
@NativeType:VkResult
vkGetDrmDisplayEXTback to summary
public static int vkGetDrmDisplayEXT(VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long[] display)

Array version of: GetDrmDisplayEXT

Annotations
@NativeType:VkResult