Lines Matching refs:sync

28  * Unlike textures and other objects that are shared between contexts, sync
30 * and delete behavior of sync objects is slightly different. References to
31 * sync objects are added:
45 * As with shader objects, sync object names become invalid as soon as
109 * whether the state of the sync object has changed.
124 * the state of the sync object changes or the timeout expires.
144 * Allocate/init the context state related to sync objects.
154 * Free the context state related to sync objects.
164 * Check if the given sync object is:
166 * - not in sync objects hash table
169 * Returns the internal gl_sync_object pointer if the sync object is valid
174 * could delete the sync object while you are still working on it.
177 _mesa_get_and_ref_sync(struct gl_context *ctx, GLsync sync, bool incRefCount)
179 struct gl_sync_object *syncObj = (struct gl_sync_object *) sync;
217 _mesa_IsSync(GLsync sync)
222 return _mesa_get_and_ref_sync(ctx, sync, false) ? GL_TRUE : GL_FALSE;
227 delete_sync(struct gl_context *ctx, GLsync sync, bool no_error)
233 * DeleteSync will silently ignore a <sync> value of zero. An
234 * INVALID_VALUE error is generated if <sync> is neither zero nor the
235 * name of a sync object.
237 if (sync == 0) {
241 syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
244 "glDeleteSync (not a valid sync object)");
248 /* If there are no client-waits or server-waits pending on this sync, delete
259 _mesa_DeleteSync_no_error(GLsync sync)
262 delete_sync(ctx, sync, true);
267 _mesa_DeleteSync(GLsync sync)
270 delete_sync(ctx, sync, false);
282 * applications. If sync support is extended to provide support for
344 * ALREADY_SIGNALED indicates that <sync> was signaled at the time
346 * if <sync> was signaled, even if the value of <timeout> is zero.
368 _mesa_ClientWaitSync_no_error(GLsync sync, GLbitfield flags, GLuint64 timeout)
372 struct gl_sync_object *syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
378 _mesa_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
390 syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
393 "glClientWaitSync (not a valid sync object)");
411 _mesa_WaitSync_no_error(GLsync sync, GLbitfield flags, GLuint64 timeout)
415 struct gl_sync_object *syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
421 _mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
437 syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
440 "glWaitSync (not a valid sync object)");
449 _mesa_GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length,
457 syncObj = _mesa_get_and_ref_sync(ctx, sync, true);
460 "glGetSynciv (not a valid sync object)");
476 /* Update the state of the sync by dipping into the driver. Note that