9#ifndef INCLUDED_BDLCC_SINGLECONSUMERQUEUE
10#define INCLUDED_BDLCC_SINGLECONSUMERQUEUE
204#include <bdlscm_version.h>
406: d_impl(basicAllocator)
412 bsl::size_t capacity,
414: d_impl(capacity, basicAllocator)
422 return d_impl.popFront(value);
428 return d_impl.pushBack(value);
446 return d_impl.tryPopFront(value);
452 return d_impl.tryPushBack(value);
466 d_impl.disablePopFront();
472 d_impl.disablePushBack();
478 d_impl.enablePopFront();
484 d_impl.enablePushBack();
491 return d_impl.isEmpty();
497 return d_impl.isFull();
503 return d_impl.isPopFrontDisabled();
509 return d_impl.isPushBackDisabled();
515 return d_impl.numElements();
521 return d_impl.waitUntilEmpty();
529 return d_impl.allocator();
Definition bdlcc_singleconsumerqueueimpl.h:283
@ e_EMPTY
Definition bdlcc_singleconsumerqueueimpl.h:462
@ e_SUCCESS
Definition bdlcc_singleconsumerqueueimpl.h:461
@ e_DISABLED
Definition bdlcc_singleconsumerqueueimpl.h:463
Definition bdlcc_singleconsumerqueue.h:232
bslma::Allocator * allocator() const
Return the allocator used by this object to supply memory.
Definition bdlcc_singleconsumerqueue.h:527
void enablePopFront()
Definition bdlcc_singleconsumerqueue.h:476
void disablePushBack()
Definition bdlcc_singleconsumerqueue.h:470
bool isFull() const
Definition bdlcc_singleconsumerqueue.h:495
bsl::size_t numElements() const
Returns the number of elements currently in this queue.
Definition bdlcc_singleconsumerqueue.h:513
BSLMF_NESTED_TRAIT_DECLARATION(SingleConsumerQueue, bslma::UsesBslmaAllocator)
int pushBack(const TYPE &value)
Definition bdlcc_singleconsumerqueue.h:426
int waitUntilEmpty() const
Definition bdlcc_singleconsumerqueue.h:519
~SingleConsumerQueue()=default
Destroy this object.
bool isEmpty() const
Definition bdlcc_singleconsumerqueue.h:489
void enablePushBack()
Definition bdlcc_singleconsumerqueue.h:482
TYPE value_type
Definition bdlcc_singleconsumerqueue.h:253
bool isPopFrontDisabled() const
Definition bdlcc_singleconsumerqueue.h:501
int tryPushBack(const TYPE &value)
Definition bdlcc_singleconsumerqueue.h:450
bool isPushBackDisabled() const
Definition bdlcc_singleconsumerqueue.h:507
int popFront(TYPE *value)
Definition bdlcc_singleconsumerqueue.h:420
void disablePopFront()
Definition bdlcc_singleconsumerqueue.h:464
void removeAll()
Definition bdlcc_singleconsumerqueue.h:438
int tryPopFront(TYPE *value)
Definition bdlcc_singleconsumerqueue.h:444
@ e_EMPTY
Definition bdlcc_singleconsumerqueue.h:258
@ e_SUCCESS
Definition bdlcc_singleconsumerqueue.h:257
@ e_DISABLED
Definition bdlcc_singleconsumerqueue.h:259
Definition bslma_allocator.h:457
Definition bslmf_movableref.h:751
Definition bslmt_condition.h:220
Definition bslmt_mutex.h:315
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlcc_boundedqueue.h:270
Definition bslma_usesbslmaallocator.h:343
static MovableRef< t_TYPE > move(t_TYPE &reference) BSLS_KEYWORD_NOEXCEPT
Definition bslmf_movableref.h:1060
Definition bsls_atomicoperations.h:834