BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bdlcc::FixedQueue_PushProctor< VALUE > Class Template Reference

#include <bdlcc_fixedqueue.h>

Public Member Functions

 FixedQueue_PushProctor (FixedQueue< VALUE > *queue, unsigned int generation, unsigned int index)
 
 ~FixedQueue_PushProctor ()
 
void release ()
 

Detailed Description

template<class VALUE>
class bdlcc::FixedQueue_PushProctor< VALUE >

This class provides a proctor that, unless the release method has been previously invoked, will remove and destroy all the elements from a FixedQueue object supplied at construction (putting that ring-buffer into a valid empty state) upon the proctor's destruction. Note that this guard is used to provide exception safety when pushing an element into a FixedQueue.

See bdlcc_fixedqueue

Constructor & Destructor Documentation

◆ FixedQueue_PushProctor()

template<class VALUE >
bdlcc::FixedQueue_PushProctor< VALUE >::FixedQueue_PushProctor ( FixedQueue< VALUE > *  queue,
unsigned int  generation,
unsigned int  index 
)
inline

Create a proctor that manages the specified queue and, unless release is called, will remove and destroy all the elements from queue starting at the specified index in the specified generation. The behavior is undefined unless index and generation refers to a valid element in queue.

◆ ~FixedQueue_PushProctor()

template<class VALUE >
bdlcc::FixedQueue_PushProctor< VALUE >::~FixedQueue_PushProctor ( )

Destroy this proctor and, if release was not called on this object, remove and destroy all the elements from the FixedQueue object supplied at construction.

Member Function Documentation

◆ release()

template<class VALUE >
void bdlcc::FixedQueue_PushProctor< VALUE >::release ( )
inline

Release from management the FixedQueue object supplied at construction.


The documentation for this class was generated from the following file: