BrlAPI  0.8
brlapi_param.h
Go to the documentation of this file.
1 /*
2  * libbrlapi - A library providing access to braille terminals for applications.
3  *
4  * Copyright (C) 2002-2023 by
5  * Samuel Thibault <Samuel.Thibault@ens-lyon.org>
6  * Sébastien Hinderer <Sebastien.Hinderer@ens-lyon.org>
7  *
8  * libbrlapi comes with ABSOLUTELY NO WARRANTY.
9  *
10  * This is free software, placed under the terms of the
11  * GNU Lesser General Public License, as published by the Free Software
12  * Foundation; either version 2.1 of the License, or (at your option) any
13  * later version. Please see the file LICENSE-LGPL for details.
14  *
15  * Web Page: http://brltty.app/
16  *
17  * This software is maintained by Dave Mielke <dave@mielke.cc>.
18  */
19 
23 #ifndef BRLAPI_INCLUDED_PARAM
24 #define BRLAPI_INCLUDED_PARAM
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif /* __cplusplus */
29 
30 #include "brlapi_keycodes.h"
31 
36 typedef enum {
37 //Connection Parameters
41 //Device Parameters
51 /* TODO: status area */
52 
53 //Input Parameters
56 //Braille Rendering Parameters
64 //Navigation Parameters
68 //Clipboard Parameters
71 //TTY Mode Parameters
89 //Braille Translation Parameters
99 /* TODO: dot-to-unicode as well */
100 
101  /* TODO: help strings */
102 
103  BRLAPI_PARAM_COUNT = 32
105 
106 /* brlapi_param_subparam_t */
108 typedef uint64_t brlapi_param_subparam_t;
109 
110 /* brlapi_param_bool_t */
112 typedef uint8_t brlapi_param_bool_t;
113 
114 /* brlapi_param_serverVersion_t */
117 
118 /* brlapi_param_clientPriority_t */
121 
122 /* BRLAPI_PARAM_CLIENT_PRIORITY_DEFAULT */
124 #define BRLAPI_PARAM_CLIENT_PRIORITY_DEFAULT 50
125 
126 /* BRLAPI_PARAM_CLIENT_PRIORITY_DISABLE */
129 #define BRLAPI_PARAM_CLIENT_PRIORITY_DISABLE 0
130 
131 /* brlapi_param_driverName_t */
134 
135 /* brlapi_param_driverCode_t */
138 
139 /* brlapi_param_driverVersion_t */
142 
143 /* brlapi_param_deviceModel_t */
146 
147 /* brlapi_param_deviceCellSize_t */
150 
151 /* brlapi_param_displaySize_t */
153 typedef struct {
154  uint32_t columns;
155  uint32_t rows;
157 
158 /* brlapi_param_deviceIdentifier_t */
161 
162 /* brlapi_param_deviceSpeed_t */
164 typedef uint32_t brlapi_param_deviceSpeed_t;
165 
166 /* brlapi_param_deviceOnline_t */
169 
170 /* brlapi_param_retainDots_t */
173 
174 /* brlapi_param_computerBrailleCellSize_t */
177 
178 /* brlapi_param_literaryBraille_t */
181 
182 /* brlapi_param_cursorDots_t */
185 
186 /* brlapi_param_cursorBlinkPeriod_t */
189 
190 /* brlapi_param_cursorBlinkPercentage_t */
193 
194 /* brlapi_param_renderedCells_t */
197 
198 /* brlapi_param_skipIdenticalLines_t */
201 
202 /* brlapi_param_audibleAlerts_t */
205 
206 /* brlapi_param_clipboardContent_t */
209 
210 /* brlapi_param_commandKeycode_t */
213 
214 /* brlapi_param_commandKeycodeName_t */
217 
218 /* brlapi_param_commandKeycodeSummary_t */
221 
222 /* brlapi_param_driverKeycode_t */
225 
226 /* brlapi_param_driverKeycodeName_t */
229 
230 /* brlapi_param_driverKeycodeSummary_t */
233 
234 /* brlapi_param_computerBrailleRowsMask_t */
237 
238 /* brlapi_param_computerBrailleRowCells_t */
240 typedef struct {
241  uint8_t cells[0X100];
242  uint8_t defined[0X100 / 8];
244 
245 /* brlapi_param_computerBrailleTable_t */
248 
249 /* brlapi_param_literaryBrailleTable_t */
252 
253 /* brlapi_param_messageLocale_t */
256 
258 #define BRLAPI_PARAM_BOUND_COMMAND_CODES BRLAPI_PARAM_BOUND_COMMAND_KEYCODES
261 
263 #define BRLAPI_PARAM_COMMAND_SHORT_NAME BRLAPI_PARAM_COMMAND_KEYCODE_NAME
266 
268 #define BRLAPI_PARAM_COMMAND_LONG_NAME BRLAPI_PARAM_COMMAND_KEYCODE_SUMMARY
271 
273 #define BRLAPI_PARAM_DEVICE_KEY_CODES BRLAPI_PARAM_DEFINED_DRIVER_KEYCODES
276 
278 #define BRLAPI_PARAM_KEY_SHORT_NAME BRLAPI_PARAM_DRIVER_KEYCODE_NAME
281 
283 #define BRLAPI_PARAM_KEY_LONG_NAME BRLAPI_PARAM_DRIVER_KEYCODE_SUMMARY
286 
288 typedef enum {
297 
299 typedef struct {
301  uint16_t arraySize;
303  uint16_t isArray:1;
305  uint16_t canRead:1;
306  uint16_t canWrite:1;
307  uint16_t canWatch:1;
308  uint16_t abiPadding1:4;
309  uint16_t hasSubparam:1;
311 
313 /* brlapi_getParameterProperties */
321 
324 #ifdef __cplusplus
325 }
326 #endif /* __cplusplus */
327 
328 #endif /* BRLAPI_INCLUDED_PARAM */
char * brlapi_param_deviceIdentifier_t
Definition: brlapi_param.h:160
char * brlapi_param_driverKeycodeName_t
Definition: brlapi_param.h:228
uint8_t * brlapi_param_renderedCells_t
Definition: brlapi_param.h:196
brlapi_param_bool_t brlapi_param_skipIdenticalLines_t
Definition: brlapi_param.h:200
uint8_t brlapi_param_deviceCellSize_t
Definition: brlapi_param.h:149
brlapi_param_driverKeycodeName_t brlapi_param_keyShortName_t
Definition: brlapi_param.h:280
char * brlapi_param_commandKeycodeSummary_t
Definition: brlapi_param.h:220
char * brlapi_param_driverVersion_t
Definition: brlapi_param.h:141
brlapi_param_driverKeycodeSummary_t brlapi_param_keyLongName_t
Definition: brlapi_param.h:285
const brlapi_param_properties_t * brlapi_getParameterProperties(brlapi_param_t parameter)
uint32_t brlapi_param_clientPriority_t
Definition: brlapi_param.h:120
brlapi_param_driverKeycode_t brlapi_param_keyCode_t
Definition: brlapi_param.h:275
uint32_t brlapi_param_serverVersion_t
Definition: brlapi_param.h:116
uint32_t brlapi_param_deviceSpeed_t
Definition: brlapi_param.h:164
char * brlapi_param_clipboardContent_t
Definition: brlapi_param.h:208
char * brlapi_param_messageLocale_t
Definition: brlapi_param.h:255
uint32_t brlapi_param_cursorBlinkPeriod_t
Definition: brlapi_param.h:188
char * brlapi_param_computerBrailleTable_t
Definition: brlapi_param.h:247
char * brlapi_param_driverName_t
Definition: brlapi_param.h:133
brlapi_param_commandKeycodeSummary_t brlapi_param_commandLongName_t
Definition: brlapi_param.h:270
char * brlapi_param_driverKeycodeSummary_t
Definition: brlapi_param.h:232
uint8_t brlapi_param_computerBrailleCellSize_t
Definition: brlapi_param.h:176
uint8_t brlapi_param_cursorDots_t
Definition: brlapi_param.h:184
brlapi_param_commandKeycode_t brlapi_param_commandCode_t
Definition: brlapi_param.h:260
brlapi_param_bool_t brlapi_param_deviceOnline_t
Definition: brlapi_param.h:168
brlapi_param_type_t
Definition: brlapi_param.h:288
@ BRLAPI_PARAM_TYPE_KEYCODE
Definition: brlapi_param.h:295
@ BRLAPI_PARAM_TYPE_UINT64
Definition: brlapi_param.h:294
@ BRLAPI_PARAM_TYPE_UINT16
Definition: brlapi_param.h:292
@ BRLAPI_PARAM_TYPE_UINT8
Definition: brlapi_param.h:291
@ BRLAPI_PARAM_TYPE_BOOLEAN
Definition: brlapi_param.h:290
@ BRLAPI_PARAM_TYPE_STRING
Definition: brlapi_param.h:289
@ BRLAPI_PARAM_TYPE_UINT32
Definition: brlapi_param.h:293
brlapi_keyCode_t brlapi_param_driverKeycode_t
Definition: brlapi_param.h:224
char * brlapi_param_deviceModel_t
Definition: brlapi_param.h:145
char * brlapi_param_commandKeycodeName_t
Definition: brlapi_param.h:216
uint64_t brlapi_param_subparam_t
Definition: brlapi_param.h:108
brlapi_param_bool_t brlapi_param_literaryBraille_t
Definition: brlapi_param.h:180
uint8_t brlapi_param_cursorBlinkPercentage_t
Definition: brlapi_param.h:192
uint8_t brlapi_param_computerBrailleRowsMask_t[544]
Definition: brlapi_param.h:236
brlapi_param_commandKeycodeName_t brlapi_param_commandShortName_t
Definition: brlapi_param.h:265
brlapi_param_bool_t brlapi_param_audibleAlerts_t
Definition: brlapi_param.h:204
brlapi_param_bool_t brlapi_param_retainDots_t
Definition: brlapi_param.h:172
uint8_t brlapi_param_bool_t
Definition: brlapi_param.h:112
char * brlapi_param_driverCode_t
Definition: brlapi_param.h:137
char * brlapi_param_literaryBrailleTable_t
Definition: brlapi_param.h:251
brlapi_keyCode_t brlapi_param_commandKeycode_t
Definition: brlapi_param.h:212
uint64_t brlapi_keyCode_t
Definition: brlapi_keycodes.h:109
brlapi_param_t
Definition: brlapi_param.h:36
@ BRLAPI_PARAM_SKIP_IDENTICAL_LINES
Definition: brlapi_param.h:65
@ BRLAPI_PARAM_SERVER_VERSION
Definition: brlapi_param.h:38
@ BRLAPI_PARAM_DISPLAY_SIZE
Definition: brlapi_param.h:47
@ BRLAPI_PARAM_BOUND_COMMAND_KEYCODES
Definition: brlapi_param.h:72
@ BRLAPI_PARAM_DRIVER_NAME
Definition: brlapi_param.h:42
@ BRLAPI_PARAM_LITERARY_BRAILLE
Definition: brlapi_param.h:58
@ BRLAPI_PARAM_COMMAND_KEYCODE_NAME
Definition: brlapi_param.h:74
@ BRLAPI_PARAM_DRIVER_KEYCODE_SUMMARY
Definition: brlapi_param.h:85
@ BRLAPI_PARAM_COUNT
Definition: brlapi_param.h:103
@ BRLAPI_PARAM_DEVICE_CELL_SIZE
Definition: brlapi_param.h:46
@ BRLAPI_PARAM_COMMAND_KEYCODE_SUMMARY
Definition: brlapi_param.h:77
@ BRLAPI_PARAM_DEVICE_IDENTIFIER
Definition: brlapi_param.h:48
@ BRLAPI_PARAM_DRIVER_VERSION
Definition: brlapi_param.h:44
@ BRLAPI_PARAM_AUDIBLE_ALERTS
Definition: brlapi_param.h:66
@ BRLAPI_PARAM_DRIVER_KEYCODE_NAME
Definition: brlapi_param.h:82
@ BRLAPI_PARAM_CLIENT_PRIORITY
Definition: brlapi_param.h:39
@ BRLAPI_PARAM_COMPUTER_BRAILLE_ROWS_MASK
Definition: brlapi_param.h:90
@ BRLAPI_PARAM_COMPUTER_BRAILLE_ROW_CELLS
Definition: brlapi_param.h:93
@ BRLAPI_PARAM_DEVICE_ONLINE
Definition: brlapi_param.h:50
@ BRLAPI_PARAM_CLIPBOARD_CONTENT
Definition: brlapi_param.h:69
@ BRLAPI_PARAM_CURSOR_BLINK_PERCENTAGE
Definition: brlapi_param.h:61
@ BRLAPI_PARAM_LITERARY_BRAILLE_TABLE
Definition: brlapi_param.h:97
@ BRLAPI_PARAM_RENDERED_CELLS
Definition: brlapi_param.h:62
@ BRLAPI_PARAM_CURSOR_BLINK_PERIOD
Definition: brlapi_param.h:60
@ BRLAPI_PARAM_RETAIN_DOTS
Definition: brlapi_param.h:54
@ BRLAPI_PARAM_DEVICE_SPEED
Definition: brlapi_param.h:49
@ BRLAPI_PARAM_COMPUTER_BRAILLE_TABLE
Definition: brlapi_param.h:96
@ BRLAPI_PARAM_DEVICE_MODEL
Definition: brlapi_param.h:45
@ BRLAPI_PARAM_MESSAGE_LOCALE
Definition: brlapi_param.h:98
@ BRLAPI_PARAM_CURSOR_DOTS
Definition: brlapi_param.h:59
@ BRLAPI_PARAM_COMPUTER_BRAILLE_CELL_SIZE
Definition: brlapi_param.h:57
@ BRLAPI_PARAM_DRIVER_CODE
Definition: brlapi_param.h:43
@ BRLAPI_PARAM_DEFINED_DRIVER_KEYCODES
Definition: brlapi_param.h:80
Definition: brlapi_param.h:240
Definition: brlapi_param.h:153
uint32_t columns
Definition: brlapi_param.h:154
uint32_t rows
Definition: brlapi_param.h:155
Definition: brlapi_param.h:299
uint16_t canWrite
Definition: brlapi_param.h:306
uint16_t canRead
Definition: brlapi_param.h:305
brlapi_param_type_t type
Definition: brlapi_param.h:300
uint16_t isArray
Definition: brlapi_param.h:303
uint16_t hasSubparam
Definition: brlapi_param.h:309
uint16_t arraySize
Definition: brlapi_param.h:301
uint16_t abiPadding1
Definition: brlapi_param.h:308
uint16_t canWatch
Definition: brlapi_param.h:307