public class KHRExternalFenceFd
extends java.lang.Object
VK_KHR_external_fence_fdVK_KHR_external_fenceVK_KHR_external_semaphore_fd| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME
The extension name.
|
static int |
VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION
The extension specification version.
|
static int |
VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR
Extends
VkStructureType. |
| Modifier and Type | Method and Description |
|---|---|
static int |
nvkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
long pGetFdInfo,
long pFd)
Unsafe version of:
GetFenceFdKHR |
static int |
nvkImportFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
long pImportFenceFdInfo)
Unsafe version of:
ImportFenceFdKHR |
static int |
vkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkFenceGetFdInfoKHR pGetFdInfo,
int[] pFd)
Array version of:
GetFenceFdKHR |
static int |
vkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkFenceGetFdInfoKHR pGetFdInfo,
java.nio.IntBuffer pFd)
Get a POSIX file descriptor handle for a fence.
|
static int |
vkImportFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkImportFenceFdInfoKHR pImportFenceFdInfo)
Import a fence from a POSIX file descriptor.
|
public static final int VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION
public static final java.lang.String VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME
public static final int VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR
VkStructureType.
public static final int VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR
VkStructureType.
public static int nvkImportFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
long pImportFenceFdInfo)
ImportFenceFdKHRpublic static int vkImportFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkImportFenceFdInfoKHR pImportFenceFdInfo)
To import a fence payload from a POSIX file descriptor, call:
VkResult vkImportFenceFdKHR(
VkDevice device,
const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
Importing a fence payload from a file descriptor transfers ownership of the file descriptor from the application to the Vulkan implementation. The application must not perform any operations on the file descriptor after a successful import.
Applications can import the same fence payload into multiple instances of Vulkan, into the same instance from which it was exported, and multiple times into a given Vulkan instance.
fence must not be associated with any queue command that has not yet completed execution on that queuedevice must be a valid VkDevice handlepImportFenceFdInfo must be a valid pointer to a valid VkImportFenceFdInfoKHR structuredevice - the logical device that created the fence.pImportFenceFdInfo - a pointer to a VkImportFenceFdInfoKHR structure specifying the fence and import parameters.public static int nvkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
long pGetFdInfo,
long pFd)
GetFenceFdKHRpublic static int vkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkFenceGetFdInfoKHR pGetFdInfo,
java.nio.IntBuffer pFd)
To export a POSIX file descriptor representing the payload of a fence, call:
VkResult vkGetFenceFdKHR(
VkDevice device,
const VkFenceGetFdInfoKHR* pGetFdInfo,
int* pFd);
Each call to vkGetFenceFdKHR must create a new file descriptor and transfer ownership of it to the application. To avoid leaking resources, the application must release ownership of the file descriptor when it is no longer needed.
Ownership can be released in many ways. For example, the application can call close() on the file descriptor, or transfer ownership back to Vulkan by using the file descriptor to import a fence payload.
If pGetFdInfo->handleType is EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT and the fence is signaled at the time vkGetFenceFdKHR is called, pFd may return the value -1 instead of a valid file descriptor.
Where supported by the operating system, the implementation must set the file descriptor to be closed automatically when an execve system call is made.
Exporting a file descriptor from a fence may have side effects depending on the transference of the specified handle type, as described in Importing Fence State.
device must be a valid VkDevice handlepGetFdInfo must be a valid pointer to a valid VkFenceGetFdInfoKHR structurepFd must be a valid pointer to an int valuedevice - the logical device that created the fence being exported.pGetFdInfo - a pointer to a VkFenceGetFdInfoKHR structure containing parameters of the export operation.pFd - will return the file descriptor representing the fence payload.public static int vkGetFenceFdKHR(org.lwjgl.vulkan.VkDevice device,
VkFenceGetFdInfoKHR pGetFdInfo,
int[] pFd)
GetFenceFdKHRCopyright LWJGL. All Rights Reserved. License terms.