eglmode.h revision ad6f8eba00359fcb7abff8105dcb7a9dd2f32fec
1#ifndef EGLMODE_INCLUDED
2#define EGLMODE_INCLUDED
3
4#include "egltypedefs.h"
5
6
7/**
8 * Data structure which corresponds to an EGLModeMESA.
9 */
10struct _egl_mode
11{
12   EGLModeMESA Handle;     /* the public/opaque handle which names this mode */
13   EGLint Width, Height;   /* size in pixels */
14   EGLint RefreshRate;     /* rate * 1000.0 */
15   EGLint Optimal;
16   EGLint Interlaced;
17   const char *Name;
18
19   /* Other possible attributes */
20   /* interlaced */
21   /* external sync */
22};
23
24
25extern _EGLMode *
26_eglLookupMode(EGLDisplay dpy, EGLModeMESA mode);
27
28
29extern _EGLMode *
30_eglAddNewMode(_EGLScreen *screen, EGLint width, EGLint height,
31               EGLint refreshRate, const char *name);
32
33
34extern EGLBoolean
35_eglChooseModeMESA(_EGLDriver *drv, EGLDisplay dpy, EGLScreenMESA screen,
36                   const EGLint *attrib_list, EGLModeMESA *modes,
37                   EGLint modes_size, EGLint *num_modes);
38
39
40extern EGLBoolean
41_eglGetModesMESA(_EGLDriver *drv, EGLDisplay dpy, EGLScreenMESA screen,
42                 EGLModeMESA *modes, EGLint modes_size, EGLint *num_modes);
43
44
45extern EGLBoolean
46_eglGetModeAttribMESA(_EGLDriver *drv, EGLDisplay dpy, EGLModeMESA mode,
47                      EGLint attribute, EGLint *value);
48
49
50extern const char *
51_eglQueryModeStringMESA(_EGLDriver *drv, EGLDisplay dpy, EGLModeMESA mode);
52
53
54#endif /* EGLMODE_INCLUDED */
55