X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Fsyncobj.h;h=51de9bf480948fb5aa50f75b909c3372cbcd8a12;hb=72f2551017e03f888d63fa9040120740c6d40620;hp=d2b4d051c9d24e98c0c588b0043ec9f1c494bf5b;hpb=f37070bab6af350caec905ea7658e9241042b6cc;p=mesa.git diff --git a/src/mesa/main/syncobj.h b/src/mesa/main/syncobj.h index d2b4d051c9d..51de9bf4809 100644 --- a/src/mesa/main/syncobj.h +++ b/src/mesa/main/syncobj.h @@ -31,34 +31,89 @@ #ifndef SYNCOBJ_H #define SYNCOBJ_H -#include "context.h" +#include "glheader.h" +#include "mfeatures.h" + +struct _glapi_table; +struct dd_function_table; +struct gl_context; +struct gl_sync_object; + +#if FEATURE_ARB_sync extern void _mesa_init_sync_object_functions(struct dd_function_table *driver); extern void -_mesa_init_sync(GLcontext *); +_mesa_init_sync_dispatch(struct _glapi_table *disp); extern void -_mesa_free_sync_data(GLcontext *); +_mesa_init_sync(struct gl_context *); -extern GLboolean -_mesa_IsSync(GLsync sync); +extern void +_mesa_free_sync_data(struct gl_context *); + +extern void +_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj); extern void +_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj); + +extern GLboolean GLAPIENTRY +_mesa_IsSync(GLsync sync); + +extern void GLAPIENTRY _mesa_DeleteSync(GLsync sync); -extern GLsync +extern GLsync GLAPIENTRY _mesa_FenceSync(GLenum condition, GLbitfield flags); -extern GLenum +extern GLenum GLAPIENTRY _mesa_ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout); -extern void +extern void GLAPIENTRY _mesa_WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout); -extern void +extern void GLAPIENTRY _mesa_GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); +#else /* FEATURE_ARB_sync */ + +#include "main/compiler.h" + +static INLINE void +_mesa_init_sync_object_functions(struct dd_function_table *driver) +{ +} + +static INLINE void +_mesa_init_sync_dispatch(struct _glapi_table *disp) +{ +} + +static INLINE void +_mesa_init_sync(struct gl_context *ctx) +{ +} + +static INLINE void +_mesa_free_sync_data(struct gl_context *ctx) +{ +} + +static INLINE void +_mesa_ref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj) +{ + ASSERT_NO_FEATURE(); +} + +static INLINE void +_mesa_unref_sync_object(struct gl_context *ctx, struct gl_sync_object *syncObj) +{ + ASSERT_NO_FEATURE(); +} + +#endif /* FEATURE_ARB_sync */ + #endif /* SYNCOBJ_H */