A dedicated API for Embedded and Wearable application development
NEMA®|GFX Library is a low level library that interfaces directly with the NEMA® GPUs and provides a software abstraction layer to organize and employ drawing commands with ease and efficiency. The target of NEMA®|GFX is to be able to be used as a back-end to existing APIs (such as OpenGL® , DirectFB or any proprietary one) but also to expose higher level drawing functions, so as to be used as a standalone Graphics API. Its small footprint, efficient design and lack of any external dependencies, makes it ideal for use in embedded applications. By leveraging NEMA®’s sophisticated architecture, it allows great performance with minimum CPU/MCU usage and power consumption.
NEMA®|GFX includes a set of higher level calls, forming a complete standalone Graphics API for applications in systems where no other APIs are needed. This API is able to carry out draw operations from as simple as lines, triangles and quadrilaterals to more complex ones like blitting and perspective correct texture mapping.
NEMA®|GFX is built on a modular architecture. An implementor may use only the lower layers of the architecture that provides communication to the NEMA® hardware, synchronization and basic primitives drawing. The very thin Hardware Abstraction Layer allows for fast integration to the underlying hardware. The upper low level drawing API acts as a back-end interface for accelerating any higher 3rd party Graphics API.
NEMA®|GFX is built on a modular architecture. These modules are generally stacked one over another, forming a layered scheme. This gives the implementor the freedom to tailor the software stack according to ones needs.
Small memory footprint optimization that eliminates the need for costly external memory.
GUI image enhancements for perspective correct 3D projection, transparency/alpha blending, color keying, multi-function image processing.
Performance and power-optimized code provides flexibility in development for programmers.
Support for multiple color formats for both source and destination textures.
Support for multiple operating systems and non-OS systems (including real-time operating systems) in resource constrained environments.
Command List support decouples CPU and GPU execution and provides the ability to reuse a Command List multiple times resulting in lower CPU utilization.