Overview of Screen
Screen is a compositing windowing system. Unlike traditional windowing systems that arbitrate access to a single buffer associated with a display, this compositing windowing system provides the means for applications to render off-screen.
Rendering to off-screen buffers allows the manipulation of window contents without having to involve the applications that are doing the rendering. Windows can be moved, zoomed (in or out), rotated, or have other effects applied to them, without requiring the application to be aware that such effects are taking place or to perform a redraw.
Screen is responsible for:
- running all drivers (for example, input, display, OpenGL ES)
- allocating memory needed by application windows
- displaying content when rendering completes
Screen integrates multiple graphics and user interface (UI) technologies into a single scene. This scene is rendered into one image that is associated with a display.
The main responsibility of Screen is to combine all visible window buffers into a single displayable image. The Composition Manager is responsible for creating this image.
Screen has a plug-in architecture that includes hardware-specific compositing modules and a module for OpenGL for Embedded Systems (OpenGL ES).
Screen uses GPU-accelerated operations to optimally build the final scene.
Communicating with applications
- creating and destroying windows
- creating and destroying pixmaps
- using accessor functions to set and get native window, pixmap, display, device, and buffer properties
- drawing into native buffers that are associated with windows and pixmaps
- making areas, within buffers, that can be displayed
- Receiving and processing asynchronous events from Screen
- sending events to other windowed applications
- software; applications access the window buffer and write to it using the CPU
- OpenGL ES; use EGL to target the window buffer(s) with OpenGL ES calls
Last modified: 2015-03-31