QP is an event-driven, RTOS-like, active object framework for microcontrollers, such as mbed. The QP framework provides thread-safe execution of active objects (concurrent state machines) and support both manual and automatic coding of UML statecharts in readable, production-quality C or C++. Automatic code generation of QP code is supported by the free QM modeling tool.

Dependents:   qp_hangman qp_dpp qp_blinky

Embed: (wiki syntax)

« Back to documentation index

QK Class Reference

QK Class Reference

QK services. More...

#include <qp.h>

Static Public Member Functions

static char_t const Q_ROM
*Q_ROM_VAR 
getVersion (void)
 get the current QK version number string
static void onIdle (void)
 QK idle callback (customized in BSPs for QK)
static QMutex mutexLock (uint8_t const prioCeiling)
 QK priority-ceiling mutex lock.
static void mutexUnlock (QMutex const mutex)
 QK priority-ceiling mutex unlock.

Detailed Description

QK services.

This class groups together QK services. It has only static members and should not be instantiated. to the QK class (as static class members). However, to avoid C++ potential name-mangling problems in assembly language, these elements are defined outside of the QK class and use the extern "C" linkage specification.

Definition at line 1266 of file qp.h.


Member Function Documentation

static char_t const Q_ROM* Q_ROM_VAR getVersion ( void   ) [static]

get the current QK version number string

Returns:
version of the QK as a constant 6-character string of the form x.y.zz, where x is a 1-digit major version number, y is a 1-digit minor version number, and zz is a 2-digit release number.
static QMutex mutexLock ( uint8_t const   prioCeiling ) [static]

QK priority-ceiling mutex lock.

Lock the QK scheduler up to the priority level prioCeiling. The code between QK::mutexLock() and QK::mutexUnlock() should be kept to the minimum.

static void mutexUnlock ( QMutex const   mutex ) [static]

QK priority-ceiling mutex unlock.

Note:
This function should be always paired with QK::mutexLock(). The code between QK::mutexLock() and QK::mutexUnlock() should be kept to the minimum.
static void onIdle ( void   ) [static]

QK idle callback (customized in BSPs for QK)

QK::onIdle() is called continously by the QK idle loop. This callback gives the application an opportunity to enter a power-saving CPU mode, or perform some other idle processing.

Note:
QK::onIdle() is invoked with interrupts unlocked and must also return with interrupts unlocked.
See also:
QF::onIdle()