1 #ifndef EGLDRIVER_INCLUDED
2 #define EGLDRIVER_INCLUDED
5 #include "egltypedefs.h"
7 #include "egldefines.h"
11 * Optional EGL extensions info.
13 struct _egl_extensions
15 EGLBoolean MESA_screen_surface
;
16 EGLBoolean MESA_copy_context
;
18 char String
[_EGL_MAX_EXTENSIONS_LEN
];
23 * Base class for device drivers.
27 EGLBoolean Initialized
; /* set by driver after initialized */
29 void *LibHandle
; /* dlopen handle */
34 int APImajor
, APIminor
; /* returned through eglInitialize */
35 const char *ClientAPIs
;
39 _EGLExtensions Extensions
;
43 extern _EGLDriver
*_eglMain(_EGLDisplay
*dpy
, const char *args
);
47 _eglChooseDriver(_EGLDisplay
*dpy
);
51 _eglOpenDriver(_EGLDisplay
*dpy
, const char *driverName
, const char *args
);
55 _eglCloseDriver(_EGLDriver
*drv
, EGLDisplay dpy
);
59 _eglLookupDriver(EGLDisplay d
);
63 _eglInitDriverFallbacks(_EGLDriver
*drv
);
67 _eglQueryString(_EGLDriver
*drv
, EGLDisplay dpy
, EGLint name
);
71 _eglWaitGL(_EGLDriver
*drv
, EGLDisplay dpy
);
75 _eglWaitNative(_EGLDriver
*drv
, EGLDisplay dpy
, EGLint engine
);
79 #endif /* EGLDRIVER_INCLUDED */