AMU Library 3.0
C/C++ library for communicating with AMU (Aerospace Measurement Unit) devices
Loading...
Searching...
No Matches
minimal.c
Go to the documentation of this file.
1/*-
2 * Copyright (c) 2012-2013 Jan Breuer,
3 *
4 * All Rights Reserved
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met:
9 * 1. Redistributions of source code must retain the above copyright notice,
10 * this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 *
15 * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
16 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18 * DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
22 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
25 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
36
37
38#include "parser.h"
39#include "minimal.h"
40#include "constants.h"
41#include "error.h"
42#include "ieee488.h"
43#include "utils_private.h"
44
50scpi_result_t SCPI_Stub(scpi_t * context) {
51 (void) context;
52 return SCPI_RES_OK;
53}
54
60scpi_result_t SCPI_StubQ(scpi_t * context) {
61 SCPI_ResultInt32(context, 0);
62 return SCPI_RES_OK;
63}
64
74
81 scpi_error_t error;
82 SCPI_ErrorPop(context, &error);
83 SCPI_ResultError(context, &error);
84#if USE_DEVICE_DEPENDENT_ERROR_INFORMATION
85 SCPIDEFINE_free(&context->error_info_heap, error.device_dependent_info, false);
86#endif
87 return SCPI_RES_OK;
88}
89
96 SCPI_ResultInt32(context, SCPI_ErrorCount(context));
97
98 return SCPI_RES_OK;
99}
100
107 /* return value */
108 SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_QUES));
109
110 /* clear register */
111 SCPI_RegSet(context, SCPI_REG_QUES, 0);
112
113 return SCPI_RES_OK;
114}
115
122 /* return value */
123 SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_QUESE));
124
125 return SCPI_RES_OK;
126}
127
134 int32_t new_QUESE;
135 if (SCPI_ParamInt32(context, &new_QUESE, TRUE)) {
136 SCPI_RegSet(context, SCPI_REG_QUESE, (scpi_reg_val_t) new_QUESE);
137 }
138 return SCPI_RES_OK;
139}
140
147 /* clear STATUS:... */
148 SCPI_RegSet(context, SCPI_REG_QUES, 0);
149 return SCPI_RES_OK;
150}
#define SCPIDEFINE_free(h, s, r)
Definition config.h:227
#define SCPI_STD_VERSION_REVISION
Definition constants.h:49
int32_t SCPI_ErrorCount(scpi_t *context)
Definition error.c:123
scpi_bool_t SCPI_ErrorPop(scpi_t *context, scpi_error_t *error)
Definition error.c:108
scpi_reg_val_t SCPI_RegGet(scpi_t *context, scpi_reg_name_t name)
Definition ieee488.c:73
void SCPI_RegSet(scpi_t *context, scpi_reg_name_t name, scpi_reg_val_t val)
Definition ieee488.c:100
scpi_result_t SCPI_StubQ(scpi_t *context)
Definition minimal.c:60
scpi_result_t SCPI_SystemVersionQ(scpi_t *context)
Definition minimal.c:70
scpi_result_t SCPI_Stub(scpi_t *context)
Definition minimal.c:50
scpi_result_t SCPI_StatusPreset(scpi_t *context)
Definition minimal.c:146
scpi_result_t SCPI_StatusQuestionableEventQ(scpi_t *context)
Definition minimal.c:106
scpi_result_t SCPI_SystemErrorCountQ(scpi_t *context)
Definition minimal.c:95
scpi_result_t SCPI_SystemErrorNextQ(scpi_t *context)
Definition minimal.c:80
scpi_result_t SCPI_StatusQuestionableEnable(scpi_t *context)
Definition minimal.c:133
scpi_result_t SCPI_StatusQuestionableEnableQ(scpi_t *context)
Definition minimal.c:121
scpi_bool_t SCPI_ParamInt32(scpi_t *context, int32_t *value, scpi_bool_t mandatory)
Definition parser.c:1158
size_t SCPI_ResultError(scpi_t *context, scpi_error_t *error)
Definition parser.c:629
size_t SCPI_ResultInt32(scpi_t *context, int32_t val)
Definition parser.c:527
#define SCPI_ResultMnemonic(context, data)
Definition parser.h:61
@ SCPI_RES_OK
Definition types.h:110
@ SCPI_REG_QUES
Definition types.h:78
@ SCPI_REG_QUESE
Definition types.h:79
uint16_t scpi_reg_val_t
Definition types.h:106
#define TRUE
Definition types.h:63
enum _scpi_result_t scpi_result_t
Definition types.h:113