Argon RTOS  1.3.0
Tiny embedded real-time kernel
ar_queue_t Struct Reference

#include <ar_kernel.h>

+ Inheritance diagram for ar_queue_t:

Description

Queue.

+ Collaboration diagram for ar_queue_t:

Public Attributes

unsigned m_capacity
 Maximum number of elements the queue can hold.
 
unsigned m_count
 Current number of elements in the queue.
 
uint8_t * m_elements
 Pointer to element storage.
 
unsigned m_elementSize
 Number of bytes occupied by each element.
 
unsigned m_head
 Index of queue head.
 
const char * m_name
 Name of the queue.
 
ar_list_t m_receiveBlockedList
 List of threads blocked waiting to receive data.
 
ar_runloop_t * m_runLoop
 Runloop the queue is bound to.
 
ar_runloop_queue_handler_t m_runLoopHandler
 Handler function.
 
void * m_runLoopHandlerParam
 User parameter for handler function.
 
ar_list_node_t m_runLoopNode
 List node for the runloop's queue list.
 
ar_list_t m_sendBlockedList
 List of threads blocked waiting to send.
 
unsigned m_tail
 Index of queue tail.