|
| Queue () |
| queue constructor More...
|
|
virtual | ~Queue () |
| default queue destructor More...
|
|
| Queue (const Queue &other)=delete |
| copy constructor is forbidden More...
|
|
| Queue (const Queue *other)=delete |
| copy constructor is forbidden More...
|
|
QueueInterface & | operator= (const QueueInterface &other) override=delete |
| assignment operator is forbidden More...
|
|
Status | create (const Fw::StringBase &name, FwSizeType depth, FwSizeType messageSize) override |
| create queue storage through delegate More...
|
|
Status | send (const U8 *buffer, FwSizeType size, FwQueuePriorityType priority, BlockingType blockType) override |
| send a message into the queue through delegate More...
|
|
Status | receive (U8 *destination, FwSizeType capacity, BlockingType blockType, FwSizeType &actualSize, FwQueuePriorityType &priority) override |
| receive a message from the queue through delegate More...
|
|
FwSizeType | getMessagesAvailable () const override |
| get number of messages available More...
|
|
FwSizeType | getMessageHighWaterMark () const override |
| get maximum messages stored at any given time through delegate More...
|
|
QueueHandle * | getHandle () override |
| return the underlying queue handle (implementation specific). Delegates to implementation. More...
|
|
Status | send (const Fw::SerializeBufferBase &message, FwQueuePriorityType priority, BlockingType blockType) |
| send a message to a queue More...
|
|
Status | receive (Fw::SerializeBufferBase &destination, BlockingType blockType, FwQueuePriorityType &priority) |
| receive a message from a queue More...
|
|
FwSizeType | getDepth () const |
| get the queue's depth in messages More...
|
|
FwSizeType | getMessageSize () const |
| get the queue's message maximum size More...
|
|
const QueueString & | getName () const |
| get the queue's name More...
|
|
| QueueInterface ()=default |
| default queue interface constructor More...
|
|
virtual | ~QueueInterface ()=default |
| default queue destructor More...
|
|
| QueueInterface (const QueueInterface &other)=delete |
| copy constructor is forbidden More...
|
|
| QueueInterface (const QueueInterface *other)=delete |
| copy constructor is forbidden More...
|
|
Definition at line 153 of file Queue.hpp.
receive a message from the queue through delegate
Receive a message from the queue, providing the message destination, capacity, priority, and blocking type. When blockType
is set to BLOCKING, this call will block on queue empty. Otherwise, this will return an error status on queue empty. Actual size received and priority of message is set on success status. This method delegates to the underlying implementation.
- Warning
- It is invalid to send a null buffer.
-
This method will block if the queue is empty and blockType is set to BLOCKING
- Parameters
-
destination | destination for message data |
capacity | maximum size of message data |
blockType | BLOCKING to wait for message or NONBLOCKING to return error when queue is empty |
actualSize | (output) actual size of message read |
priority | (output) priority of message read |
- Returns
- : status of the send
Implements Os::QueueInterface.
send a message into the queue through delegate
Send a message into the queue, providing the message data, size, priority, and blocking type. When blockType
is set to BLOCKING, this call will block on queue full. Otherwise, this will return an error status on queue full. This method delegates to the underlying implementation.
- Warning
- It is invalid to send a null buffer
-
This method will block if the queue is full and blockType is set to BLOCKING
- Parameters
-
buffer | message data |
size | size of message data |
priority | priority of the message |
blockType | BLOCKING to block for space or NONBLOCKING to return error when queue is full |
- Returns
- : status of the send
Implements Os::QueueInterface.