Skip to navigationSkip to content


Designed to generate code in a consistent and reliable way and eliminates the need for manual coding of VAPS graphics, logic, and behavior

The world’s first COTS DO-178B qualifiable HMI tool.

Qualifiable to RTCA DO-178B level A, VAPS QCG is designed to generate code in a consistent and reliable way and eliminates the need for manual coding of VAPS graphics, logic, and behavior.

VAPS QCG dramatically shortens the time and effort required for producing qualifiable code for embedded displays.  Qualifiable to RTCA DO-178B level A, VAPS QCG is a code generation solution for deploying VAPS applications to a safety critical embedded system, including aircraft cockpit display systems. Since VAPS QCG is coupled with the VAPS graphical design environment, this tool enables graphics software generated from a VAPS application to be certified with a minimum of effort.

Reduce Effort

By greatly reducing the effort required within the software design, coding, and testing phases of the graphics display development lifecycle, VAPS QCG dramatically shortens the time required for developing certifiable embedded software products. Presagis also offers a range of Professional Services and DO-178B consultants to help you to quickly get your certification project up and running.

Generate optimized code for safety-critical systems

Designed to generate code in a consistent and reliable way, VAPS QCG eliminates the need for manual coding of VAPS graphics, logic and behavior and includes the following functionality:

  • You can generate either desktop executables for review and prototyping purposes or highly optimized code for porting to embedded systems.
  • Optimizations include reduced generated code size, reduced frame loading time, reduced runtime transformations, and increased drawing speed.
  • The entire process from the creation of a VAPS model to a fully functional executable can take just a few minutes.  The result is a reliable process that saves time in both the design and verification phases of embedded development and also reduces dependencies for specialized internal skill sets.

Key Features
Input objects

The input object is used to handle the events (such as press, release, move, etc) from an input device (mouse or similar). The type of events handled by the input object can be customised, i.e the user can decide which events will be supported by supplying the customised user code for handling the events. The runtime will process hit detection for pointer events and return the object(s), if any, that has an active area that intersects with the position at which the pointer event occurred.

Texture fonts

The texture fonts feature refers to using OpenGL textures to draw raster (bitmap) text. Using textures as opposed to drawing with gIBitmap provides more functionality, such as rotation and some scaling. It also greatly reduces bus traffic, as the textures are already loaded into the graphics accelerator memory.

Display lists

Drawing graphics using display lists is supported in QCG. If a graphical object is flagged as being a display list, specific drawing commands will be code generated. This will result in constructing and drawing a display list that contains all graphics within the graphical object. Fonts and circles can be optionally drawn with display lists.

Frame VPL sorting algorithm

The Frame VPL (visual priority level) sorting algorithm has been updated and now uses a more optimal sorting algorithm that will significantly improve both initialization used and runtime performance.

GDI driver lookup optimization

Previously, the GDI driver function for each GDI object was looked up at each call to a GDI object driver function. In 2.2, the driver for each object is only looked up at initialization time and is then cached for use on each call. This can save significant CPU cycles.

Comprehensive Toolset
Code generator and runtime libraries

Generate embeddable C-code directly from VAPS Metafiles for applications requiring DO-178B level A or ED-12B certification.

VAPS Developer license

Use VAPS Developer to model HMI applications for embedded avionics systems.

IBM DOORS™ interface license

Enhance your control over deliverables with this link between requirements and the end product.