/* the list of all displays */
_EGLDisplay *DisplayList;
+ _EGLDevice *DeviceList;
+
EGLint NumAtExitCalls;
void (*AtExitCalls[10])(void);
- const char *ClientExtensionString;
+ /*
+ * Under libglvnd, the client extension string has to be split into two
+ * strings, one for platform extensions, and one for everything else. So,
+ * define separate strings for them. _eglGetClientExtensionString will
+ * concatenate them together for a non-libglvnd build.
+ */
+ const char *ClientOnlyExtensionString;
+ const char *PlatformExtensionString;
+ char *ClientExtensionString;
EGLDEBUGPROCKHR debugCallback;
unsigned int debugTypesEnabled;
extern void
_eglAddAtExitCall(void (*func)(void));
+static inline unsigned int DebugBitFromType(EGLenum type)
+{
+ assert(type >= EGL_DEBUG_MSG_CRITICAL_KHR && type <= EGL_DEBUG_MSG_INFO_KHR);
+ return (1 << (type - EGL_DEBUG_MSG_CRITICAL_KHR));
+}
+
+extern const char *
+_eglGetClientExtensionString(void);
+
+/**
+ * Perform validity checks on a generic pointer.
+ */
+extern EGLBoolean
+_eglPointerIsDereferencable(void *p);
#endif /* EGLGLOBALS_INCLUDED */