1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifndef GLTHREAD_H
2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define GLTHREAD_H
3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#include "mapi/u_thread.h"
5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifdef __cplusplus
7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgextern "C" {
8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif
9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_DECLARE_STATIC_MUTEX(name) u_mutex_declare_static(name)
11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_INIT_MUTEX(name)           u_mutex_init(name)
12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_DESTROY_MUTEX(name)        u_mutex_destroy(name)
13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_LOCK_MUTEX(name)           u_mutex_lock(name)
14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_UNLOCK_MUTEX(name)         u_mutex_unlock(name)
15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_InitTSD(tsd)               u_tsd_init(tsd);
17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_DestroyTSD(tsd)            u_tsd_destroy(tsd);
18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_GetTSD(tsd)                u_tsd_get(tsd);
19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define _glthread_SetTSD(tsd, ptr)           u_tsd_set(tsd, ptr);
20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgtypedef struct u_tsd _glthread_TSD;
22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgtypedef u_mutex _glthread_Mutex;
23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifdef __cplusplus
25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org}
26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif
27f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org
28f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif /* GLTHREAD_H */
29