nRF Connect SDK API 0.1.0
Loading...
Searching...
No Matches
Data first-in first-out library

Used to allocate a memory slab, use it, and signal to a receiver when the write operation has completed. The reader can then read and free the memory slab when done. More...

Data Structures

struct  data_fifo_msgq
 
struct  data_fifo
 

Macros

#define DATA_FIFO_DEFINE(name, elements_max_in, block_size_max_in)
 

Functions

int data_fifo_pointer_first_vacant_get (struct data_fifo *data_fifo, void **data, k_timeout_t timeout)
 Get pointer to the first vacant block in slab.
 
int data_fifo_block_lock (struct data_fifo *data_fifo, void **data, size_t size)
 Confirm that the memory block use has finished and the block is put into the message queue.
 
int data_fifo_pointer_last_filled_get (struct data_fifo *data_fifo, void **data, size_t *size, k_timeout_t timeout)
 Get pointer to first (oldest) filled block in slab.
 
void data_fifo_block_free (struct data_fifo *data_fifo, void *data)
 Free the data block after reading.
 
int data_fifo_num_used_get (struct data_fifo *data_fifo, uint32_t *alloced_num, uint32_t *locked_num)
 See how many alloced and locked blocks are in the system.
 
int data_fifo_empty (struct data_fifo *data_fifo)
 Empty all items from data_fifo.
 
int data_fifo_uninit (struct data_fifo *data_fifo)
 Deinitialize data_fifo.
 
int data_fifo_init (struct data_fifo *data_fifo)
 Initialize the data_fifo.
 
bool data_fifo_state (struct data_fifo *data_fifo)
 Test if the data_fifo state.
 

Detailed Description

Used to allocate a memory slab, use it, and signal to a receiver when the write operation has completed. The reader can then read and free the memory slab when done.