F´ Flight Software - C/C++ Documentation
NASA-v1.5.0
A framework for building embedded system applications to NASA flight quality standards.
|
Go to the documentation of this file.
13 #ifndef BufferManager_HPP
14 #define BufferManager_HPP
57 bool storeSizeExceeded;
75 const Status::t status
172 class AllocationQueue {
181 AllocationQueue(
const U32
size);
236 const U32 expectedId,
294 const char *
const compName,
296 const U32 maxNumBuffers
BufferManager(const char *const compName, const U32 storeSize, const U32 maxNumBuffers)
virtual Fw::Buffer bufferGetCallee_handler(NATIVE_INT_TYPE portNum, U32 size)=0
Handler for input port bufferGetCallee.
U32 allocatedSize
The total allocated size on the store.
#define PRIVATE
overridable private for unit testing
uint8_t U8
8-bit unsigned integer
Auto-generated base for BufferManager component.
void bufferSendIn_handler(const NATIVE_INT_TYPE portNum, Fw::Buffer &buffer)
U32 getAllocatedSize(void) const
U32 freeIndex
Pointer to the first free byte of store memory.
State state
The warning state.
void init(void)
Object initializer.
Free::Status free(const U32 expectedId, U32 &sawId, U32 &size)
Warnings(BufferManager &bufferManager)
Construct a Warnings object.
void update(const Status::t status)
Update the warning state.
Allocate::Status allocate(const U32 size, U32 &id)
U32 getNextIndex(const U32 index)
AllocationQueue allocationQueue
The allocation queue.
Status allocate(const U32 n, U8 *&result)
U32 padSize
The amount of padding at the end of the store, added to allocations that otherwise would wrap around.
PRIVATE NATIVE_INT_TYPE portNum
U32 getAllocationSize(void) const
void free(const U32 size, U8 *const address)
int NATIVE_INT_TYPE
native integer type declaration