updates for latest EGLScreenMESA changes

This commit is contained in:
Brian Paul 2005-05-04 03:32:39 +00:00
parent 884b5ade86
commit 3aeae20685
2 changed files with 29 additions and 3 deletions

View file

@ -8,6 +8,25 @@
#include <stdlib.h>
/**
* Test EGL_MESA_screen_surface functions
*/
static void
TestScreens(EGLDisplay dpy)
{
#define MAX 8
EGLScreenMESA screens[MAX];
EGLint numScreens;
EGLint i;
eglGetScreensMESA(dpy, screens, MAX, &numScreens);
printf("Found %d screens\n", numScreens);
for (i = 0; i < numScreens; i++) {
printf(" Screen %d handle: %d\n", i, (int) screens[i]);
}
}
int
main(int argc, char *argv[])
@ -68,6 +87,8 @@ main(int argc, char *argv[])
b = eglMakeCurrent(d, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);
TestScreens(d);
eglDestroySurface(d, pbuffer);
eglDestroyContext(d, ctx);
eglTerminate(d);

View file

@ -98,12 +98,17 @@ PrintModes(EGLDisplay d)
#ifdef EGL_MESA_screen_surface
const char *extensions = eglQueryString(d, EGL_EXTENSIONS);
if (strstr("EGL_MESA_screen_surface", extensions)) {
EGLint scrn, numScreens = 1;
EGLScreenMESA screens[20];
EGLint numScreens = 1, scrn;
EGLModeMESA modes[MAX_MODES];
EGLint numModes, i;
eglGetScreensMESA(d, screens, 20, &numScreens);
printf("Number of Screens: %d\n\n", numScreens);
for (scrn = 0; scrn < numScreens; scrn++) {
eglGetModesMESA(d, scrn, modes, MAX_MODES, &numModes);
EGLint numModes, i;
eglGetModesMESA(d, screens[scrn], modes, MAX_MODES, &numModes);
printf("Screen %d Modes:\n", scrn);
printf(" id width height refresh\n");