Circular Buffer C implementation, must create a buffer structure instance in your main and then dinamically allocate memory for the buffer array.

Dependents:   Chat buffprob

circularBuff.h

Committer:
ivaariasga
Date:
2019-05-17
Revision:
0:f6f6750994d2

File content as of revision 0:f6f6750994d2:

#include "mbed.h"

#ifndef CIRCULARBUFF_H
#define CIRCULARBUF_H

typedef struct {
    uint8_t *buffer;
    size_t head;
    size_t tail;
    size_t size; //of the buffer
} circ_buf_t;

int circ_buf_rst(circ_buf_t * cbuf);
int circ_buf_put(circ_buf_t * cbuf, uint8_t data);
int circ_buf_get(circ_buf_t * cbuf, uint8_t * data);
bool circ_buf_empty(circ_buf_t cbuf);
bool circ_buf_full(circ_buf_t cbuf);

#endif