A C++ template class providing methods for creating and using a ring buffer (a first in, first out circular buffer) that stores pointers to objects of the template type.
More...
#include <epicsRingPointer.h>
template<class T>
class epicsRingPointer< T >
Definition at line 42 of file epicsRingPointer.h.
◆ epicsRingPointer()
- Parameters
-
| size | Maximum number of elements (pointers) that can be stored |
| locked | If true, the spin lock secured variant is created |
Definition at line 220 of file epicsRingPointer.h.
◆ push()
◆ pop()
◆ flush()
- Note
- If this operation is performed on a ring buffer of the unsecured kind, all access to the ring should be locked.
Definition at line 272 of file epicsRingPointer.h.
◆ getFree()
- Returns
- The number of additional elements the ring could hold.
Definition at line 281 of file epicsRingPointer.h.
◆ getUsed()
◆ getSize()
◆ isEmpty()
◆ isFull()
◆ getHighWaterMark()
Returns the maximum number of elements the ring buffer has held since the water mark was last reset. A new ring buffer starts with a water mark of 0.
- Returns
- Actual highwater mark
Definition at line 333 of file epicsRingPointer.h.
◆ resetHighWaterMark()
The documentation for this class was generated from the following file: