ret_code_t nrf_atfifo_get_free(nrf_atfifo_t * const p_fifo, void * const p_var, size_t size, bool * p_released) { nrf_atfifo_item_get_t context; bool released; void const * p_s = nrf_atfifo_item_get(p_fifo, &context); if (NULL == p_s) { return NRF_ERROR_NOT_FOUND; } memcpy(p_var, p_s, size); released = nrf_atfifo_item_free(p_fifo, &context); if (NULL != p_released) { *p_released = released; } return NRF_SUCCESS; }
ret_code_t nrf_atfifo_get_free(nrf_atfifo_t * const p_fifo, void * const p_var, size_t size, bool * p_released) { nrf_atfifo_item_get_t context; bool released; void const * p_s = nrf_atfifo_item_get(p_fifo, &context); if (NULL == p_s) { NRF_LOG_INST_WARNING(p_fifo->p_log, "Copying out failed - no item in the FIFO."); return NRF_ERROR_NOT_FOUND; } memcpy(p_var, p_s, size); released = nrf_atfifo_item_free(p_fifo, &context); if (NULL != p_released) { *p_released = released; } NRF_LOG_INST_DEBUG(p_fifo->p_log, "Element (0x%08X) copied out.", p_var); return NRF_SUCCESS; }