27 #ifndef INCepicsRingBytesh 28 #define INCepicsRingBytesh 34 #include "libComAPI.h" 65 epicsRingBytesId
id,
char *
value,
int nbytes);
74 epicsRingBytesId
id,
char *
value,
int nbytes);
LIBCOM_API int epicsStdCall epicsRingBytesHighWaterMark(epicsRingBytesIdConst id)
See how full a ring buffer has been since it was last checked.
LIBCOM_API epicsRingBytesId epicsStdCall epicsRingBytesLockedCreate(int nbytes)
Create a new ring buffer, secured by a spinlock.
LIBCOM_API int epicsStdCall epicsRingBytesUsedBytes(epicsRingBytesId id)
Return the number of bytes currently stored in the ring buffer.
LIBCOM_API int epicsStdCall epicsRingBytesSize(epicsRingBytesId id)
Return the size of the ring buffer.
void const * epicsRingBytesIdConst
LIBCOM_API void epicsStdCall epicsRingBytesFlush(epicsRingBytesId id)
Make the ring buffer empty.
LIBCOM_API void epicsStdCall epicsRingBytesResetHighWaterMark(epicsRingBytesId id)
Reset the Highwater mark of the ring buffer.
LIBCOM_API epicsRingBytesId epicsStdCall epicsRingBytesCreate(int nbytes)
Create a new ring buffer.
LIBCOM_API int epicsStdCall epicsRingBytesIsEmpty(epicsRingBytesId id)
Test if the ring buffer is currently empty.
LIBCOM_API void epicsStdCall epicsRingBytesDelete(epicsRingBytesId id)
Delete the ring buffer and free any associated memory.
LIBCOM_API int epicsStdCall epicsRingBytesPut(epicsRingBytesId id, char *value, int nbytes)
Write data into the ring buffer.
LIBCOM_API int epicsStdCall epicsRingBytesIsFull(epicsRingBytesId id)
Test if the ring buffer is currently full.
LIBCOM_API int epicsStdCall epicsRingBytesFreeBytes(epicsRingBytesId id)
Return the number of free bytes in the ring buffer.
LIBCOM_API int epicsStdCall epicsRingBytesGet(epicsRingBytesId id, char *value, int nbytes)
Read data out of the ring buffer.
void * epicsRingBytesId
An identifier for a ring buffer.