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
27extern "C" {
28#endif /* __cplusplus */
29
30#include "brlapi_keycodes.h"
31
36typedef 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
105
106/* brlapi_param_subparam_t */
108typedef uint64_t brlapi_param_subparam_t;
109
110/* brlapi_param_bool_t */
112typedef 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 */
153typedef struct {
154 uint32_t columns;
155 uint32_t rows;
157
158/* brlapi_param_deviceIdentifier_t */
161
162/* 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 */
240typedef 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
297
299typedef 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
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
const brlapi_param_properties_t * brlapi_getParameterProperties(brlapi_param_t parameter)
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