52 volatile uint8_t * buffer,
53 uint16_t
const buffer_size_in_bytes
101 if (pq->
length == 0)
return true;
uint8_t QueuePop(volatile Queue_s *SpiFifo)
uint16_t QueueLength(volatile Queue_s *pq)
bool QueueIsFull(volatile Queue_s *SpiFifo)
void QueuePush(volatile Queue_s *SpiFifo, uint8_t data_to_push)
volatile Queue_s * QueueInit(volatile uint8_t *buffer, uint16_t const buffer_size_in_bytes)
bool QueueIsEmpty(volatile Queue_s *SpiFifo)
Queue uses a byte array as a circular buffer.
volatile uint8_t max_length
max_length is the maximum number of bytes the queue can hold
volatile uint8_t tail
tail advances after a byte is popped from the queue
volatile uint8_t length
length is the number of unread bytes in the queue
volatile uint8_t * buffer
buffer is the address of the queue's FIFO buffer
volatile uint8_t head
head advances after a byte is pushed onto the queue