9#ifndef INCLUDED_BDLCC_SINGLECONSUMERQUEUE
10#define INCLUDED_BDLCC_SINGLECONSUMERQUEUE
204#include <bdlscm_version.h>
414: d_impl(basicAllocator)
420 bsl::size_t capacity,
422: d_impl(capacity, basicAllocator)
430 return d_impl.popFront(value);
436 return d_impl.pushBack(value);
454 return d_impl.tryPopFront(value);
460 return d_impl.tryPushBack(value);
474 d_impl.disablePopFront();
480 d_impl.disablePushBack();
486 d_impl.enablePopFront();
492 d_impl.enablePushBack();
499 return d_impl.isEmpty();
505 return d_impl.isFull();
511 return d_impl.isPopFrontDisabled();
517 return d_impl.isPushBackDisabled();
523 return d_impl.numElements();
529 return d_impl.waitUntilEmpty();
537 return d_impl.allocator();
Definition bdlcc_singleconsumerqueueimpl.h:286
@ e_EMPTY
Definition bdlcc_singleconsumerqueueimpl.h:467
@ e_SUCCESS
Definition bdlcc_singleconsumerqueueimpl.h:466
@ e_DISABLED
Definition bdlcc_singleconsumerqueueimpl.h:468
Definition bdlcc_singleconsumerqueue.h:232
bslma::Allocator * allocator() const
Return the allocator used by this object to supply memory.
Definition bdlcc_singleconsumerqueue.h:535
void enablePopFront()
Definition bdlcc_singleconsumerqueue.h:484
void disablePushBack()
Definition bdlcc_singleconsumerqueue.h:478
bool isFull() const
Definition bdlcc_singleconsumerqueue.h:503
bsl::size_t numElements() const
Returns the number of elements currently in this queue.
Definition bdlcc_singleconsumerqueue.h:521
BSLMF_NESTED_TRAIT_DECLARATION(SingleConsumerQueue, bslma::UsesBslmaAllocator)
int pushBack(const TYPE &value)
Definition bdlcc_singleconsumerqueue.h:434
int waitUntilEmpty() const
Definition bdlcc_singleconsumerqueue.h:527
~SingleConsumerQueue()=default
Destroy this object.
bool isEmpty() const
Definition bdlcc_singleconsumerqueue.h:497
void enablePushBack()
Definition bdlcc_singleconsumerqueue.h:490
TYPE value_type
Definition bdlcc_singleconsumerqueue.h:254
bool isPopFrontDisabled() const
Definition bdlcc_singleconsumerqueue.h:509
int tryPushBack(const TYPE &value)
Definition bdlcc_singleconsumerqueue.h:458
bool isPushBackDisabled() const
Definition bdlcc_singleconsumerqueue.h:515
int popFront(TYPE *value)
Definition bdlcc_singleconsumerqueue.h:428
void disablePopFront()
Definition bdlcc_singleconsumerqueue.h:472
void removeAll()
Definition bdlcc_singleconsumerqueue.h:446
int tryPopFront(TYPE *value)
Definition bdlcc_singleconsumerqueue.h:452
@ e_EMPTY
Definition bdlcc_singleconsumerqueue.h:259
@ e_SUCCESS
Definition bdlcc_singleconsumerqueue.h:258
@ e_DISABLED
Definition bdlcc_singleconsumerqueue.h:260
Definition bslma_allocator.h:545
Definition bslmf_movableref.h:752
Definition bslmt_condition.h:220
Definition bslmt_mutex.h:317
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bdlcc_boundedqueue.h:270
Definition bslma_usesbslmaallocator.h:344
static MovableRef< t_TYPE > move(t_TYPE &reference) BSLS_KEYWORD_NOEXCEPT
Definition bslmf_movableref.h:1067
Definition bsls_atomicoperations.h:836