Class EXTAcquireDrmDisplay


  • public class EXTAcquireDrmDisplay
    extends java.lang.Object
    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
    Contact
    Other Extension Metadata
    Last Modified Date
    2021-06-09
    IP Status
    No known IP claims.
    Contributors
    • Simon Zeni, Status Holdings, Ltd.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static int nvkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long display)
      Unsafe version of: GetDrmDisplayEXT
      static int vkAcquireDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int drmFd, long display)
      Acquire access to a VkDisplayKHR using DRM.
      static int vkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int drmFd, int connectorId, long[] display)
      Array version of: GetDrmDisplayEXT
      static int vkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice, int drmFd, int connectorId, java.nio.LongBuffer display)
      Query the VkDisplayKHR corresponding to a DRM connector ID.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION

        public static final int VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION
        The extension specification version.
        See Also:
        Constant Field Values
      • VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME

        public static final java.lang.String VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME
        The extension name.
        See Also:
        Constant Field Values
    • Method Detail

      • vkAcquireDrmDisplayEXT

        public static int vkAcquireDrmDisplayEXT​(org.lwjgl.vulkan.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 - The physical device the display is on.
        drmFd - DRM primary file descriptor.
        display - The display the caller wishes Vulkan to control.
      • nvkGetDrmDisplayEXT

        public static int nvkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
                                              int drmFd,
                                              int connectorId,
                                              long display)
        Unsafe version of: GetDrmDisplayEXT
      • vkGetDrmDisplayEXT

        public static int vkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
                                             int drmFd,
                                             int connectorId,
                                             java.nio.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 - The physical device to query the display from.
        drmFd - DRM primary file descriptor.
        connectorId - Identifier of the specified DRM connector.
        display - The corresponding VkDisplayKHR handle will be returned here.
      • vkGetDrmDisplayEXT

        public static int vkGetDrmDisplayEXT​(org.lwjgl.vulkan.VkPhysicalDevice physicalDevice,
                                             int drmFd,
                                             int connectorId,
                                             long[] display)
        Array version of: GetDrmDisplayEXT