• Home
  • Raw
  • Download

Lines Matching refs:sync

52     This extension introduces the concept of "sync objects" into EGL.
55 borrows from the GL_ARB_sync extension but introduces a type of sync
56 object known as "reusable sync object" comparable to an OS
58 sync objects to be easily introduced in later extensions.
60 Reusable sync objects may be used to synchronize activity between
68 * EGLSyncKHR is an opaque handle to an EGL sync object
89 EGLSyncKHR sync);
93 EGLSyncKHR sync,
99 EGLSyncKHR sync,
104 EGLSyncKHR sync,
155 operations within a thread, <sync objects> are provided to enable
161 <unsignaled>. Initially, sync objects are unsignaled. EGL may be
162 asked to wait for a sync object to become signaled, or a sync
165 Depending on the type of a sync object, its status may be changed
167 unsignaling the sync.
171 sync object. All sync objects include attributes for their type and
173 for different types of sync objects.
175 <Reusable sync objects> are created in the unsignaled state, and may
177 reusable sync object's status from unsignaled to signaled will
178 release any threads waiting on that sync object.
187 creates a sync object of the specified <type> associated with the
190 of the sync object, terminated by an attribute entry EGL_NONE.
194 If <type> is EGL_SYNC_REUSABLE_KHR, a reusable sync object is
196 (containing only EGL_NONE). Attributes of the reusable sync object
213 * If <type> is not a supported type of sync object,
221 EGLSyncKHR sync,
225 blocks the calling thread until the specified sync object <sync> is
229 <sync> at any given time. When there are multiple threads blocked on
230 the same <sync> and the sync object is signaled, all such threads
235 tests the current status of <sync>. If the value of <timeout> is the
243 indicates that the specified timeout period expired before <sync>
244 was signaled, or if <timeout> is zero, indicates that <sync> is
246 indicates that <sync> was signaled before the timeout expired, which
247 includes the case when <sync> was already signaled when
252 <flags>, and <sync> is unsignaled when eglClientWaitSyncKHR is
255 eglGetCurrentContext()) before blocking on <sync>. If no context is
259 If a sync object is destroyed while an eglClientWaitSyncKHR is
261 return immediately, just as if the sync object had been signaled
267 * If <sync> is not a valid sync object for <dpy>, EGL_FALSE is
270 eglCreateSyncKHR when <sync> was created, the behaviour is
278 EGLSyncKHR sync,
281 signals or unsignals the reusable sync object <sync> by changing its
283 as a result of calling eglSignalSyncKHR the status of <sync>
285 commands blocking on <sync> will unblock.
291 EGL_SIGNALED_KHR Set the status of <sync> to signaled
292 EGL_UNSIGNALED_KHR Set the status of <sync> to unsignaled
299 * If <sync> is not a valid sync object for <dpy>, EGL_FALSE is
301 * If the type of <sync> is not EGL_SYNC_REUSABLE_KHR, EGL_FALSE is
304 eglCreateSyncKHR when <sync> was created, the behaviour is
312 EGLSyncKHR sync,
316 is used to query attributes of the sync object <sync>. Legal values
317 for <attribute> depend on the type of sync object, as shown in table
323 EGL_SYNC_TYPE_KHR Type of the sync object All
324 EGL_SYNC_STATUS_KHR Status of the sync object All
331 * If <sync> is not a valid sync object for <dpy>, EGL_FALSE is
334 when <sync> was created, the behaviour is undefined.
338 * If <attribute> is not supported for the type of sync object
339 passed in <sync>, EGL_FALSE is returned and an EGL_BAD_MATCH
348 EGLSyncKHR sync);
350 is used to destroy an existing sync object. If any
351 eglClientWaitSyncKHR commands are blocking on <sync> when
352 eglDestroySyncKHR is called, they will be woken up, as if <sync>
355 If no errors are generated, EGL_TRUE is returned, and <sync> will no
356 longer be the handle of a valid sync object.
361 * If <sync> is not a valid sync object for <dpy>, EGL_FALSE is
364 when <sync> was created, the behaviour is undefined."
371 extension defining two types of sync object; a "reusable sync
372 object" and a "fence sync object". That extension was split to
373 produce standalone extensions for each type of sync object, and
376 fence sync objects but is otherwise very similar to the
458 RESOLVED: eglClientWaitSyncKHR blocks until the status of the sync
464 * A reusable sync object has two possible status values: signaled
466 * When created, the status of the sync object is unsignaled by
468 * A reusable sync can be set to signaled or unsignaled
470 * A wait function called on a sync object in the unsignaled state
472 when the sync object transitions to the signaled state.
473 * A wait function called on a sync object in the signaled state
484 8. Can multiple WaitSyncs be placed on the same sync object?
492 point is to expose it through the API to developers as either a sync
498 reusable sync object?
501 reusable object when the sync object is deleted so that waiting
508 of zero for an unsignaled <sync> (Bug 11576).
510 - Simplify issues list to remove issues specific to fence sync
517 to create "fence sync objects and all tokens/wording specific to
522 - Update eglDestroySyncKHR to special-case deletion of fence sync
531 - Define separate one-time fence sync and reusable sync extensions
535 which functions apply to which types of sync objects. Update
538 - Clarify that all waiters are woken up on signalling a sync.
545 - Changed sync flags type from EGLuint to EGLint and add issue 7.
563 - remove obsolete wording about Native sync objects (see issue 5)
568 - Removed native sync support (eglCreateNativeSyncKHR and