30 return(reinterpret_cast<void *>(pvoidPointer));
36 return(reinterpret_cast<void *>(pvoidPointer));
48 return pvoidPointer->pop();
54 return((pvoidPointer->push(p) ? 1 : 0));
60 pvoidPointer->flush();
66 return(pvoidPointer->getFree());
72 return(pvoidPointer->getUsed());
78 return(pvoidPointer->getSize());
84 return((pvoidPointer->isEmpty()) ? 1 : 0);
90 return((pvoidPointer->isFull()) ? 1 : 0);
96 return(pvoidPointer->getHighWaterMark());
102 pvoidPointer->resetHighWaterMark();
LIBCOM_API void epicsStdCall epicsRingPointerDelete(epicsRingPointerId id)
Delete the ring buffer and free any associated memory.
LIBCOM_API int epicsStdCall epicsRingPointerGetFree(epicsRingPointerId id)
Return the amount of empty space in the ring buffer.
LIBCOM_API int epicsStdCall epicsRingPointerPush(epicsRingPointerId id, void *p)
Push pointer into the ring buffer.
LIBCOM_API int epicsStdCall epicsRingPointerGetHighWaterMark(epicsRingPointerIdConst id)
Get the Highwater mark of the ring buffer.
epicsRingPointer< void > voidPointer
LIBCOM_API epicsRingPointerId epicsStdCall epicsRingPointerLockedCreate(int size)
Create a new ring buffer, secured by a spinlock.
void const * epicsRingPointerIdConst
LIBCOM_API void *epicsStdCall epicsRingPointerPop(epicsRingPointerId id)
Take an element off the ring.
LIBCOM_API void epicsStdCall epicsRingPointerResetHighWaterMark(epicsRingPointerId id)
Reset the Highwater mark of the ring buffer.
LIBCOM_API epicsRingPointerId epicsStdCall epicsRingPointerCreate(int size)
Create a new ring buffer.
LIBCOM_API int epicsStdCall epicsRingPointerGetSize(epicsRingPointerId id)
Return the size of the ring.
LIBCOM_API int epicsStdCall epicsRingPointerIsEmpty(epicsRingPointerId id)
Check if the ring buffer is currently empty.
LIBCOM_API int epicsStdCall epicsRingPointerGetUsed(epicsRingPointerId id)
Return the number of elements stored in the ring buffer.
void * epicsRingPointerId
An identifier for the C API to a ring buffer storing pointers.
LIBCOM_API void epicsStdCall epicsRingPointerFlush(epicsRingPointerId id)
Remove all elements from the ring.
A circular buffer to store pointers.
LIBCOM_API int epicsStdCall epicsRingPointerIsFull(epicsRingPointerId id)
Check if the ring buffer is currently full.