Class KHRFenceSync
This extension introduces the concept of "sync objects" into EGL. Sync objects are a synchronization primitive, representing events whose completion can be tested or waited upon. This extension borrows heavily from the GL_ARB_sync extension and introduces a type of sync object known as a "fence sync object" comparable to the OpenGL fence sync object. The specification is designed to allow additional types of sync objects to be easily introduced in later extensions.
Fence sync objects have corresponding fence commands, which are inserted into a client API command stream at the time the fence sync is created. A fence sync object is used to wait for completion of the corresponding fence command. This allows applications to request a partial Finish of an API command stream, wherein all commands issued in a particular client API context will be forced to complete before control is returned to the calling thread.
This document describes three different extension strings collectively. The "EGL_KHR_fence_sync" string indicates that fence syncs and the corresponding interfaces (to create and place a fence, destroy, query, and wait on) are supported.
The remaining extensions list valid client APIs for fence syncs. The "GL_OES_EGL_sync" string indicates that a fence sync object can be created in association with a fence command placed in the command stream of a bound OpenGL ES context. The "VG_KHR_EGL_sync" string indicates the same thing for a bound OpenVG context.
Requires EGL 1.1
.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final int
static final int
-
Method Summary
Modifier and TypeMethodDescriptionstatic int
eglClientWaitSyncKHR
(long dpy, long sync, int flags, long timeout) static long
eglCreateSyncKHR
(long dpy, int type, int[] attrib_list) Array version of:CreateSyncKHR
static long
eglCreateSyncKHR
(long dpy, int type, IntBuffer attrib_list) static boolean
eglDestroySyncKHR
(long dpy, long sync) static boolean
eglGetSyncAttribKHR
(long dpy, long sync, int attribute, int[] value) Array version of:GetSyncAttribKHR
static boolean
eglGetSyncAttribKHR
(long dpy, long sync, int attribute, IntBuffer value) static long
neglCreateSyncKHR
(long dpy, int type, long attrib_list) static int
neglGetSyncAttribKHR
(long dpy, long sync, int attribute, long value)
-
Field Details
-
EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR
public static final int EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR- See Also:
-
EGL_SYNC_CONDITION_KHR
public static final int EGL_SYNC_CONDITION_KHR- See Also:
-
EGL_SYNC_FENCE_KHR
public static final int EGL_SYNC_FENCE_KHR- See Also:
-
-
Method Details
-
neglCreateSyncKHR
public static long neglCreateSyncKHR(long dpy, int type, long attrib_list) -
eglCreateSyncKHR
-
eglDestroySyncKHR
public static boolean eglDestroySyncKHR(long dpy, long sync) -
eglClientWaitSyncKHR
public static int eglClientWaitSyncKHR(long dpy, long sync, int flags, long timeout) -
neglGetSyncAttribKHR
public static int neglGetSyncAttribKHR(long dpy, long sync, int attribute, long value) -
eglGetSyncAttribKHR
-
eglCreateSyncKHR
public static long eglCreateSyncKHR(long dpy, int type, @Nullable int[] attrib_list) Array version of:CreateSyncKHR
-
eglGetSyncAttribKHR
public static boolean eglGetSyncAttribKHR(long dpy, long sync, int attribute, int[] value) Array version of:GetSyncAttribKHR
-