#include <AtomicQueue.hpp>
Public Types | |
typedef unsigned int | size_type |
Public Member Functions | |
virtual size_type | capacity () const =0 |
virtual void | clear ()=0 |
virtual bool | dequeue (T &result)=0 |
virtual bool | enqueue (const T &value)=0 |
virtual const T | front () const =0 |
virtual bool | isEmpty () const =0 |
virtual bool | isFull () const =0 |
virtual size_type | size () const =0 |
virtual | ~AtomicQueue () |
An atomic, non-blocking single ended queue (FIFO) for storing a pointer to T.
T | The pointer type to be stored in the Queue. Example : AtomicQueue< A* > is a queue of pointers to A. |
Definition at line 57 of file AtomicQueue.hpp.
typedef unsigned int RTT::internal::AtomicQueue< T >::size_type |
Definition at line 60 of file AtomicQueue.hpp.
|
inlinevirtual |
Definition at line 62 of file AtomicQueue.hpp.
|
pure virtual |
Return the maximum number of items this queue can contain.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Clear all contents of the Queue and thus make it empty.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Dequeue an item.
value | The value dequeued. |
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Enqueue an item.
value | The value to enqueue, not zero. |
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Return the next to be read value.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Inspect if the Queue is empty.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Inspect if the Queue is full.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.
|
pure virtual |
Return the exact number of elements in the queue. This is slow because it scans the whole queue.
Implemented in RTT::internal::AtomicMWMRQueue< T >, and RTT::internal::AtomicMWSRQueue< T >.