Attention
This functionality is only available in the C++ toolkits. For other languages, we recommend using language-specific functionality instead.
OEBoundedBuffer
template<class T>
class OEBoundedBuffer
First-in-first-out (FIFO) queue that only allows for maxsize
items to be stored in the buffer, hence, “bounded”. It is not
inherently thread safe by itself. Use this in conjunction with a
OEProtectedBuffer to make a thread-safe queue.
Constructors
OEBoundedBuffer(oesize_t maxsize)
Determines the maximum number of elements this queue can
hold. The maxsize parameter should be a power-of-2 to allow
for a more efficient implementation.
Empty
bool Empty() const
Returns whether the queue contains any items.
Full
bool Full() const
Returns true if the queue contains maxsize items.
Get
T Get()
Pops the next item off of the queue.
Peek
T Peek()
Returns the item that will be returned by the next call to
OEBoundedBuffer::Get, but does not remove
it from the queue.
Put
void Put(T obj)
Pushes an item into the queue.
Size
oesize_t Size() const
Returns the current number of items in the queue.