From 02c004a7747e7f7f4c135c370dd82bf383750450 Mon Sep 17 00:00:00 2001 From: Jan Breuer <jan.breuer@jaybee.cz> Date: 周一, 07 8月 2017 03:01:58 +0800 Subject: [PATCH] Merge pull request #89 from j123b567/feature/expose-on-off --- libscpi/src/parser.c | 17 ++++++++++------- libscpi/inc/scpi/parser.h | 1 + 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/libscpi/inc/scpi/parser.h b/libscpi/inc/scpi/parser.h index f1d9e2a..fc75a4c 100644 --- a/libscpi/inc/scpi/parser.h +++ b/libscpi/inc/scpi/parser.h @@ -114,6 +114,7 @@ scpi_bool_t SCPI_ParamArbitraryBlock(scpi_t * context, const char ** value, size_t * len, scpi_bool_t mandatory); scpi_bool_t SCPI_ParamCopyText(scpi_t * context, char * buffer, size_t buffer_len, size_t * copy_len, scpi_bool_t mandatory); + extern const scpi_choice_def_t scpi_bool_def[]; scpi_bool_t SCPI_ParamBool(scpi_t * context, scpi_bool_t * value, scpi_bool_t mandatory); scpi_bool_t SCPI_ParamChoice(scpi_t * context, const scpi_choice_def_t * options, int32_t * value, scpi_bool_t mandatory); diff --git a/libscpi/src/parser.c b/libscpi/src/parser.c index 1f16ecf..e2f0c2f 100644 --- a/libscpi/src/parser.c +++ b/libscpi/src/parser.c @@ -1270,6 +1270,15 @@ return FALSE; } +/* + * Definition of BOOL choice list + */ +const scpi_choice_def_t scpi_bool_def[] = { + {"OFF", 0}, + {"ON", 1}, + SCPI_CHOICE_LIST_END /* termination of option list */ +}; + /** * Read BOOL parameter (0,1,ON,OFF) * @param context @@ -1281,12 +1290,6 @@ scpi_bool_t result; scpi_parameter_t param; int32_t intval; - - scpi_choice_def_t bool_options[] = { - {"OFF", 0}, - {"ON", 1}, - SCPI_CHOICE_LIST_END /* termination of option list */ - }; if (!value) { SCPI_ErrorPush(context, SCPI_ERROR_SYSTEM_ERROR); @@ -1300,7 +1303,7 @@ SCPI_ParamToInt32(context, ¶m, &intval); *value = intval ? TRUE : FALSE; } else { - result = SCPI_ParamToChoice(context, ¶m, bool_options, &intval); + result = SCPI_ParamToChoice(context, ¶m, scpi_bool_def, &intval); if (result) { *value = intval ? TRUE : FALSE; } -- Gitblit v1.9.1