public class EXTSyncReuse
extends java.lang.Object
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 the EGLSync 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 or EGL 1.4 with KHR_fence_sync.
| Modifier and Type | Method and Description |
|---|---|
static boolean |
eglUnsignalSyncEXT(long dpy,
long sync,
org.lwjgl.PointerBuffer attrib_list) |
static int |
neglUnsignalSyncEXT(long dpy,
long sync,
long attrib_list) |
Copyright LWJGL. All Rights Reserved. License terms.