From a10c464ba98e980b21185bf084789f6c8df22473 Mon Sep 17 00:00:00 2001 From: Iztok Jeras <iztok.jeras@gmail.com> Date: 周三, 19 7月 2017 21:03:37 +0800 Subject: [PATCH] moving bool choice definition (ON, OFF) to units.c, so it could be used by various applications --- libscpi/inc/scpi/types.h | 45 +++++++++++++++++++++++++++------------------ 1 files changed, 27 insertions(+), 18 deletions(-) diff --git a/libscpi/inc/scpi/types.h b/libscpi/inc/scpi/types.h index 085ca00..ac826d2 100644 --- a/libscpi/inc/scpi/types.h +++ b/libscpi/inc/scpi/types.h @@ -113,7 +113,12 @@ typedef struct _scpi_command_t scpi_command_t; -#define SCPI_CMD_LIST_END {NULL, NULL, 0} +#if USE_COMMAND_TAGS + #define SCPI_CMD_LIST_END {NULL, NULL, 0} +#else + #define SCPI_CMD_LIST_END {NULL, NULL} +#endif + /* scpi interface */ typedef struct _scpi_t scpi_t; @@ -201,21 +206,23 @@ typedef scpi_result_t(*scpi_command_callback_t)(scpi_t *); - struct _scpi_error_info_heap_t { - int16_t wr; - //int16_t rd; - int16_t count; - int16_t size; + struct _scpi_error_info_heap_t { + size_t wr; + /* size_t rd; */ + size_t count; + size_t size; char * data; - }; - typedef struct _scpi_error_info_heap_t scpi_error_info_heap_t; - - struct _scpi_error_t { - int16_t error_code; - const char * device_dependent_info; - }; - typedef struct _scpi_error_t scpi_error_t; - + }; + typedef struct _scpi_error_info_heap_t scpi_error_info_heap_t; + + struct _scpi_error_t { + int16_t error_code; +#if USE_DEVICE_DEPENDENT_ERROR_INFORMATION + char * device_dependent_info; +#endif + }; + typedef struct _scpi_error_t scpi_error_t; + struct _scpi_fifo_t { int16_t wr; int16_t rd; @@ -274,7 +281,7 @@ SCPI_UNIT_BAR, SCPI_UNIT_DECIBEL, SCPI_UNIT_UNITLESS, - SCPI_UNIT_FAGRENHEIT, + SCPI_UNIT_FAHRENHEIT, SCPI_UNIT_KELVIN, SCPI_UNIT_DAY, SCPI_UNIT_YEAR, @@ -326,7 +333,7 @@ union { double value; int32_t tag; - }; + } content; scpi_unit_t unit; int8_t base; }; @@ -365,7 +372,9 @@ int_fast16_t input_count; scpi_bool_t cmd_error; scpi_fifo_t error_queue; - scpi_error_info_heap_t error_info_heap; +#if USE_DEVICE_DEPENDENT_ERROR_INFORMATION && !USE_MEMORY_ALLOCATION_FREE + scpi_error_info_heap_t error_info_heap; +#endif scpi_reg_val_t registers[SCPI_REG_COUNT]; const scpi_unit_def_t * units; void * user_context; -- Gitblit v1.9.1