diff options
Diffstat (limited to 'src/lib/eglutil.c')
-rw-r--r-- | src/lib/eglutil.c | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/lib/eglutil.c b/src/lib/eglutil.c new file mode 100644 index 0000000..4edbca7 --- /dev/null +++ b/src/lib/eglutil.c @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2011-2012 Luc Verhaegen <libv@codethink.co.uk> + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sub license, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ +#include <stdio.h> +#include <unistd.h> +#include <stdbool.h> +#include <EGL/egl.h> +#include <GLES2/gl2.h> +#include "eglutil.h" +char * +eglStrError(EGLint error) +{ + printf("Error: %d\n", error); + + switch (error) { + case EGL_SUCCESS: + return "EGL_SUCCESS"; + case EGL_BAD_ALLOC: + return "EGL_BAD_ALLOC"; + case EGL_BAD_CONFIG: + return "EGL_BAD_CONFIG"; + case EGL_BAD_PARAMETER: + return "EGL_BAD_PARAMETER"; + case EGL_BAD_MATCH: + return "EGL_BAD_MATCH"; + case EGL_BAD_ATTRIBUTE: + return "EGL_BAD_ATTRIBUTE"; + default: + return "UNKNOWN"; + } +} + +void printEGLConfig(EGLDisplay display, EGLConfig config) +{ + EGLint red, green, blue, alpha, depth, stencil; + EGLint samples, sampleBuffers; + eglGetConfigAttrib(display, config, EGL_RED_SIZE, &red); + eglGetConfigAttrib(display, config, EGL_GREEN_SIZE, &green); + eglGetConfigAttrib(display, config, EGL_BLUE_SIZE, &blue); + eglGetConfigAttrib(display, config, EGL_ALPHA_SIZE, &alpha); + eglGetConfigAttrib(display, config, EGL_DEPTH_SIZE, &depth); + eglGetConfigAttrib(display, config, EGL_STENCIL_SIZE, &stencil); + eglGetConfigAttrib(display, config, EGL_SAMPLE_BUFFERS, &sampleBuffers); + eglGetConfigAttrib(display, config, EGL_SAMPLES, &samples); + printf("EGL config: R%i G%i B%i A%i D%i S%i BUFFERS=%i SAMPLES=%i\n", + red, green, blue, alpha, depth, stencil, sampleBuffers, samples); +} + |