1 #ifndef EGLSCREEN_INCLUDED
2 #define EGLSCREEN_INCLUDED
5 /* NOTE: there is no public EGLScreen type, we refers to screens with
11 * Per-screen information.
12 * Note that an EGL screen doesn't have a size. A screen may be set to
13 * one of several display modes (width/height/scanrate). The screen
14 * then displays a drawing surface. The drawing surface must be at least
15 * as large as the display mode's resolution. If it's larger, the
16 * OriginX and OriginY fields control what part of the surface is visible
21 EGLScreenMESA Handle
; /* The public/opaque handle which names this object */
23 _EGLMode
*CurrentMode
;
24 _EGLSurface
*CurrentSurface
;
25 EGLint OriginX
, OriginY
;
28 _EGLMode
*Modes
; /* array [NumModes] */
33 _eglInitScreen(_EGLScreen
*screen
);
37 _eglLookupScreen(EGLDisplay dpy
, EGLScreenMESA screen
);
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 config
, const EGLint
*attrib_list
);
53 _eglShowSurfaceMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLScreenMESA screen
, EGLSurface surface
, EGLModeMESA mode
);
57 _eglScreenModeMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLScreenMESA screen
, EGLModeMESA mode
);
61 _eglScreenPositionMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLScreenMESA screen
, EGLint x
, EGLint y
);
65 _eglQueryDisplayMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLint attribute
, EGLint
*value
);
69 _eglQueryScreenSurfaceMESA(_EGLDriver
*drv
, EGLDisplay dpy
,
70 EGLScreenMESA screen
, EGLSurface
*surface
);
74 _eglQueryScreenModeMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLScreenMESA screen
, EGLModeMESA
*mode
);
78 _eglQueryScreenMESA(_EGLDriver
*drv
, EGLDisplay dpy
, EGLScreenMESA screen
, EGLint attribute
, EGLint
*value
);
82 _eglDestroyScreenModes(_EGLScreen
*scrn
);
86 _eglDestroyScreen(_EGLScreen
*scrn
);
89 #endif /* EGLSCREEN_INCLUDED */