org.lwjgl.vulkan.EXTDirectModeDisplay Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lwjgl-vulkan Show documentation
Show all versions of lwjgl-vulkan Show documentation
A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.
/*
* Copyright LWJGL. All rights reserved.
* License terms: https://www.lwjgl.org/license
* MACHINE GENERATED FILE, DO NOT EDIT
*/
package org.lwjgl.vulkan;
import org.lwjgl.system.*;
import static org.lwjgl.system.Checks.*;
import static org.lwjgl.system.JNI.*;
/**
* This is extension, along with related platform exentions, allows applications to take exclusive control of displays associated with a native windowing system. This is especially useful for virtual reality applications that wish to hide HMDs (head mounted displays) from the native platform's display management system, desktop, and/or other applications.
*
*
* - Name String
* - {@code VK_EXT_direct_mode_display}
* - Extension Type
* - Instance extension
* - Registered Extension Number
* - 89
* - Revision
* - 1
* - Extension and Version Dependencies
*
* - Requires Vulkan 1.0
* - Requires {@code VK_KHR_display}
*
* - Contact
*
* - James Jones @cubanismo
*
* - Last Modified Date
* - 2016-12-13
* - IP Status
* - No known IP claims.
* - Contributors
*
* - Pierre Boudier, NVIDIA
* - James Jones, NVIDIA
* - Damien Leone, NVIDIA
* - Pierre-Loup Griffais, Valve
* - Liam Middlebrook, NVIDIA
*
*
*/
public class EXTDirectModeDisplay {
/** The extension specification version. */
public static final int VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION = 1;
/** The extension name. */
public static final String VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME = "VK_EXT_direct_mode_display";
protected EXTDirectModeDisplay() {
throw new UnsupportedOperationException();
}
static boolean isAvailable(VKCapabilitiesInstance caps) {
return checkFunctions(
caps.vkReleaseDisplayEXT
);
}
// --- [ vkReleaseDisplayEXT ] ---
/**
* Release access to an acquired VkDisplayKHR.
*
* C Specification
*
* To release a previously acquired display, call:
*
*
* VkResult vkReleaseDisplayEXT(
* VkPhysicalDevice physicalDevice,
* VkDisplayKHR display);
*
* Valid Usage (Implicit)
*
*
* - {@code physicalDevice} must be a valid {@code VkPhysicalDevice} handle
* - {@code display} must be a valid {@code VkDisplayKHR} handle
*
*
* Return Codes
*
*
* - On success, this command returns
*
* - {@link VK10#VK_SUCCESS SUCCESS}
*
*
*
* @param physicalDevice The physical device the display is on.
* @param display The display to release control of.
*/
@NativeType("VkResult")
public static int vkReleaseDisplayEXT(VkPhysicalDevice physicalDevice, @NativeType("VkDisplayKHR") long display) {
long __functionAddress = physicalDevice.getCapabilities().vkReleaseDisplayEXT;
if (CHECKS) {
check(__functionAddress);
}
return callPJI(__functionAddress, physicalDevice.address(), display);
}
}