From ed07df16da675c4c123e02a996822daf13d69c63 Mon Sep 17 00:00:00 2001 From: lhoerl <coder@lolux.de> Date: 周一, 03 8月 2015 22:42:07 +0800 Subject: [PATCH] added full SCPI error messages added list for device dependent error messages some minor changes to get rid of compiler warnings added support for Keil ARM compiler added support for National Instruments CVI compiler removed bug if(c = '\0')... --- libscpi/src/fifo.c | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/libscpi/src/fifo.c b/libscpi/src/fifo.c index 7011030..341bc8e 100644 --- a/libscpi/src/fifo.c +++ b/libscpi/src/fifo.c @@ -1,17 +1,31 @@ #include "fifo_private.h" +/** + * Initialize fifo + * @param fifo + */ void fifo_init(scpi_fifo_t * fifo) { fifo->wr = 0; fifo->rd = 0; fifo->size = FIFO_SIZE; } +/** + * Empty fifo + * @param fifo + */ void fifo_clear(scpi_fifo_t * fifo) { fifo->wr = 0; fifo->rd = 0; } +/** + * Add element to fifo. If fifo is full, remove last element. + * @param fifo + * @param value + * @return + */ scpi_bool_t fifo_add(scpi_fifo_t * fifo, int16_t value) { /* FIFO full? */ if (fifo->wr == ((fifo->rd + fifo->size) % (fifo->size + 1))) { @@ -24,6 +38,12 @@ return TRUE; } +/** + * Remove element form fifo + * @param fifo + * @param value + * @return FALSE - fifo is empty + */ scpi_bool_t fifo_remove(scpi_fifo_t * fifo, int16_t * value) { /* FIFO empty? */ if (fifo->wr == fifo->rd) { @@ -39,6 +59,12 @@ return TRUE; } +/** + * Retrive number of elements in fifo + * @param fifo + * @param value + * @return + */ scpi_bool_t fifo_count(scpi_fifo_t * fifo, int16_t * value) { *value = fifo->wr - fifo->rd; if (*value < 0) { -- Gitblit v1.9.1