Application and UI Templates
Templates in TouchGFX provide a convenient mechanism for distributing, obtaining and modifying board support packages as well as examples and demos. Templates are located online, and using the TouchGFX Designer you can browse and download the template(s) you need for your specific project.
An application template (AT) serves as a complete board support package for a specific piece of hardware. It contains all the files needed to deploy an application on the hardware, including all the low-level drivers, TouchGFX HAL files, operating system, toolchain/IDE configurations et cetera. Because an application template contains a complete system, there might be more than one AT for the same board. For instance, there could be one AT for a board using FreeRTOS 8.2.0 and other ATs using different operating systems, or different versions of the low-level drivers.
ATs can contain additional code or third-party libraries such as LibJPEG that are required for specific projects. The file structure of an AT, such as location of source code files, the TouchGFX core library, or IDE project files is completely open, and applications based on a certain AT can even modify the file structure to match the project requirements.
All application templates also support the PC simulator, which can be launched from the Designer. There is also a dedicated application template for the PC simulator only, in case you do not have a target board.
Application Template Properties
An application template has two properties that will influence the user interface you can create with it. These are the display resolution (width and height in pixels) and the color depth (bits per pixel). Typically, an AT has just one resolution and one color depth available, being defined by the LCD attached to the hardware. Some boards however might have replaceable displays, or a display that supports several color depths, and in these cases the AT will contain a list of the valid values for resolution and color depth.
IDE and toolchain support
An AT will normally contain support for the IAR, Keil uVision and GCC toolchains, although there might be exceptions. The AT description will state which toolchains are supported.
A UI template is a TouchGFX application which is platform independent, it is just the UI. Just like with application templates, a UI template is designed for one or more resolutions and color depths. Being platform independent means that you can deploy a UI template on any board as long as the resolution and color depth matches those defined by the application template for that board.