1 #ifndef EGLGLOBALS_INCLUDED
2 #define EGLGLOBALS_INCLUDED
4 #include "egltypedefs.h"
11 struct _egl_thread_info
14 _EGLContext
*CurrentContext
;
24 EGLBoolean Initialized
;
26 _EGLHashtable
*Displays
;
27 _EGLHashtable
*Surfaces
;
29 EGLScreenMESA FreeScreenHandle
;
31 /* bitmaks of supported APIs (supported by _some_ driver) */
32 EGLint ClientAPIsMask
;
34 char ClientAPIs
[1000]; /**< updated by eglQueryString */
36 /* XXX temporary - should be thread-specific data (TSD) */
37 _EGLThreadInfo
*ThreadInfo
;
40 _EGLDriver
*Drivers
[10];
44 extern struct _egl_global _eglGlobal
;
48 _eglInitGlobals(void);
52 _eglDestroyGlobals(void);
55 extern _EGLThreadInfo
*
56 _eglNewThreadInfo(void);
60 _eglDeleteThreadData(_EGLThreadInfo
*t
);
63 extern _EGLThreadInfo
*
64 _eglGetCurrentThread(void);
68 _eglError(EGLint errCode
, const char *msg
);
71 #endif /* EGLGLOBALS_INCLUDED */