9#ifndef INCLUDED_BDLCC_SINGLEPRODUCERQUEUE
10#define INCLUDED_BDLCC_SINGLEPRODUCERQUEUE
218#include <bdlscm_version.h>
419: d_impl(basicAllocator)
425 bsl::size_t capacity,
427: d_impl(capacity, basicAllocator)
435 return d_impl.popFront(value);
441 return d_impl.pushBack(value);
459 return d_impl.tryPopFront(value);
465 return d_impl.tryPushBack(value);
479 d_impl.disablePopFront();
485 d_impl.disablePushBack();
491 d_impl.enablePopFront();
497 d_impl.enablePushBack();
504 return d_impl.isEmpty();
510 return d_impl.isFull();
516 return d_impl.isPopFrontDisabled();
522 return d_impl.isPushBackDisabled();
528 return d_impl.numElements();
534 return d_impl.waitUntilEmpty();
542 return d_impl.allocator();
Definition bdlcc_singleproducerqueueimpl.h:230
@ e_EMPTY
Definition bdlcc_singleproducerqueueimpl.h:392
@ e_DISABLED
Definition bdlcc_singleproducerqueueimpl.h:393
@ e_SUCCESS
Definition bdlcc_singleproducerqueueimpl.h:391
Definition bdlcc_singleproducerqueue.h:246
int tryPopFront(TYPE *value)
Definition bdlcc_singleproducerqueue.h:457
bool isEmpty() const
Definition bdlcc_singleproducerqueue.h:502
int tryPushBack(const TYPE &value)
Definition bdlcc_singleproducerqueue.h:463
void disablePushBack()
Definition bdlcc_singleproducerqueue.h:483
BSLMF_NESTED_TRAIT_DECLARATION(SingleProducerQueue, bslma::UsesBslmaAllocator)
bool isFull() const
Definition bdlcc_singleproducerqueue.h:508
bslma::Allocator * allocator() const
Return the allocator used by this object to supply memory.
Definition bdlcc_singleproducerqueue.h:540
void enablePopFront()
Definition bdlcc_singleproducerqueue.h:489
int pushBack(const TYPE &value)
Definition bdlcc_singleproducerqueue.h:439
bool isPopFrontDisabled() const
Definition bdlcc_singleproducerqueue.h:514
void removeAll()
Definition bdlcc_singleproducerqueue.h:451
bool isPushBackDisabled() const
Definition bdlcc_singleproducerqueue.h:520
void disablePopFront()
Definition bdlcc_singleproducerqueue.h:477
int waitUntilEmpty() const
Definition bdlcc_singleproducerqueue.h:532
bsl::size_t numElements() const
Returns the number of elements currently in this queue.
Definition bdlcc_singleproducerqueue.h:526
void enablePushBack()
Definition bdlcc_singleproducerqueue.h:495
TYPE value_type
Definition bdlcc_singleproducerqueue.h:267
int popFront(TYPE *value)
Definition bdlcc_singleproducerqueue.h:433
@ e_SUCCESS
Definition bdlcc_singleproducerqueue.h:271
@ e_DISABLED
Definition bdlcc_singleproducerqueue.h:273
@ e_EMPTY
Definition bdlcc_singleproducerqueue.h:272
~SingleProducerQueue()=default
Destroy this object.
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