![]() |
SatNOGS-COMMS
4.1.0
A COMMS subsystem for CubeSats
|
Message queue device abstraction. More...
#include <msgq.hpp>
Public Member Functions | |
| imsgq (size_t len) | |
| Constructs an imsgq object with a specified maximum size. | |
| imsgq (const imsgq &)=delete | |
| size_t | max_size () const |
| A method that returns the maximum size of the message queue. | |
| virtual size_t | size ()=0 |
| A virtual method that returns the current number of messages in the queue. | |
| virtual int | put (const T &msg, size_t timeout_ms)=0 |
| A virtual method that enqueues a message into the queue. | |
| virtual int | put_isr (const T &msg)=0 |
| A virtual method that enqueues a message into the queue from an interrupt context. | |
| virtual int | peek (T *msg)=0 |
| A virtual method that peeks at the next message in the queue without removing it. | |
| virtual int | get (T *msg, size_t timeout_ms)=0 |
| A virtual method that retrieves a message from the queue. | |
| virtual int | get_isr (T *msg)=0 |
| A virtual method that retrieves a message from the queue from an interrupt context. | |
Protected Attributes | |
| const size_t | m_len |
Message queue device abstraction.
This template class provides a generic message queue abstraction for messages of type T.
| T | The type of the messages stored in the queue |
|
inline |
|
delete |
|
pure virtual |
A virtual method that retrieves a message from the queue.
| msg | Pointer to store the retrieved message of type T. |
| timeout_ms | The timeout in milliseconds to wait if the queue is empty. |
Implemented in satnogs::comms::msgq< T, LEN >.
|
pure virtual |
A virtual method that retrieves a message from the queue from an interrupt context.
| msg | Pointer to store the retrieved message. |
Implemented in satnogs::comms::msgq< T, LEN >.
|
inline |
|
pure virtual |
A virtual method that peeks at the next message in the queue without removing it.
| msg | Pointer to store the peeked message of type T. |
Implemented in satnogs::comms::msgq< T, LEN >.
|
pure virtual |
A virtual method that enqueues a message into the queue.
| msg | The message of type T to enqueue. |
| timeout_ms | The timeout in milliseconds to wait if the queue is full. |
Implemented in satnogs::comms::msgq< T, LEN >.
|
pure virtual |
A virtual method that enqueues a message into the queue from an interrupt context.
| msg | The message of type T to enqueue. |
Implemented in satnogs::comms::msgq< T, LEN >.
|
pure virtual |
A virtual method that returns the current number of messages in the queue.
Implemented in satnogs::comms::msgq< T, LEN >.
|
protected |