public class KHRTimelineSemaphore
extends java.lang.Object
VK_KHR_timeline_semaphoreVK_KHR_get_physical_device_properties2VK_KHR_external_semaphore_capabilitiesVK_KHR_external_semaphoreVK_KHR_external_semaphore_win32| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME
The extension name.
|
static int |
VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION
The extension specification version.
|
static int |
VK_SEMAPHORE_TYPE_BINARY_KHR
VkSemaphoreTypeKHR - Sepcifies the type of a semaphore object
|
static int |
VK_SEMAPHORE_TYPE_TIMELINE_KHR
VkSemaphoreTypeKHR - Sepcifies the type of a semaphore object
|
static int |
VK_SEMAPHORE_WAIT_ANY_BIT_KHR
VkSemaphoreWaitFlagBitsKHR - Bitmask specifying additional parameters of a semaphore wait operation
|
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR
Extends
VkStructureType. |
| Modifier and Type | Method and Description |
|---|---|
static int |
nvkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
long pValue)
Unsafe version of:
GetSemaphoreCounterValueKHR |
static int |
nvkSignalSemaphoreKHR(org.lwjgl.vulkan.VkDevice device,
long pSignalInfo)
Unsafe version of:
SignalSemaphoreKHR |
static int |
nvkWaitSemaphoresKHR(org.lwjgl.vulkan.VkDevice device,
long pWaitInfo,
long timeout)
Unsafe version of:
WaitSemaphoresKHR |
static int |
vkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
long[] pValue)
Array version of:
GetSemaphoreCounterValueKHR |
static int |
vkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
java.nio.LongBuffer pValue)
Query the current state of a timeline semaphore.
|
static int |
vkSignalSemaphoreKHR(org.lwjgl.vulkan.VkDevice device,
VkSemaphoreSignalInfoKHR pSignalInfo)
Signal a timeline semaphore on the host.
|
static int |
vkWaitSemaphoresKHR(org.lwjgl.vulkan.VkDevice device,
VkSemaphoreWaitInfoKHR pWaitInfo,
long timeout)
Wait for timeline semaphores on the host.
|
public static final int VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION
public static final java.lang.String VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR
VkStructureType.
STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHRSTRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHRSTRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHRSTRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHRSTRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHRpublic static final int VK_SEMAPHORE_TYPE_BINARY_KHR
SEMAPHORE_TYPE_BINARY_KHR specifies a binary semaphore type that has a boolean payload indicating whether the semaphore is currently signaled or unsignaled. When created, the semaphore is in the unsignaled state.SEMAPHORE_TYPE_TIMELINE_KHR specifies a timeline semaphore type that has a monotonically increasing 64-bit unsigned integer payload indicating whether the semaphore is signaled with respect to a particular reference value. When created, the semaphore payload has the value given by the initialValue field of VkSemaphoreTypeCreateInfoKHR.public static final int VK_SEMAPHORE_TYPE_TIMELINE_KHR
SEMAPHORE_TYPE_BINARY_KHR specifies a binary semaphore type that has a boolean payload indicating whether the semaphore is currently signaled or unsignaled. When created, the semaphore is in the unsignaled state.SEMAPHORE_TYPE_TIMELINE_KHR specifies a timeline semaphore type that has a monotonically increasing 64-bit unsigned integer payload indicating whether the semaphore is signaled with respect to a particular reference value. When created, the semaphore payload has the value given by the initialValue field of VkSemaphoreTypeCreateInfoKHR.public static final int VK_SEMAPHORE_WAIT_ANY_BIT_KHR
SEMAPHORE_WAIT_ANY_BIT_KHR specifies that the semaphore wait condition is that at least one of the semaphores in VkSemaphoreWaitInfoKHR::pSemaphores has reached the value specified by the corresponding element of VkSemaphoreWaitInfoKHR::pValues. If SEMAPHORE_WAIT_ANY_BIT_KHR is not set, the semaphore wait condition is that all of the semaphores in VkSemaphoreWaitInfoKHR::pSemaphores have reached the value specified by the corresponding element of VkSemaphoreWaitInfoKHR::pValues.VkSemaphoreWaitFlagsKHR
public static int nvkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
long pValue)
GetSemaphoreCounterValueKHRpublic static int vkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
java.nio.LongBuffer pValue)
To query the current counter value of a semaphore created with a VkSemaphoreTypeKHR of SEMAPHORE_TYPE_TIMELINE_KHR from the host, call:
VkResult vkGetSemaphoreCounterValueKHR(
VkDevice device,
VkSemaphore semaphore,
uint64_t* pValue);
If a queue submission command is pending execution, then the value returned by this command may immediately be out of date.
semaphore must have been created with a VkSemaphoreTypeKHR of SEMAPHORE_TYPE_TIMELINE_KHRdevice must be a valid VkDevice handlesemaphore must be a valid VkSemaphore handlepValue must be a valid pointer to a uint64_t valuesemaphore must have been created, allocated, or retrieved from devicedevice - the logical device that owns the semaphore.semaphore - the handle of the semaphore to query.pValue - a pointer to a 64-bit integer value in which the current counter value of the semaphore is returned.public static int nvkWaitSemaphoresKHR(org.lwjgl.vulkan.VkDevice device,
long pWaitInfo,
long timeout)
WaitSemaphoresKHRpublic static int vkWaitSemaphoresKHR(org.lwjgl.vulkan.VkDevice device,
VkSemaphoreWaitInfoKHR pWaitInfo,
long timeout)
To wait for a set of semaphores created with a VkSemaphoreTypeKHR of SEMAPHORE_TYPE_TIMELINE_KHR to reach particular counter values on the host, call:
VkResult vkWaitSemaphoresKHR(
VkDevice device,
const VkSemaphoreWaitInfoKHR* pWaitInfo,
uint64_t timeout);
If the condition is satisfied when vkWaitSemaphoresKHR is called, then vkWaitSemaphoresKHR returns immediately. If the condition is not satisfied at the time vkWaitSemaphoresKHR is called, then vkWaitSemaphoresKHR will block and wait up to timeout nanoseconds for the condition to become satisfied.
If timeout is zero, then vkWaitSemaphoresKHR does not wait, but simply returns information about the current state of the semaphore. TIMEOUT will be returned in this case if the condition is not satisfied, even though no actual wait was performed.
If the specified timeout period expires before the condition is satisfied, vkWaitSemaphoresKHR returns TIMEOUT. If the condition is satisfied before timeout nanoseconds has expired, vkWaitSemaphoresKHR returns SUCCESS.
If device loss occurs (see Lost Device) before the timeout has expired, vkWaitSemaphoresKHR must return in finite time with either SUCCESS or ERROR_DEVICE_LOST.
device must be a valid VkDevice handlepWaitInfo must be a valid pointer to a valid VkSemaphoreWaitInfoKHR structuredevice - the logical device that owns the semaphore.pWaitInfo - a pointer to a VkSemaphoreWaitInfoKHR structure containing information about the wait condition.timeout - the timeout period in units of nanoseconds. timeout is adjusted to the closest value allowed by the implementation-dependent timeout accuracy, which may be substantially longer than one nanosecond, and may be longer than the requested period.public static int nvkSignalSemaphoreKHR(org.lwjgl.vulkan.VkDevice device,
long pSignalInfo)
SignalSemaphoreKHRpublic static int vkSignalSemaphoreKHR(org.lwjgl.vulkan.VkDevice device,
VkSemaphoreSignalInfoKHR pSignalInfo)
To signal a semaphore created with a VkSemaphoreTypeKHR of SEMAPHORE_TYPE_TIMELINE_KHR with a particular counter value, on the host, call:
VkResult vkSignalSemaphoreKHR(
VkDevice device,
const VkSemaphoreSignalInfoKHR* pSignalInfo);
When vkSignalSemaphoreKHR is executed on the host, it defines and immediately executes a semaphore signal operation which sets the timeline semaphore to the given value.
The first synchronization scope is defined by the host execution model, but includes execution of vkSignalSemaphoreKHR on the host and anything that happened-before it.
The second synchronization scope is empty.
device must be a valid VkDevice handlepSignalInfo must be a valid pointer to a valid VkSemaphoreSignalInfoKHR structuredevice - the logical device that owns the semaphore.pSignalInfo - a pointer to a VkSemaphoreSignalInfoKHR structure containing information about the signal operation.public static int vkGetSemaphoreCounterValueKHR(org.lwjgl.vulkan.VkDevice device,
long semaphore,
long[] pValue)
GetSemaphoreCounterValueKHRCopyright LWJGL. All Rights Reserved. License terms.