QO100Tx_Rx/kmlib/kmfifo.h

22 lines
561 B
C
Raw Permalink Normal View History

2025-10-20 20:11:21 +02:00
// max number of fifo, just a high number, never really used
#define MAXFIFOS 200
typedef struct _FIFOOBJ_ {
int maxelem;
int maxelemlen;
int rdidx;
int wridx;
void *fifomem;
int *plen; // real length of an element
pthread_mutex_t crit_sec;
} FIFOOBJ;
int create_fifo(int elem_num, int elem_len);
void destroy_fifos();
void write_fifo(int id, uint8_t *pdata, int len);
int read_fifo(int id, uint8_t* pdata, int maxlen);
void fifo_clear(int id);
int fifo_freespace(int id);
int fifo_dataavail(int id);
int fifo_usedspace(int id);