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.