Class EXTSyncReuse
- java.lang.Object
-
- org.lwjgl.egl.EXTSyncReuse
-
public class EXTSyncReuse extends java.lang.Object
Native bindings to the EXT_sync_reuse extension.The original
EGLSync
extensions separated sync objects into two types: fence sync objects signaled by one time events in an API command pipeline; and reusable sync objects signaled by commands which can be issued again and again. However, this conflates reusability of the event triggering a sync object with theEGLSync
object itself.Although the event associated with a fence sync object will only occur once, there is no reason that it can't be replaced with a new event. Doing so would avoid unnecessary allocation and free operations in an application that repeatedly waits for events. With the current interfaces, such applications must constantly create and destroy new
EGLSync
objects.This extension allows all sync objects to be reusable. When a sync object is in the signaled state, it can be reset back to an unsignaled state, regenerating or reevaluating the events that trigger them. For fence sync objects, this means generating a new fence in the current API. For OpenCL event sync objects, this means waiting for a new OpenCL event handle. This mechanism also allows sync objects to be created in the signaled state with no associated fence/event, and have one applied later. Thus all
EGLSyncs
required by an application can be allocated up front, before any rendering operations have begun.Requires
EGL 1.5
orEGL 1.4
withKHR_fence_sync
.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
eglUnsignalSyncEXT(long dpy, long sync, org.lwjgl.PointerBuffer attrib_list)
static int
neglUnsignalSyncEXT(long dpy, long sync, long attrib_list)
-