egl: only windows are renderable at this time
[mesa.git] / src / egl / main / eglconfig.h
1 #ifndef EGLCONFIG_INCLUDED
2 #define EGLCONFIG_INCLUDED
3
4
5 #include "egltypedefs.h"
6 #include <GLES/gl.h>
7
8
9 #define MAX_ATTRIBS 100
10 #define FIRST_ATTRIB EGL_BUFFER_SIZE
11
12
13 struct _egl_config
14 {
15 EGLConfig Handle; /* the public/opaque handle which names this config */
16 EGLint Attrib[MAX_ATTRIBS];
17 };
18
19
20 #define SET_CONFIG_ATTRIB(CONF, ATTR, VAL) ((CONF)->Attrib[(ATTR) - FIRST_ATTRIB] = VAL)
21 #define GET_CONFIG_ATTRIB(CONF, ATTR) ((CONF)->Attrib[(ATTR) - FIRST_ATTRIB])
22
23
24 extern void
25 _eglInitConfig(_EGLConfig *config, EGLint id);
26
27
28 extern EGLConfig
29 _eglGetConfigHandle(_EGLConfig *config);
30
31
32 extern _EGLConfig *
33 _eglLookupConfig(_EGLDriver *drv, EGLDisplay dpy, EGLConfig config);
34
35
36 extern _EGLConfig *
37 _eglAddConfig(_EGLDisplay *display, _EGLConfig *config);
38
39
40 extern EGLBoolean
41 _eglParseConfigAttribs(_EGLConfig *config, const EGLint *attrib_list);
42
43
44 extern EGLBoolean
45 _eglChooseConfig(_EGLDriver *drv, EGLDisplay dpy, const EGLint *attrib_list, EGLConfig *configs, EGLint config_size, EGLint *num_config);
46
47
48 extern EGLBoolean
49 _eglGetConfigAttrib(_EGLDriver *drv, EGLDisplay dpy, EGLConfig config, EGLint attribute, EGLint *value);
50
51
52 extern EGLBoolean
53 _eglGetConfigs(_EGLDriver *drv, EGLDisplay dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config);
54
55
56 extern void
57 _eglSetConfigAttrib(_EGLConfig *config, EGLint attr, EGLint val);
58
59
60 #endif /* EGLCONFIG_INCLUDED */