MPLAB Harmony Graphics Configurator along with Aria graphics composer generates application and library code for Aria library use. This is considered middleware code. MHC will parse all graphics middleware components and produces project specific code for the UI design.
The MHC code repository for graphics files is: firmware/src/<config>/gfx
The list below show files for the aria library code.
- libaria_harmony.h/c – These files provide the interface that binds libaria to the overall MPLAB Harmony framework. They contain the implementations for the standard state management, variable storage, and initialization and tasks functions. If the touch functionality is enabled then the touch bindings are also generated in libaria_harmony.c.
- libaria_init.h/c - These files contain the main initialization functions for the library state and screens. The header file contains all predefined information for the library state including screen IDs, schemes, and widget pointers. The main initialization function initializes all schemes and screens, creates all screen objects, and sets the initial state of the library context. As each screen must be capable of being created at any time, each screen has a unique create function that can be called at any time by the library. The libaria_init.c file contains these create functions.
- libaria_events.h/c – The event files contain the definitions and implementations of all enabled MHGC events. Each event implementation will contain all generated actions for that event.
- libaria_macros.h/c – The macro files contain the definitions and implementations of all defined MHGC screen macros. A macro is similar to an event in that it can contain actions. However, it is meant to be called from an external source such as the main application.
- libaria_config.h – This file contains configuration values for the library. These are controlled through settings defined in MHC.
- gfx_display_def.c – This file contains generated definitions for enabled graphics displays.
- gfx_driver_def.c – This file contains generated definitions for enabled graphics drivers.
- gfx_processor_def.c – This file contains generated definitions for enabled graphics processors.
- gfx_assets.h/c – These files contain generated asset data.