Merge branch 'mesa_7_5_branch'
[mesa.git] / src / egl / main / eglglobals.h
1 #ifndef EGLGLOBALS_INCLUDED
2 #define EGLGLOBALS_INCLUDED
3
4 #include "egltypedefs.h"
5 #include "egldisplay.h"
6 #include "eglcurrent.h"
7 #include "eglmutex.h"
8
9
10 /**
11 * Global library data
12 */
13 struct _egl_global
14 {
15 _EGLMutex *Mutex;
16
17 /* the list of all displays */
18 _EGLDisplay *DisplayList;
19
20 EGLScreenMESA FreeScreenHandle;
21
22 /* bitmaks of supported APIs (supported by _some_ driver) */
23 EGLint ClientAPIsMask;
24
25 EGLint NumDrivers;
26 _EGLDriver *Drivers[10];
27
28 EGLint NumAtExitCalls;
29 void (*AtExitCalls[10])(void);
30 };
31
32
33 extern struct _egl_global _eglGlobal;
34
35
36 extern void
37 _eglAddAtExitCall(void (*func)(void));
38
39
40 #endif /* EGLGLOBALS_INCLUDED */