F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
PriorityMemQueue.cpp File Reference
#include "PriorityMemQueue.hpp"
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <limits>
#include "Fw/LanguageHelpers.hpp"
#include "Fw/Types/Assert.hpp"
#include "Fw/Types/MemAllocator.hpp"
#include "config/MemoryAllocatorTypeEnumAc.hpp"

Go to the source code of this file.

Namespaces

 Os
 
 Os::Generic
 

Functions

static constexpr U32 Os::Generic::priorityBitMask (FwQueuePriorityType priority)
 Get the bit mask for a priority. More...
 
static I32 Os::Generic::findMSB (U32 value)
 Find most significant bit set (IPC-style priority finding) More...
 
static void Os::Generic::validateQueueConfigs (PriorityMemQueue::QueueConfig *queueConfigs, FwSizeType numQueueConfigs)
 Validate queue configuration structures. More...
 
static Types::AtomicQueueOs::Generic::resolvePriorityQueue (PriorityMemQueueHandle &handle, FwQueuePriorityType &priority, FwEnumStoreType queueId, bool requirePrioritySizing)
 Resolve priority to a valid AtomicQueue, fallback to DEFAULT if needed. More...
 
static void Os::Generic::updateHighWaterMark (std::atomic< U32 > *highWaterMarks, FwSizeType index, U32 currentDepth, FwEnumStoreType queueId)
 Update per-priority high water mark atomically. More...
 

Variables

constexpr U32 Os::Generic::LOOP_GUARD_LIMIT = 2000