The Symbian platform provides support for a number of APIs created by the Khronos Group (www.khronos.org). This is a member-funded industry consortium focused on the creation of open standard, royalty-free APIs to enable the authoring and accelerated playback of dynamic media on a wide variety of platforms and devices. This topic provides a brief summary of the Khronos APIs that are supported in the Symbian platform.
OpenGL ES
OpenGL is a 2D and 3D graphics API that provides a broad set of rendering, texture mapping, special effects, and other visualization functions. It gives software developers access to geometric and image primitives, display lists, modeling transformations, lighting and texturing, anti-aliasing and blending. OpenGL ES is a subset of OpenGL optimized for 2D and 3D graphics on embedded devices such as mobile phones.
See: OpenGLES Collection
OpenVG
OpenVG is an API that provides a low-level hardware acceleration interface for rendering vector graphics libraries such as Flash and Scalable Vector Graphics (SVG). OpenVG is targeted primarily at handheld devices that require portable acceleration of high-quality vector graphics for user interfaces and text on small screen devices. It does this while enabling hardware acceleration to provide smooth interactive performance at low power levels.
See: OpenVG Collection.
EGL
EGL is an interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system.
See: EGL Collection
OpenWF Composition
OpenWF Composition (OpenWF-C) provides a hardware abstraction layer that allows power-efficient hardware-accelerated composition on a wide variety of hardware platforms. OpenWF-C is particularly aimed at systems with limited memory bandwidth, such as mobile devices. OpenWF-C enables the UI and the window system stack to be independent of the hardware used to achieve the composition. OpenWF-C is a system-level API that can be ignored by application developers.
The following diagram shows the relationships between the Khronos rendering APIs.
Figure: Dependencies between the Khronos rendering components