public class NVXProgressFence
extends java.lang.Object
This extension uses the concept of GL semaphores as defined in EXT_semaphore to better coordinate operations between multiple GPU command
streams. A semaphore type called "progress fence" is derived from the GL semaphore. The progress fence semaphore is created by
CreateProgressFenceNVX) returning the name of a newly created semaphore object. Like other semaphores, these are signaled by the GL server. Each
signal operation is queued in the GPU command stream with an associated fence value that is written to the semaphore at the completion of a signal
operation.
A GL server wait can be added to the command stream using WaitSemaphoreui64NVX. This blocks the GPU until the progress fence semaphore reaches or
exceeds the specified fence value.
A GL client wait can be initiated using ClientWaitSemaphoreui64NVX. This blocks the CPU until the specified fence value is reached.
Requires EXT_external_objects and EXT_external_objects_win32.
| Modifier and Type | Method and Description |
|---|---|
static void |
glClientWaitSemaphoreui64NVX(int[] semaphoreArray,
long[] fenceValueArray)
Array version of:
ClientWaitSemaphoreui64NVX |
static void |
glClientWaitSemaphoreui64NVX(java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray) |
static int |
glCreateProgressFenceNVX() |
static void |
glSignalSemaphoreui64NVX(int signalGpu,
int[] semaphoreArray,
long[] fenceValueArray)
Array version of:
SignalSemaphoreui64NVX |
static void |
glSignalSemaphoreui64NVX(int signalGpu,
java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray) |
static void |
glWaitSemaphoreui64NVX(int waitGpu,
int[] semaphoreArray,
long[] fenceValueArray)
Array version of:
WaitSemaphoreui64NVX |
static void |
glWaitSemaphoreui64NVX(int waitGpu,
java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray) |
static void |
nglClientWaitSemaphoreui64NVX(int fenceObjectCount,
long semaphoreArray,
long fenceValueArray) |
static void |
nglSignalSemaphoreui64NVX(int signalGpu,
int fenceObjectCount,
long semaphoreArray,
long fenceValueArray) |
static void |
nglWaitSemaphoreui64NVX(int waitGpu,
int fenceObjectCount,
long semaphoreArray,
long fenceValueArray) |
public static int glCreateProgressFenceNVX()
public static void nglSignalSemaphoreui64NVX(int signalGpu,
int fenceObjectCount,
long semaphoreArray,
long fenceValueArray)
public static void glSignalSemaphoreui64NVX(int signalGpu,
java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray)
public static void nglWaitSemaphoreui64NVX(int waitGpu,
int fenceObjectCount,
long semaphoreArray,
long fenceValueArray)
public static void glWaitSemaphoreui64NVX(int waitGpu,
java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray)
public static void nglClientWaitSemaphoreui64NVX(int fenceObjectCount,
long semaphoreArray,
long fenceValueArray)
public static void glClientWaitSemaphoreui64NVX(java.nio.IntBuffer semaphoreArray,
java.nio.LongBuffer fenceValueArray)
public static void glSignalSemaphoreui64NVX(int signalGpu,
int[] semaphoreArray,
long[] fenceValueArray)
SignalSemaphoreui64NVXpublic static void glWaitSemaphoreui64NVX(int waitGpu,
int[] semaphoreArray,
long[] fenceValueArray)
WaitSemaphoreui64NVXpublic static void glClientWaitSemaphoreui64NVX(int[] semaphoreArray,
long[] fenceValueArray)
ClientWaitSemaphoreui64NVXCopyright LWJGL. All Rights Reserved. License terms.