1 #ifndef EGLSCREEN_INCLUDED
2 #define EGLSCREEN_INCLUDED
5 #include "egltypedefs.h"
9 * Per-screen information.
10 * Note that an EGL screen doesn't have a size. A screen may be set to
11 * one of several display modes (width/height/scanrate). The screen
12 * then displays a drawing surface. The drawing surface must be at least
13 * as large as the display mode's resolution. If it's larger, the
14 * OriginX and OriginY fields control what part of the surface is visible
19 EGLScreenMESA Handle
; /* The public/opaque handle which names this object */
21 _EGLMode
*CurrentMode
;
22 _EGLSurface
*CurrentSurface
;
24 EGLint OriginX
, OriginY
; /**< Origin of scan-out region w.r.t. surface */
25 EGLint StepX
, StepY
; /**< Screen position/origin granularity */
28 _EGLMode
*Modes
; /**< array [NumModes] */
33 _eglInitScreen(_EGLScreen
*screen
);
37 _eglLookupScreen(EGLScreenMESA screen
, _EGLDisplay
*dpy
);
41 _eglAddScreen(_EGLDisplay
*display
, _EGLScreen
*screen
);
45 _eglGetScreensMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, EGLScreenMESA
*screens
, EGLint max_screens
, EGLint
*num_screens
);
49 _eglCreateScreenSurfaceMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLConfig
*conf
, const EGLint
*attrib_list
);
53 _eglShowScreenSurfaceMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLScreen
*scrn
, _EGLSurface
*surf
, _EGLMode
*m
);
57 _eglScreenModeMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLScreen
*scrn
, _EGLMode
*m
);
61 _eglScreenPositionMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLScreen
*scrn
, EGLint x
, EGLint y
);
65 _eglQueryDisplayMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, EGLint attribute
, EGLint
*value
);
69 _eglQueryScreenSurfaceMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
,
70 _EGLScreen
*scrn
, _EGLSurface
**surface
);
74 _eglQueryScreenModeMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLScreen
*scrn
, _EGLMode
**m
);
78 _eglQueryScreenMESA(_EGLDriver
*drv
, _EGLDisplay
*dpy
, _EGLScreen
*scrn
, EGLint attribute
, EGLint
*value
);
82 _eglDestroyScreenModes(_EGLScreen
*scrn
);
86 _eglDestroyScreen(_EGLScreen
*scrn
);
89 #endif /* EGLSCREEN_INCLUDED */