Quantum Frameowrk™ (QF) is a reusable event-driven application framework for executing concurrent state machines specifically designed for real-time embedded (RTE) systems. The use of QF generally simplifies the design of event-driven software by allowing the application to be divided into multiple active objects that the framework manages. Active objects in QF are encapsulated tasks (each embedding a state machine and an event queue) that communicate with one another asynchronously by sending and receiving events. Within an active object, events are processed sequentially in a run-to-completion (RTC) fashion, while QF encapsulates all the details of thread-safe event exchange and queuing.
Most of QF™ is written in portable ANSI-C, with microprocessor-specific, compiler-specific, or op-erating system-specific code kept to a minimum for ease of portability. QF is designed to work with Quantum Event Processor (QEP) and a Real Time Operating System (RTOS) of your choice, or even with just "main+ISRs" configuration. The framework is very compact, typically taking up about 4KB of code and data (including the QEP Hierarchical Event Processor). QF has been used in hundreds of event-driven applications worldwide and is described in Part 2 of the book Practical UML Statecharts in C/C++, Second Edition, Newnes 2008.
Please refer to the QP/C++ Tutorial for information on implementing event-driven applications with the QF real-time framework and other components of the QP event-driven platform.
1.5.4