17 lines
344 B
C
17 lines
344 B
C
#pragma once
|
|
|
|
#include "arena.h"
|
|
#include "defs.h"
|
|
|
|
typedef struct RingBuffer {
|
|
u8* buf;
|
|
size item_size;
|
|
size cap;
|
|
size offset;
|
|
size len;
|
|
} RingBuffer;
|
|
|
|
RingBuffer ring_buffer_init(size item_size, size cap, Arena* a);
|
|
void ring_buffer_push(RingBuffer* self, void* item);
|
|
void* ring_buffer_get(RingBuffer* self, size index);
|