Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 1 | #ifndef EGLDISPLAY_INCLUDED |
| 2 | #define EGLDISPLAY_INCLUDED |
| 3 | |
Brian Paul | 6052af1 | 2008-05-27 16:48:23 -0600 | [diff] [blame] | 4 | #ifdef _EGL_PLATFORM_X |
| 5 | #include <X11/Xlib.h> |
| 6 | #endif |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 7 | |
| 8 | #include "egltypedefs.h" |
| 9 | |
| 10 | |
| 11 | struct _egl_display |
| 12 | { |
Brian Paul | 6052af1 | 2008-05-27 16:48:23 -0600 | [diff] [blame] | 13 | EGLNativeDisplayType NativeDisplay; |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 14 | EGLDisplay Handle; |
| 15 | |
Brian Paul | 6052af1 | 2008-05-27 16:48:23 -0600 | [diff] [blame] | 16 | const char *DriverName; |
Brian Paul | 0c8908c | 2008-05-28 12:56:36 -0600 | [diff] [blame] | 17 | const char *DriverArgs; |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 18 | _EGLDriver *Driver; |
| 19 | |
| 20 | EGLint NumScreens; |
Brian Paul | c22990c | 2005-05-04 03:33:21 +0000 | [diff] [blame] | 21 | _EGLScreen **Screens; /* array [NumScreens] */ |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 22 | |
| 23 | EGLint NumConfigs; |
Brian Paul | 97035cb | 2008-06-04 11:34:10 -0600 | [diff] [blame] | 24 | _EGLConfig **Configs; /* array [NumConfigs] of ptr to _EGLConfig */ |
Brian Paul | 6052af1 | 2008-05-27 16:48:23 -0600 | [diff] [blame] | 25 | |
| 26 | #ifdef _EGL_PLATFORM_X |
| 27 | Display *Xdpy; |
| 28 | #endif |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 29 | }; |
| 30 | |
| 31 | |
| 32 | extern _EGLDisplay * |
| 33 | _eglNewDisplay(NativeDisplayType displayName); |
| 34 | |
| 35 | |
Brian Paul | 721ba15 | 2008-05-27 14:33:54 -0600 | [diff] [blame] | 36 | EGLDisplay |
| 37 | _eglGetDisplayHandle(_EGLDisplay *display); |
| 38 | |
| 39 | |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 40 | extern _EGLDisplay * |
| 41 | _eglLookupDisplay(EGLDisplay dpy); |
| 42 | |
| 43 | |
Brian Paul | 6052af1 | 2008-05-27 16:48:23 -0600 | [diff] [blame] | 44 | extern void |
| 45 | _eglSaveDisplay(_EGLDisplay *dpy); |
| 46 | |
| 47 | |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 48 | extern _EGLDisplay * |
| 49 | _eglGetCurrentDisplay(void); |
| 50 | |
| 51 | |
| 52 | extern void |
Jon Smirl | 7012d01 | 2005-05-13 18:31:35 +0000 | [diff] [blame] | 53 | _eglCleanupDisplay(_EGLDisplay *disp); |
| 54 | |
| 55 | |
| 56 | extern EGLBoolean |
| 57 | _eglQueryDisplayMESA(_EGLDriver *drv, EGLDisplay dpy, EGLint attrib, EGLint *value); |
| 58 | |
Brian Paul | adbff7e | 2005-04-22 21:09:39 +0000 | [diff] [blame] | 59 | |
| 60 | |
| 61 | #endif /* EGLDISPLAY_INCLUDED */ |