1 #ifndef EGLDRIVER_INCLUDED
2 #define EGLDRIVER_INCLUDED
5 #include "egltypedefs.h"
8 /* should probably use a dynamic-lengh string, but this will do */
9 #define MAX_EXTENSIONS_LEN 1000
13 * Base class for device drivers.
17 EGLBoolean Initialized
; /* set by driver after initialized */
19 void *LibHandle
; /* dlopen handle */
24 int APImajor
, APIminor
; /* returned through eglInitialize */
28 /* Extension enable flags */
29 EGLBoolean MESA_screen_surface
;
30 EGLBoolean MESA_copy_context
;
32 /* Extensions string */
33 char Extensions
[MAX_EXTENSIONS_LEN
];
37 extern _EGLDriver
*_eglMain(_EGLDisplay
*dpy
);
41 _eglChooseDriver(EGLDisplay dpy
);
45 _eglOpenDriver(_EGLDisplay
*dpy
, const char *driverName
);
49 _eglCloseDriver(_EGLDriver
*drv
, EGLDisplay dpy
);
53 _eglLookupDriver(EGLDisplay d
);
57 _eglInitDriverFallbacks(_EGLDriver
*drv
);
61 _eglQueryString(_EGLDriver
*drv
, EGLDisplay dpy
, EGLint name
);
65 _eglWaitGL(_EGLDriver
*drv
, EGLDisplay dpy
);
69 _eglWaitNative(_EGLDriver
*drv
, EGLDisplay dpy
, EGLint engine
);
73 #endif /* EGLDRIVER_INCLUDED */