QP/C++ 6.9.3
qf_act.cpp File Reference

QP::QActive services and QF support code. More...

#include "qf_port.hpp"
#include "qf_pkg.hpp"
#include "qassert.h"
#include "qs_port.hpp"
#include "qs_pkg.hpp"
Include dependency graph for qf_act.cpp:

Go to the source code of this file.

Namespaces

 QP
 namespace associated with the QP/C++ framework
 

Macros

#define QF_PTR_INC_(p_)   (++(p_))
 

Functions

std::uint_fast8_t QF_LOG2 (QP::QPSetBits x) noexcept
 function that returns (log2(x) + 1), where x is a 32-bit bitmask More...
 

Detailed Description

QP::QActive services and QF support code.

Definition in file qf_act.cpp.

Macro Definition Documentation

◆ QF_PTR_INC_

#define QF_PTR_INC_ (   p_)    (++(p_))
Description
macro to encapsulate pointer increment, which violates MISRA-C:2004 required rule 17.4 (pointer arithmetic used).
Parameters
[in]p_pointer to be incremented.

Definition at line 57 of file qf_act.cpp.

Function Documentation

◆ QF_LOG2()

std::uint_fast8_t QF_LOG2 ( QP::QPSetBits  x)
noexcept

function that returns (log2(x) + 1), where x is a 32-bit bitmask

Description
This function returns the 1-based number of the most significant 1-bit of a 32-bit bitmask. This function can be replaced in the QP ports, if the CPU has special instructions, such as CLZ (count leading zeros).

Definition at line 151 of file qf_act.cpp.