4#ifndef __KINESIS_VIDEO_WEBRTC_CLIENT_RTCP_ROLLING_BUFFER_H
5#define __KINESIS_VIDEO_WEBRTC_CLIENT_RTCP_ROLLING_BUFFER_H
30#define ROLLING_BUFFER_MAP_INDEX(pRollingBuffer, index) ((index) % (pRollingBuffer)->capacity)
STATUS rollingBufferIsEmpty(PRollingBuffer, PBOOL)
Definition RollingBuffer.c:178
struct RollingBuffer * PRollingBuffer
STATUS createRollingBuffer(UINT32, FreeDataFunc, PRollingBuffer *)
Definition RollingBuffer.c:5
STATUS rollingBufferInsertData(PRollingBuffer, UINT64, UINT64)
Definition RollingBuffer.c:109
STATUS rollingBufferExtractData(PRollingBuffer, UINT64, PUINT64)
Definition RollingBuffer.c:137
STATUS(* FreeDataFunc)(PUINT64)
Definition RollingBuffer.h:13
STATUS rollingBufferAppendData(PRollingBuffer, UINT64, PUINT64)
Definition RollingBuffer.c:69
STATUS freeRollingBuffer(PRollingBuffer *)
Definition RollingBuffer.c:36
STATUS rollingBufferGetSize(PRollingBuffer, PUINT32)
Definition RollingBuffer.c:164
Definition RollingBuffer.h:15
UINT32 capacity
Definition RollingBuffer.h:19
FreeDataFunc freeDataFn
Definition RollingBuffer.h:27
PUINT64 dataBuffer
Definition RollingBuffer.h:25
UINT64 headIndex
Definition RollingBuffer.h:21
MUTEX lock
Definition RollingBuffer.h:17
UINT64 tailIndex
Definition RollingBuffer.h:23