Class KHRExternalSemaphoreWin32
- Name String
VK_KHR_external_semaphore_win32- Extension Type
- Device extension
- Registered Extension Number
- 79
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_external_semaphore- Contact
- James Jones cubanismo
Other Extension Metadata
- Last Modified Date
- 2016-10-21
- IP Status
- No known IP claims.
- Contributors
- James Jones, NVIDIA
- Jeff Juliano, NVIDIA
- Carsten Rohde, NVIDIA
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnvkGetSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, long pGetWin32HandleInfo, long pHandle) Unsafe version of:GetSemaphoreWin32HandleKHRstatic intnvkImportSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, long pImportSemaphoreWin32HandleInfo) Unsafe version of:ImportSemaphoreWin32HandleKHRstatic intvkGetSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, VkSemaphoreGetWin32HandleInfoKHR pGetWin32HandleInfo, org.lwjgl.PointerBuffer pHandle) Get a Windows HANDLE for a semaphore.static intvkImportSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, VkImportSemaphoreWin32HandleInfoKHR pImportSemaphoreWin32HandleInfo) Import a semaphore from a Windows HANDLE.
-
Field Details
-
VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSION
public static final int VK_KHR_EXTERNAL_SEMAPHORE_WIN32_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_EXTERNAL_SEMAPHORE_WIN32_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR
public static final int VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
-
Method Details
-
nvkImportSemaphoreWin32HandleKHR
public static int nvkImportSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, long pImportSemaphoreWin32HandleInfo) Unsafe version of:ImportSemaphoreWin32HandleKHR -
vkImportSemaphoreWin32HandleKHR
public static int vkImportSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, VkImportSemaphoreWin32HandleInfoKHR pImportSemaphoreWin32HandleInfo) Import a semaphore from a Windows HANDLE.C Specification
To import a semaphore payload from a Windows handle, call:
VkResult vkImportSemaphoreWin32HandleKHR( VkDevice device, const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);Description
Importing a semaphore payload from Windows handles does not transfer ownership of the handle to the Vulkan implementation. For handle types defined as NT handles, the application must release ownership using the
CloseHandlesystem call when the handle is no longer needed.Applications can import the same semaphore payload into multiple instances of Vulkan, into the same instance from which it was exported, and multiple times into a given Vulkan instance.
Valid Usage (Implicit)
devicemust be a validVkDevicehandlepImportSemaphoreWin32HandleInfomust be a valid pointer to a validVkImportSemaphoreWin32HandleInfoKHRstructure
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
device- the logical device that created the semaphore.pImportSemaphoreWin32HandleInfo- a pointer to aVkImportSemaphoreWin32HandleInfoKHRstructure specifying the semaphore and import parameters.
-
nvkGetSemaphoreWin32HandleKHR
public static int nvkGetSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, long pGetWin32HandleInfo, long pHandle) Unsafe version of:GetSemaphoreWin32HandleKHR -
vkGetSemaphoreWin32HandleKHR
public static int vkGetSemaphoreWin32HandleKHR(org.lwjgl.vulkan.VkDevice device, VkSemaphoreGetWin32HandleInfoKHR pGetWin32HandleInfo, org.lwjgl.PointerBuffer pHandle) Get a Windows HANDLE for a semaphore.C Specification
To export a Windows handle representing the payload of a semaphore, call:
VkResult vkGetSemaphoreWin32HandleKHR( VkDevice device, const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo, HANDLE* pHandle);Description
For handle types defined as NT handles, the handles returned by
vkGetSemaphoreWin32HandleKHRare owned by the application. To avoid leaking resources, the application must release ownership of them using theCloseHandlesystem call when they are no longer needed.Exporting a Windows handle from a semaphore may have side effects depending on the transference of the specified handle type, as described in Importing Semaphore Payloads.
Valid Usage (Implicit)
devicemust be a validVkDevicehandlepGetWin32HandleInfomust be a valid pointer to a validVkSemaphoreGetWin32HandleInfoKHRstructurepHandlemust be a valid pointer to aHANDLEvalue
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
device- the logical device that created the semaphore being exported.pGetWin32HandleInfo- a pointer to aVkSemaphoreGetWin32HandleInfoKHRstructure containing parameters of the export operation.pHandle- will return the Windows handle representing the semaphore state.
-