From 20d44dc9bc0f60afa93a6542ebcda44ee88f69ef Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 22 Apr 2005 21:16:28 +0000 Subject: [PATCH] types for Mesa implementation of EGL --- include/GLES/egltypes.h | 74 +++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 39 deletions(-) diff --git a/include/GLES/egltypes.h b/include/GLES/egltypes.h index 873a8459754..c81116ace21 100644 --- a/include/GLES/egltypes.h +++ b/include/GLES/egltypes.h @@ -1,48 +1,44 @@ /* - * egltypes.h - EGL API compatibility - * - * The intention here is to support multiple EGL implementations for the - * various backends - GLX, AGL, WGL, Solo - so we define the EGL types as - * opaque handles. We also define the Native types as opaque handles for - * now, which should be fine for GLX and Solo but the others who knows. - * They can extend this later. - * - * We require that 'int' be 32 bits. Other than that this should be pretty - * portable. - * - * Derived from the OpenGL|ES 1.1 egl.h on the Khronos website: - * http://www.khronos.org/opengles/spec_headers/opengles1_1/egl.h - * - */ - -#ifndef _EGLTYPES_H -#define _EGLTYPES_H +** egltypes.h for Mesa +** +** ONLY egl.h SHOULD INCLUDE THIS FILE! +** +** See comments about egltypes.h in the standard egl.h file. +*/ + #include + /* - * Native types - */ -typedef void *NativeDisplayType; -typedef void *NativePixmapType; -typedef void *NativeWindowType; +** These opaque EGL types are implemented as unsigned 32-bit integers: +*/ +typedef u_int32_t EGLDisplay; +typedef u_int32_t EGLConfig; +typedef u_int32_t EGLSurface; +typedef u_int32_t EGLContext; + +/* EGL_MESA_screen_surface */ +typedef u_int32_t EGLModeMESA; + /* - * Types and resources - */ -typedef GLboolean EGLBoolean; -typedef GLint EGLint; -typedef void *EGLDisplay; -typedef void *EGLConfig; -typedef void *EGLSurface; -typedef void *EGLContext; +** Other basic EGL types: +*/ +typedef u_int8_t EGLBoolean; +typedef int32_t EGLint; + +typedef void * NativeDisplayType; +typedef int NativePixmapType; +typedef int NativeWindowType; /* - * EGL and native handle values - */ -#define EGL_DEFAULT_DISPLAY ((NativeDisplayType)0) -#define EGL_NO_CONTEXT ((EGLContext)0) -#define EGL_NO_DISPLAY ((EGLDisplay)0) -#define EGL_NO_SURFACE ((EGLSurface)0) - -#endif /* _EGLTYPES_H */ +** EGL and native handle null values: +*/ +#define EGL_DEFAULT_DISPLAY ((NativeDisplayType) 0) +#define EGL_NO_CONTEXT ((EGLContext) 0) +#define EGL_NO_DISPLAY ((EGLDisplay) 0) +#define EGL_NO_SURFACE ((EGLSurface) 0) + +/* EGL_MESA_screen_surface */ +#define EGL_NO_MODE_MESA ((EGLModeMESA) 0) -- 2.30.2