Top Description Constructors Methods
org.lwjgl.opengl

public Class NVXProgressFence

extends Object
Class Inheritance
Imports
java.nio.*, org.lwjgl.system.*

Native bindings to the NVX_progress_fence extension.

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.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static void
glClientWaitSemaphoreui64NVX(IntBuffer semaphoreArray, LongBuffer fenceValueArray)

public static void
glClientWaitSemaphoreui64NVX(int[] semaphoreArray, long[] fenceValueArray)

Array version of: ClientWaitSemaphoreui64NVX

public static native int
public static void
glSignalSemaphoreui64NVX(int signalGpu, IntBuffer semaphoreArray, LongBuffer fenceValueArray)

public static void
glSignalSemaphoreui64NVX(int signalGpu, int[] semaphoreArray, long[] fenceValueArray)

Array version of: SignalSemaphoreui64NVX

public static void
glWaitSemaphoreui64NVX(int waitGpu, IntBuffer semaphoreArray, LongBuffer fenceValueArray)

public static void
glWaitSemaphoreui64NVX(int waitGpu, int[] semaphoreArray, long[] fenceValueArray)

Array version of: WaitSemaphoreui64NVX

public static native void
nglClientWaitSemaphoreui64NVX(int fenceObjectCount, long semaphoreArray, long fenceValueArray)

public static native void
nglSignalSemaphoreui64NVX(int signalGpu, int fenceObjectCount, long semaphoreArray, long fenceValueArray)

public static native void
nglWaitSemaphoreui64NVX(int waitGpu, int fenceObjectCount, long semaphoreArray, long fenceValueArray)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

NVXProgressFenceback to summary
protected NVXProgressFence()

Method Detail

glClientWaitSemaphoreui64NVXback to summary
public static void glClientWaitSemaphoreui64NVX(IntBuffer semaphoreArray, LongBuffer fenceValueArray)
glClientWaitSemaphoreui64NVXback to summary
public static void glClientWaitSemaphoreui64NVX(int[] semaphoreArray, long[] fenceValueArray)

Array version of: ClientWaitSemaphoreui64NVX

glCreateProgressFenceNVXback to summary
public static native int glCreateProgressFenceNVX()
Annotations
@NativeType:GLuint
glSignalSemaphoreui64NVXback to summary
public static void glSignalSemaphoreui64NVX(int signalGpu, IntBuffer semaphoreArray, LongBuffer fenceValueArray)
glSignalSemaphoreui64NVXback to summary
public static void glSignalSemaphoreui64NVX(int signalGpu, int[] semaphoreArray, long[] fenceValueArray)

Array version of: SignalSemaphoreui64NVX

glWaitSemaphoreui64NVXback to summary
public static void glWaitSemaphoreui64NVX(int waitGpu, IntBuffer semaphoreArray, LongBuffer fenceValueArray)
glWaitSemaphoreui64NVXback to summary
public static void glWaitSemaphoreui64NVX(int waitGpu, int[] semaphoreArray, long[] fenceValueArray)

Array version of: WaitSemaphoreui64NVX

nglClientWaitSemaphoreui64NVXback to summary
public static native void nglClientWaitSemaphoreui64NVX(int fenceObjectCount, long semaphoreArray, long fenceValueArray)
nglSignalSemaphoreui64NVXback to summary
public static native void nglSignalSemaphoreui64NVX(int signalGpu, int fenceObjectCount, long semaphoreArray, long fenceValueArray)
nglWaitSemaphoreui64NVXback to summary
public static native void nglWaitSemaphoreui64NVX(int waitGpu, int fenceObjectCount, long semaphoreArray, long fenceValueArray)