A lock-based queue implementation to enqueue or dequeue a pointer of type T. More...
#include <rtt/LockedQueue.hpp>
Public Types | |
| typedef T | value_t |
| typedef unsigned int | size_type |
Public Member Functions | |
| LockedQueue (unsigned int lsize, unsigned int unused=0) | |
| Create a lock-based queue wich can store lsize elements. | |
| size_type | capacity () const |
| size_type | size () const |
| bool | isEmpty () const |
| Inspect if the Queue is empty. | |
| bool | isFull () const |
| Inspect if the Queue is full. | |
| void | clear () |
| bool | enqueue (const T &value) |
| Enqueue an item. | |
| int | enqueueCounted (const T &value) |
| Enqueue an item and return its 'ticket' number. | |
| bool | dequeue (T &result) |
| Dequeue an item. | |
| int | dequeueCounted (T &result) |
| Dequeue an item and return the same 'ticket' number when it was queued. | |
| value_t | front () const |
| Returns the first element of the queue. | |
| value_t | back () const |
| Returns the last element of the queue. | |
A lock-based queue implementation to enqueue or dequeue a pointer of type T.
No memory allocation is done during read or write.
| T | The pointer type to be stored in the queue. Example : LockedQueue<A*> is a queue which holds values of type A. | |
| ReadPolicy | The Policy to block (wait) on empty (during dequeue) using BlockingPolicy, or to return false, using NonBlockingPolicy (Default). This does not influence partial filled queue behaviour. | |
| WritePolicy | The Policy to block (wait) on full (during enqueue), using BlockingPolicy, or to return false, using NonBlockingPolicy (Default). This does not influence partial filled buffer behaviour. |
Definition at line 26 of file LockedQueue.hpp.
| RTT::LockedQueue< T, ReadPolicy, WritePolicy >::LockedQueue | ( | unsigned int | lsize, | |
| unsigned int | unused = 0 | |||
| ) | [inline] |
Create a lock-based queue wich can store lsize elements.
| lsize | the capacity of the queue. ' |
Definition at line 50 of file LockedQueue.hpp.
| bool RTT::LockedQueue< T, ReadPolicy, WritePolicy >::dequeue | ( | T & | result | ) | [inline] |
Dequeue an item.
| result | The value dequeued. |
Definition at line 143 of file LockedQueue.hpp.
| int RTT::LockedQueue< T, ReadPolicy, WritePolicy >::dequeueCounted | ( | T & | result | ) | [inline] |
Dequeue an item and return the same 'ticket' number when it was queued.
| value | The value dequeued. |
Definition at line 163 of file LockedQueue.hpp.
| bool RTT::LockedQueue< T, ReadPolicy, WritePolicy >::enqueue | ( | const T & | value | ) | [inline] |
Enqueue an item.
| value | The value to enqueue. |
Definition at line 104 of file LockedQueue.hpp.
| int RTT::LockedQueue< T, ReadPolicy, WritePolicy >::enqueueCounted | ( | const T & | value | ) | [inline] |
Enqueue an item and return its 'ticket' number.
| value | The value to enqueue. |
Definition at line 123 of file LockedQueue.hpp.
| bool RTT::LockedQueue< T, ReadPolicy, WritePolicy >::isEmpty | ( | ) | const [inline] |
Inspect if the Queue is empty.
Definition at line 77 of file LockedQueue.hpp.
| bool RTT::LockedQueue< T, ReadPolicy, WritePolicy >::isFull | ( | ) | const [inline] |
Inspect if the Queue is full.
Definition at line 87 of file LockedQueue.hpp.
1.6.3