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
100 /* TODO: dot-to-unicode as well */
101 
102 //Driver-speciic Parameters
105  /* TODO: help strings */
106 
107  BRLAPI_PARAM_COUNT = 33
109 
110 /* brlapi_param_subparam_t */
112 typedef uint64_t brlapi_param_subparam_t;
113 
114 /* brlapi_param_bool_t */
116 typedef uint8_t brlapi_param_bool_t;
117 
118 /* brlapi_param_serverVersion_t */
121 
122 /* brlapi_param_clientPriority_t */
125 
126 /* BRLAPI_PARAM_CLIENT_PRIORITY_DEFAULT */
128 #define BRLAPI_PARAM_CLIENT_PRIORITY_DEFAULT 50
129 
130 /* BRLAPI_PARAM_CLIENT_PRIORITY_DISABLE */
133 #define BRLAPI_PARAM_CLIENT_PRIORITY_DISABLE 0
134 
135 /* brlapi_param_driverName_t */
138 
139 /* brlapi_param_driverCode_t */
142 
143 /* brlapi_param_driverVersion_t */
146 
147 /* brlapi_param_deviceModel_t */
150 
151 /* brlapi_param_deviceCellSize_t */
154 
155 /* brlapi_param_displaySize_t */
157 typedef struct {
158  uint32_t columns;
159  uint32_t rows;
161 
162 /* brlapi_param_deviceIdentifier_t */
165 
166 /* brlapi_param_deviceSpeed_t */
168 typedef uint32_t brlapi_param_deviceSpeed_t;
169 
170 /* brlapi_param_deviceOnline_t */
173 
174 /* brlapi_param_retainDots_t */
177 
178 /* brlapi_param_computerBrailleCellSize_t */
181 
182 /* brlapi_param_literaryBraille_t */
185 
186 /* brlapi_param_cursorDots_t */
189 
190 /* brlapi_param_cursorBlinkPeriod_t */
193 
194 /* brlapi_param_cursorBlinkPercentage_t */
197 
198 /* brlapi_param_renderedCells_t */
201 
202 /* brlapi_param_skipIdenticalLines_t */
205 
206 /* brlapi_param_audibleAlerts_t */
209 
210 /* brlapi_param_clipboardContent_t */
213 
214 /* brlapi_param_commandKeycode_t */
217 
218 /* brlapi_param_commandKeycodeName_t */
221 
222 /* brlapi_param_commandKeycodeSummary_t */
225 
226 /* brlapi_param_driverKeycode_t */
229 
230 /* brlapi_param_driverKeycodeName_t */
233 
234 /* brlapi_param_driverKeycodeSummary_t */
237 
238 /* brlapi_param_computerBrailleRowsMask_t */
241 
242 /* brlapi_param_computerBrailleRowCells_t */
244 typedef struct {
245  uint8_t cells[0X100];
246  uint8_t defined[0X100 / 8];
248 
249 /* brlapi_param_computerBrailleTable_t */
252 
253 /* brlapi_param_literaryBrailleTable_t */
256 
257 /* brlapi_param_messageLocale_t */
260 
261 /* brlapi_param_driverPropertyValue_t */
264 
266 #define BRLAPI_PARAM_BOUND_COMMAND_CODES BRLAPI_PARAM_BOUND_COMMAND_KEYCODES
269 
271 #define BRLAPI_PARAM_COMMAND_SHORT_NAME BRLAPI_PARAM_COMMAND_KEYCODE_NAME
274 
276 #define BRLAPI_PARAM_COMMAND_LONG_NAME BRLAPI_PARAM_COMMAND_KEYCODE_SUMMARY
279 
281 #define BRLAPI_PARAM_DEVICE_KEY_CODES BRLAPI_PARAM_DEFINED_DRIVER_KEYCODES
284 
286 #define BRLAPI_PARAM_KEY_SHORT_NAME BRLAPI_PARAM_DRIVER_KEYCODE_NAME
289 
291 #define BRLAPI_PARAM_KEY_LONG_NAME BRLAPI_PARAM_DRIVER_KEYCODE_SUMMARY
294 
296 typedef enum {
305 
307 typedef struct {
309  uint16_t arraySize;
311  uint16_t isArray:1;
313  uint16_t canRead:1;
314  uint16_t canWrite:1;
315  uint16_t canWatch:1;
316  uint16_t abiPadding1:4;
317  uint16_t hasSubparam:1;
319 
321 /* brlapi_getParameterProperties */
329 
332 #ifdef __cplusplus
333 }
334 #endif /* __cplusplus */
335 
336 #endif /* BRLAPI_INCLUDED_PARAM */
char * brlapi_param_deviceIdentifier_t
Definition: brlapi_param.h:164
char * brlapi_param_driverKeycodeName_t
Definition: brlapi_param.h:232
uint8_t * brlapi_param_renderedCells_t
Definition: brlapi_param.h:200
brlapi_param_bool_t brlapi_param_skipIdenticalLines_t
Definition: brlapi_param.h:204
uint8_t brlapi_param_deviceCellSize_t
Definition: brlapi_param.h:153
brlapi_param_driverKeycodeName_t brlapi_param_keyShortName_t
Definition: brlapi_param.h:288
char * brlapi_param_commandKeycodeSummary_t
Definition: brlapi_param.h:224
char * brlapi_param_driverVersion_t
Definition: brlapi_param.h:145
uint64_t brlapi_param_driverPropertyValue_t
Definition: brlapi_param.h:263
brlapi_param_driverKeycodeSummary_t brlapi_param_keyLongName_t
Definition: brlapi_param.h:293
const brlapi_param_properties_t * brlapi_getParameterProperties(brlapi_param_t parameter)
uint32_t brlapi_param_clientPriority_t
Definition: brlapi_param.h:124
brlapi_param_driverKeycode_t brlapi_param_keyCode_t
Definition: brlapi_param.h:283
uint32_t brlapi_param_serverVersion_t
Definition: brlapi_param.h:120
uint32_t brlapi_param_deviceSpeed_t
Definition: brlapi_param.h:168
char * brlapi_param_clipboardContent_t
Definition: brlapi_param.h:212
char * brlapi_param_messageLocale_t
Definition: brlapi_param.h:259
uint32_t brlapi_param_cursorBlinkPeriod_t
Definition: brlapi_param.h:192
char * brlapi_param_computerBrailleTable_t
Definition: brlapi_param.h:251
char * brlapi_param_driverName_t
Definition: brlapi_param.h:137
brlapi_param_commandKeycodeSummary_t brlapi_param_commandLongName_t
Definition: brlapi_param.h:278
char * brlapi_param_driverKeycodeSummary_t
Definition: brlapi_param.h:236
uint8_t brlapi_param_computerBrailleCellSize_t
Definition: brlapi_param.h:180
uint8_t brlapi_param_cursorDots_t
Definition: brlapi_param.h:188
brlapi_param_commandKeycode_t brlapi_param_commandCode_t
Definition: brlapi_param.h:268
brlapi_param_bool_t brlapi_param_deviceOnline_t
Definition: brlapi_param.h:172
brlapi_param_type_t
Definition: brlapi_param.h:296
@ BRLAPI_PARAM_TYPE_KEYCODE
Definition: brlapi_param.h:303
@ BRLAPI_PARAM_TYPE_UINT64
Definition: brlapi_param.h:302
@ BRLAPI_PARAM_TYPE_UINT16
Definition: brlapi_param.h:300
@ BRLAPI_PARAM_TYPE_UINT8
Definition: brlapi_param.h:299
@ BRLAPI_PARAM_TYPE_BOOLEAN
Definition: brlapi_param.h:298
@ BRLAPI_PARAM_TYPE_STRING
Definition: brlapi_param.h:297
@ BRLAPI_PARAM_TYPE_UINT32
Definition: brlapi_param.h:301
brlapi_keyCode_t brlapi_param_driverKeycode_t
Definition: brlapi_param.h:228
char * brlapi_param_deviceModel_t
Definition: brlapi_param.h:149
char * brlapi_param_commandKeycodeName_t
Definition: brlapi_param.h:220
uint64_t brlapi_param_subparam_t
Definition: brlapi_param.h:112
brlapi_param_bool_t brlapi_param_literaryBraille_t
Definition: brlapi_param.h:184
uint8_t brlapi_param_cursorBlinkPercentage_t
Definition: brlapi_param.h:196
uint8_t brlapi_param_computerBrailleRowsMask_t[544]
Definition: brlapi_param.h:240
brlapi_param_commandKeycodeName_t brlapi_param_commandShortName_t
Definition: brlapi_param.h:273
brlapi_param_bool_t brlapi_param_audibleAlerts_t
Definition: brlapi_param.h:208
brlapi_param_bool_t brlapi_param_retainDots_t
Definition: brlapi_param.h:176
uint8_t brlapi_param_bool_t
Definition: brlapi_param.h:116
char * brlapi_param_driverCode_t
Definition: brlapi_param.h:141
char * brlapi_param_literaryBrailleTable_t
Definition: brlapi_param.h:255
brlapi_keyCode_t brlapi_param_commandKeycode_t
Definition: brlapi_param.h:216
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:107
@ 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_DRIVER_PROPERTY_VALUE
Definition: brlapi_param.h:103
@ 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:244
Definition: brlapi_param.h:157
uint32_t columns
Definition: brlapi_param.h:158
uint32_t rows
Definition: brlapi_param.h:159
Definition: brlapi_param.h:307
uint16_t canWrite
Definition: brlapi_param.h:314
uint16_t canRead
Definition: brlapi_param.h:313
brlapi_param_type_t type
Definition: brlapi_param.h:308
uint16_t isArray
Definition: brlapi_param.h:311
uint16_t hasSubparam
Definition: brlapi_param.h:317
uint16_t arraySize
Definition: brlapi_param.h:309
uint16_t abiPadding1
Definition: brlapi_param.h:316
uint16_t canWatch
Definition: brlapi_param.h:315