| 1234567891011121314151617181920212223242526272829 | #ifndef RING_BUF_H#define RING_BUF_H#include <stdbool.h>#include <stdint.h>typedef struct {	uint32_t *buf_ptr;	uint32_t size;	uint32_t read_index;	uint32_t write_index;} rbuf_t;void rbuf32_init(rbuf_t *rbuf32, uint32_t *buffer, uint32_t size);void rbuf64_init(rbuf_t *rbuf64, uint64_t *buffer, uint32_t size);bool rbuf_isempty(rbuf_t *rbuf);int32_t rbuf_free_space(rbuf_t *rbuf);int32_t rbuf_full_space(rbuf_t *rbuf);bool rbuf_isfull(rbuf_t *rbuf);bool rbuf32_get(rbuf_t *rbuf32, uint32_t *data);bool rbuf64_get(rbuf_t *rbuf64, uint64_t *data);bool rbuf32_put(rbuf_t *rbuf32, uint32_t data);bool rbuf64_put(rbuf_t *rbuf64, uint64_t data);bool buf_test(void);#endif
 |