QP/C++ 6.9.3
QPSet Struct Reference

Priority Set of up to 32 elements *‍/. More...

#include <qpset.hpp>

Collaboration diagram for QPSet:
Collaboration graph

Public Member Functions

void setEmpty (void) noexcept
 Makes the priority set me_ empty. More...
 
bool isEmpty (void) const noexcept
 Evaluates to true if the priority set is empty. More...
 
bool notEmpty (void) const noexcept
 Evaluates to true if the priority set is not empty. More...
 
bool hasElement (std::uint_fast8_t const n) const noexcept
 the function evaluates to TRUE if the priority set has the element n. More...
 
void insert (std::uint_fast8_t const n) noexcept
 insert element n into the set, n = 1..QF_MAX_ACTIVE More...
 
void rmove (std::uint_fast8_t const n) noexcept
 remove element n from the set, n = 1..QF_MAX_ACTIVE More...
 
std::uint_fast8_t findMax (void) const noexcept
 

Data Fields

QPSetBits volatile m_bits
 bitmask with a bit for each element More...
 

Detailed Description

Priority Set of up to 32 elements *‍/.

The priority set represents the set of active objects that are ready to run and need to be considered by the scheduling algorithm. The set is capable of storing up to 32 priority levels. QP::QPSet is specifically declared as a POD (Plain Old Data) for ease of initialization and interfacing with plain "C" code.

Definition at line 76 of file qpset.hpp.

Member Function Documentation

◆ setEmpty()

void setEmpty ( void  )
inlinenoexcept

Makes the priority set me_ empty.

Definition at line 81 of file qpset.hpp.

◆ isEmpty()

bool isEmpty ( void  ) const
inlinenoexcept

Evaluates to true if the priority set is empty.

Definition at line 86 of file qpset.hpp.

◆ notEmpty()

bool notEmpty ( void  ) const
inlinenoexcept

Evaluates to true if the priority set is not empty.

Definition at line 91 of file qpset.hpp.

◆ hasElement()

bool hasElement ( std::uint_fast8_t const  n) const
inlinenoexcept

the function evaluates to TRUE if the priority set has the element n.

Definition at line 96 of file qpset.hpp.

◆ insert()

void insert ( std::uint_fast8_t const  n)
inlinenoexcept

insert element n into the set, n = 1..QF_MAX_ACTIVE

Definition at line 101 of file qpset.hpp.

◆ rmove()

void rmove ( std::uint_fast8_t const  n)
inlinenoexcept

remove element n from the set, n = 1..QF_MAX_ACTIVE

Note
intentionally misspelled ("rmove") to avoid collision with the C++ standard library facility "remove"

Definition at line 109 of file qpset.hpp.

◆ findMax()

std::uint_fast8_t findMax ( void  ) const
inlinenoexcept

Definition at line 114 of file qpset.hpp.

Field Documentation

◆ m_bits

QPSetBits volatile m_bits

bitmask with a bit for each element

Definition at line 78 of file qpset.hpp.


The documentation for this struct was generated from the following file: