Class APPLESync
- java.lang.Object
-
- org.lwjgl.opengles.APPLESync
-
public class APPLESync extends java.lang.ObjectNative bindings to the APPLE_sync extension.This extension introduces the concept of "sync objects". Sync objects are a synchronization primitive - a representation of events whose completion status can be tested or waited upon. One specific type of sync object, the "fence sync object", is supported in this extension, and additional types can easily be added in the future.
Fence sync objects have corresponding fences, which are inserted into the OpenGL command stream at the time the sync object is created. A sync object can be queried for a given condition. The only condition supported for fence sync objects is completion of the corresponding fence command. Fence completion allows applications to request a partial Finish, wherein all commands prior to the fence will be forced to complete before control is returned to the calling process.
These new mechanisms allow for synchronization between the host CPU and the GPU, which may be accessing the same resources (typically memory), as well as between multiple GL contexts bound to multiple threads in the host CPU.
Requires
GLES 2.0.
-
-
Field Summary
Fields Modifier and Type Field and Description static intGL_ALREADY_SIGNALED_APPLE
GL_CONDITION_SATISFIED_APPLEReturned by ClientWaitSyncAPPLE.static intGL_MAX_SERVER_WAIT_TIMEOUT_APPLEAccepted as thepnameparameter of GetInteger64vAPPLE.static intGL_OBJECT_TYPE_APPLEAccepted as thepnameparameter of GetSyncivAPPLE.static intGL_SIGNALED_APPLEReturned invaluesfor GetSyncivAPPLEpnameSYNC_STATUS_APPLE.static intGL_SYNC_CONDITION_APPLEAccepted as thepnameparameter of GetSyncivAPPLE.static intGL_SYNC_FENCE_APPLEReturned invaluesfor GetSyncivpnameOBJECT_TYPE_APPLE.static intGL_SYNC_FLAGS_APPLEAccepted as thepnameparameter of GetSyncivAPPLE.static intGL_SYNC_FLUSH_COMMANDS_BIT_APPLEAccepted in theflagsparameter of ClientWaitSyncAPPLE.static intGL_SYNC_GPU_COMMANDS_COMPLETE_APPLEReturned invaluesfor GetSyncivAPPLEpnameSYNC_CONDITION_APPLE.static intGL_SYNC_OBJECT_APPLEAccepted by thetypeparameter of LabelObjectEXT and GetObjectLabelEXT.static intGL_SYNC_STATUS_APPLEAccepted as thepnameparameter of GetSyncivAPPLE.static intGL_TIMEOUT_EXPIRED_APPLEReturned by ClientWaitSyncAPPLE.static longGL_TIMEOUT_IGNORED_APPLEAccepted in thetimeoutparameter of WaitSyncAPPLE.static intGL_UNSIGNALED_APPLEReturned invaluesfor GetSyncivAPPLEpnameSYNC_STATUS_APPLE.static intGL_WAIT_FAILED_APPLEReturned by ClientWaitSyncAPPLE.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static intglClientWaitSyncAPPLE(long sync, int flags, long timeout)static voidglDeleteSyncAPPLE(long sync)static longglFenceSyncAPPLE(int condition, int flags)static longglGetInteger64APPLE(int pname)static voidglGetInteger64vAPPLE(int pname, long[] params)Array version of:GetInteger64vAPPLEstatic voidglGetInteger64vAPPLE(int pname, java.nio.LongBuffer params)static intglGetSynciAPPLE(long sync, int pname, java.nio.IntBuffer length)static voidglGetSyncivAPPLE(long sync, int pname, int[] length, int[] values)Array version of:GetSyncivAPPLEstatic voidglGetSyncivAPPLE(long sync, int pname, java.nio.IntBuffer length, java.nio.IntBuffer values)static booleanglIsSyncAPPLE(long sync)static voidglWaitSyncAPPLE(long sync, int flags, long timeout)
-
-
-
Field Detail
-
GL_MAX_SERVER_WAIT_TIMEOUT_APPLE
public static final int GL_MAX_SERVER_WAIT_TIMEOUT_APPLE
Accepted as thepnameparameter of GetInteger64vAPPLE.- See Also:
- Constant Field Values
-
GL_OBJECT_TYPE_APPLE
public static final int GL_OBJECT_TYPE_APPLE
Accepted as thepnameparameter of GetSyncivAPPLE.- See Also:
- Constant Field Values
-
GL_SYNC_CONDITION_APPLE
public static final int GL_SYNC_CONDITION_APPLE
Accepted as thepnameparameter of GetSyncivAPPLE.- See Also:
- Constant Field Values
-
GL_SYNC_STATUS_APPLE
public static final int GL_SYNC_STATUS_APPLE
Accepted as thepnameparameter of GetSyncivAPPLE.- See Also:
- Constant Field Values
-
GL_SYNC_FLAGS_APPLE
public static final int GL_SYNC_FLAGS_APPLE
Accepted as thepnameparameter of GetSyncivAPPLE.- See Also:
- Constant Field Values
-
GL_SYNC_FENCE_APPLE
public static final int GL_SYNC_FENCE_APPLE
Returned invaluesfor GetSyncivpnameOBJECT_TYPE_APPLE.- See Also:
- Constant Field Values
-
GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE
public static final int GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE
Returned invaluesfor GetSyncivAPPLEpnameSYNC_CONDITION_APPLE.- See Also:
- Constant Field Values
-
GL_UNSIGNALED_APPLE
public static final int GL_UNSIGNALED_APPLE
Returned invaluesfor GetSyncivAPPLEpnameSYNC_STATUS_APPLE.- See Also:
- Constant Field Values
-
GL_SIGNALED_APPLE
public static final int GL_SIGNALED_APPLE
Returned invaluesfor GetSyncivAPPLEpnameSYNC_STATUS_APPLE.- See Also:
- Constant Field Values
-
GL_SYNC_FLUSH_COMMANDS_BIT_APPLE
public static final int GL_SYNC_FLUSH_COMMANDS_BIT_APPLE
Accepted in theflagsparameter of ClientWaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_TIMEOUT_IGNORED_APPLE
public static final long GL_TIMEOUT_IGNORED_APPLE
Accepted in thetimeoutparameter of WaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_ALREADY_SIGNALED_APPLE
public static final int GL_ALREADY_SIGNALED_APPLE
Returned by ClientWaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_TIMEOUT_EXPIRED_APPLE
public static final int GL_TIMEOUT_EXPIRED_APPLE
Returned by ClientWaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_CONDITION_SATISFIED_APPLE
public static final int GL_CONDITION_SATISFIED_APPLE
Returned by ClientWaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_WAIT_FAILED_APPLE
public static final int GL_WAIT_FAILED_APPLE
Returned by ClientWaitSyncAPPLE.- See Also:
- Constant Field Values
-
GL_SYNC_OBJECT_APPLE
public static final int GL_SYNC_OBJECT_APPLE
Accepted by thetypeparameter of LabelObjectEXT and GetObjectLabelEXT.- See Also:
- Constant Field Values
-
-
Method Detail
-
glFenceSyncAPPLE
public static long glFenceSyncAPPLE(int condition, int flags)
-
glIsSyncAPPLE
public static boolean glIsSyncAPPLE(long sync)
-
glDeleteSyncAPPLE
public static void glDeleteSyncAPPLE(long sync)
-
glClientWaitSyncAPPLE
public static int glClientWaitSyncAPPLE(long sync, int flags, long timeout)
-
glWaitSyncAPPLE
public static void glWaitSyncAPPLE(long sync, int flags, long timeout)
-
glGetInteger64vAPPLE
public static void glGetInteger64vAPPLE(int pname, java.nio.LongBuffer params)
-
glGetInteger64APPLE
public static long glGetInteger64APPLE(int pname)
-
glGetSyncivAPPLE
public static void glGetSyncivAPPLE(long sync, int pname, java.nio.IntBuffer length, java.nio.IntBuffer values)
-
glGetSynciAPPLE
public static int glGetSynciAPPLE(long sync, int pname, java.nio.IntBuffer length)
-
glGetInteger64vAPPLE
public static void glGetInteger64vAPPLE(int pname, long[] params)Array version of:GetInteger64vAPPLE
-
glGetSyncivAPPLE
public static void glGetSyncivAPPLE(long sync, int pname, int[] length, int[] values)Array version of:GetSyncivAPPLE
-
-