9#ifndef INCLUDED_BDLCC_SINGLEPRODUCERQUEUE
10#define INCLUDED_BDLCC_SINGLEPRODUCERQUEUE
218#include <bdlscm_version.h>
429: d_impl(basicAllocator)
435 bsl::size_t capacity,
437: d_impl(capacity, basicAllocator)
445 return d_impl.popFront(value);
451 return d_impl.pushBack(value);
469 return d_impl.tryPopFront(value);
475 return d_impl.tryPushBack(value);
489 d_impl.disablePopFront();
495 d_impl.disablePushBack();
501 d_impl.enablePopFront();
507 d_impl.enablePushBack();
514 return d_impl.isEmpty();
520 return d_impl.isFull();
526 return d_impl.isPopFrontDisabled();
532 return d_impl.isPushBackDisabled();
538 return d_impl.numElements();
544 return d_impl.waitUntilEmpty();
552 return d_impl.allocator();
Definition bdlcc_singleproducerqueueimpl.h:232
@ e_EMPTY
Definition bdlcc_singleproducerqueueimpl.h:396
@ e_DISABLED
Definition bdlcc_singleproducerqueueimpl.h:397
@ e_SUCCESS
Definition bdlcc_singleproducerqueueimpl.h:395
Definition bdlcc_singleproducerqueue.h:246
int tryPopFront(TYPE *value)
Definition bdlcc_singleproducerqueue.h:467
bool isEmpty() const
Definition bdlcc_singleproducerqueue.h:512
int tryPushBack(const TYPE &value)
Definition bdlcc_singleproducerqueue.h:473
void disablePushBack()
Definition bdlcc_singleproducerqueue.h:493
BSLMF_NESTED_TRAIT_DECLARATION(SingleProducerQueue, bslma::UsesBslmaAllocator)
bool isFull() const
Definition bdlcc_singleproducerqueue.h:518
bslma::Allocator * allocator() const
Return the allocator used by this object to supply memory.
Definition bdlcc_singleproducerqueue.h:550
void enablePopFront()
Definition bdlcc_singleproducerqueue.h:499
int pushBack(const TYPE &value)
Definition bdlcc_singleproducerqueue.h:449
bool isPopFrontDisabled() const
Definition bdlcc_singleproducerqueue.h:524
void removeAll()
Definition bdlcc_singleproducerqueue.h:461
bool isPushBackDisabled() const
Definition bdlcc_singleproducerqueue.h:530
void disablePopFront()
Definition bdlcc_singleproducerqueue.h:487
int waitUntilEmpty() const
Definition bdlcc_singleproducerqueue.h:542
bsl::size_t numElements() const
Returns the number of elements currently in this queue.
Definition bdlcc_singleproducerqueue.h:536
void enablePushBack()
Definition bdlcc_singleproducerqueue.h:505
TYPE value_type
Definition bdlcc_singleproducerqueue.h:268
int popFront(TYPE *value)
Definition bdlcc_singleproducerqueue.h:443
@ e_SUCCESS
Definition bdlcc_singleproducerqueue.h:272
@ e_DISABLED
Definition bdlcc_singleproducerqueue.h:274
@ e_EMPTY
Definition bdlcc_singleproducerqueue.h:273
~SingleProducerQueue()=default
Destroy this object.
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