BrlAPI 0.8
brlapi.h
Go to the documentation of this file.
1/* Programs/brlapi.h. Generated from brlapi.h.in by configure. */
2/*
3 * libbrlapi - A library providing access to braille terminals for applications.
4 *
5 * Copyright (C) 2002-2025 by
6 * Samuel Thibault <Samuel.Thibault@ens-lyon.org>
7 * Sébastien Hinderer <Sebastien.Hinderer@ens-lyon.org>
8 *
9 * libbrlapi comes with ABSOLUTELY NO WARRANTY.
10 *
11 * This is free software, placed under the terms of the
12 * GNU Lesser General Public License, as published by the Free Software
13 * Foundation; either version 2.1 of the License, or (at your option) any
14 * later version. Please see the file LICENSE-LGPL for details.
15 *
16 * Web Page: http://brltty.app/
17 *
18 * This software is maintained by Dave Mielke <dave@mielke.cc>.
19 */
20
32#ifndef BRLAPI_INCLUDED
33#define BRLAPI_INCLUDED
34
35#ifdef __cplusplus
36extern "C" {
37#endif /* __cplusplus */
38
39/* #undef BRLAPI_WIN32 */
40
45#define BRLAPI_RELEASE "0.8.7"
46
48#define BRLAPI_MAJOR 0
49
51#define BRLAPI_MINOR 8
52
54#define BRLAPI_REVISION 7
55
57void brlapi_getLibraryVersion(int *major, int *minor, int *revision);
58
61/* Types are defined there */
62#include <sys/types.h>
63
64#ifdef BRLAPI_WIN32
65#include <windows.h>
66#define BRLAPI_STDCALL __stdcall
67#else /* BRLAPI_WIN32 */
68#define BRLAPI_STDCALL
69#endif /* BRLAPI_WIN32 */
70
71#ifdef _MSC_VER
72typedef __int64 uint64_t;
73typedef __int32 uint32_t;
74#define UINT64_C(x) (x ## Ui64)
75#define PRIx64 "I64x"
76typedef signed int ssize_t;
77#else /* _MSC_VER */
78
79/* this is for uint*_t */
80#include <stdint.h>
81
82/* NULL is defined there */
83#include <unistd.h>
84
85#include <inttypes.h> /* For PRIx64 */
86#endif /* _MSC_VER */
87
88#include <wchar.h>
89
113
116
130#define BRLAPI_SOCKETPORTNUM 4101
131#define BRLAPI_SOCKETPORT "4101"
132
134#define BRLAPI_SOCKETPATH "/var/lib/BrlAPI"
135
140#define BRLAPI_ETCDIR "/etc"
141
145#define BRLAPI_AUTHKEYFILE "brlapi.key"
146
148#ifdef BRLAPI_WIN32
149/* No authentication by default on Windows */
150#define BRLAPI_DEFAUTH "none"
151#else /* BRLAPI_WIN32 */
152#define BRLAPI_DEFAUTH_KEYFILE "keyfile:" BRLAPI_ETCDIR "/" BRLAPI_AUTHKEYFILE
153
154#ifdef HAVE_POLKIT
155#define BRLAPI_DEFAUTH_POLKIT "+polkit"
156#else /* HAVE_POLKIT */
157#define BRLAPI_DEFAUTH_POLKIT ""
158#endif /* HAVE_POLKIT */
159
160#define BRLAPI_DEFAUTH BRLAPI_DEFAUTH_KEYFILE BRLAPI_DEFAUTH_POLKIT
161#endif /* BRLAPI_WIN32 */
162
168#ifdef __MINGW32__
169typedef HANDLE brlapi_fileDescriptor;
170#else /* __MINGW32__ */
172#endif /* __MINGW32__ */
173
178#ifdef __MINGW32__
179#define BRLAPI_INVALID_FILE_DESCRIPTOR INVALID_HANDLE_VALUE
180#else /* __MINGW32__ */
181#define BRLAPI_INVALID_FILE_DESCRIPTOR -1
182#endif /* __MINGW32__ */
183
214typedef struct {
222 const char *auth;
223
232 const char *host;
234
235/* BRLAPI_SETTINGS_INITIALIZER */
238#define BRLAPI_SETTINGS_INITIALIZER { NULL, NULL }
239
240/* brlapi_openConnection */
287#ifndef BRLAPI_NO_SINGLE_SESSION
289#endif /* BRLAPI_NO_SINGLE_SESSION */
291
292/* brlapi_fileDescriptor */
300#ifndef BRLAPI_NO_SINGLE_SESSION
302#endif /* BRLAPI_NO_SINGLE_SESSION */
304
305
306/* brlapi_closeConnection */
313#ifndef BRLAPI_NO_SINGLE_SESSION
315#endif /* BRLAPI_NO_SINGLE_SESSION */
317
326/* brlapi__setClientData */
331#ifndef BRLAPI_NO_SINGLE_SESSION
333#endif /* BRLAPI_NO_SINGLE_SESSION */
335
336/* brlapi__getClientData */
341#ifndef BRLAPI_NO_SINGLE_SESSION
343#endif /* BRLAPI_NO_SINGLE_SESSION */
345
361#define BRLAPI_MAXNAMELENGTH 31
362
363/* brlapi_getDriverName */
376#ifndef BRLAPI_NO_SINGLE_SESSION
377int BRLAPI_STDCALL brlapi_getDriverName(char *buffer, size_t size);
378#endif /* BRLAPI_NO_SINGLE_SESSION */
379int BRLAPI_STDCALL brlapi__getDriverName(brlapi_handle_t *handle, char *buffer, size_t size);
380
381/* brlapi_getModelIdentifier */
394#ifndef BRLAPI_NO_SINGLE_SESSION
395int BRLAPI_STDCALL brlapi_getModelIdentifier(char *buffer, size_t size);
396#endif /* BRLAPI_NO_SINGLE_SESSION */
397int BRLAPI_STDCALL brlapi__getModelIdentifier(brlapi_handle_t *handle, char *buffer, size_t size);
398
399/* brlapi_getDisplaySize */
401#ifndef BRLAPI_NO_SINGLE_SESSION
402int BRLAPI_STDCALL brlapi_getDisplaySize(unsigned int *x, unsigned int *y);
403#endif /* BRLAPI_NO_SINGLE_SESSION */
404int BRLAPI_STDCALL brlapi__getDisplaySize(brlapi_handle_t *handle, unsigned int *x, unsigned int *y);
405
429/* brlapi_enterTtyMode */
458#ifndef BRLAPI_NO_SINGLE_SESSION
459int BRLAPI_STDCALL brlapi_enterTtyMode(int tty, const char *driver);
460#endif /* BRLAPI_NO_SINGLE_SESSION */
461int BRLAPI_STDCALL brlapi__enterTtyMode(brlapi_handle_t *handle, int tty, const char *driver);
462
472#define BRLAPI_TTY_DEFAULT -1
473
474/* brlapi_enterTtyModeWithPath */
493#ifndef BRLAPI_NO_SINGLE_SESSION
494int BRLAPI_STDCALL brlapi_enterTtyModeWithPath(const int *ttys, int count, const char *driver);
495#endif /* BRLAPI_NO_SINGLE_SESSION */
496int BRLAPI_STDCALL brlapi__enterTtyModeWithPath(brlapi_handle_t *handle, const int *ttys, int count, const char *driver);
497
498/* brlapi_leaveTtyMode */
505#ifndef BRLAPI_NO_SINGLE_SESSION
507#endif /* BRLAPI_NO_SINGLE_SESSION */
509
510/* brlapi_setFocus */
521#ifndef BRLAPI_NO_SINGLE_SESSION
523#endif /* BRLAPI_NO_SINGLE_SESSION */
525
558/* brlapi_writeText */
573#ifndef BRLAPI_NO_SINGLE_SESSION
574int BRLAPI_STDCALL brlapi_writeText(int cursor, const char *text);
575#endif /* BRLAPI_NO_SINGLE_SESSION */
576int BRLAPI_STDCALL brlapi__writeText(brlapi_handle_t *handle, int cursor, const char *text);
577
578/* brlapi_writeWText */
591#ifndef BRLAPI_NO_SINGLE_SESSION
592int BRLAPI_STDCALL brlapi_writeWText(int cursor, const wchar_t *text);
593#endif /* BRLAPI_NO_SINGLE_SESSION */
594int BRLAPI_STDCALL brlapi__writeWText(brlapi_handle_t *handle, int cursor, const wchar_t *text);
595
596/* brlapi_writeDots */
604#ifndef BRLAPI_NO_SINGLE_SESSION
605int BRLAPI_STDCALL brlapi_writeDots(const unsigned char *dots);
606#endif /* BRLAPI_NO_SINGLE_SESSION */
607int BRLAPI_STDCALL brlapi__writeDots(brlapi_handle_t *handle, const unsigned char *dots);
608
609/* brlapi_writeArguments_t */
611typedef struct {
612 int displayNumber ;
613 unsigned int regionBegin ;
614 int regionSize ;
615 const char *text ;
616 int textSize ;
617 const unsigned char *andMask ;
618 const unsigned char *orMask ;
619 int cursor ;
620 const char *charset ;
622
627#define BRLAPI_DISPLAY_DEFAULT -1
628
633#define BRLAPI_CURSOR_LEAVE -1
634
639#define BRLAPI_CURSOR_OFF 0
640
641/* BRLAPI_WRITEARGUMENTS_INITIALIZER */
651#define BRLAPI_WRITEARGUMENTS_INITIALIZER { \
652 .displayNumber = BRLAPI_DISPLAY_DEFAULT, \
653 .regionBegin = 0, \
654 .regionSize = 0, \
655 .text = NULL, \
656 .textSize = -1, \
657 .andMask = NULL, \
658 .orMask = NULL, \
659 .cursor = BRLAPI_CURSOR_LEAVE, \
660 .charset = NULL \
661}
662
663/* brlapi_write */
699#ifndef BRLAPI_NO_SINGLE_SESSION
701#endif /* BRLAPI_NO_SINGLE_SESSION */
703
706#include "brlapi_keycodes.h"
707
721/* brlapi_expandedKeyCode_t */
723typedef struct {
724 unsigned int type ;
725 unsigned int command ;
726 unsigned int argument ;
727 unsigned int flags ;
729
730/* brlapi_expandKeyCode */
739
740/* brlapi_describedKeyCode_t */
742typedef struct {
743 const char *type ;
744 const char *command ;
745 unsigned int argument ;
746 unsigned int flags ;
747 const char *flag[64 - BRLAPI_KEY_FLAGS_SHIFT] ;
750
751/* brlapi_describeKeyCode */
760
762#define BRLAPI_UC_ROW 0x2800UL
763
764/* brlapi_readKey */
833#ifndef BRLAPI_NO_SINGLE_SESSION
835#endif /* BRLAPI_NO_SINGLE_SESSION */
837
838/* brlapi_readKeyWithTimeout */
859#ifndef BRLAPI_NO_SINGLE_SESSION
861#endif /* BRLAPI_NO_SINGLE_SESSION */
863
872
873/* brlapi_ignoreKeys */
885#ifndef BRLAPI_NO_SINGLE_SESSION
886int BRLAPI_STDCALL brlapi_ignoreKeys(brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count);
887#endif /* BRLAPI_NO_SINGLE_SESSION */
888int BRLAPI_STDCALL brlapi__ignoreKeys(brlapi_handle_t *handle, brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count);
889
890/* brlapi_acceptKeys */
902#ifndef BRLAPI_NO_SINGLE_SESSION
903int BRLAPI_STDCALL brlapi_acceptKeys(brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count);
904#endif /* BRLAPI_NO_SINGLE_SESSION */
905int BRLAPI_STDCALL brlapi__acceptKeys(brlapi_handle_t *handle, brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count);
906
907/* brlapi_ignoreAllKeys */
915#ifndef BRLAPI_NO_SINGLE_SESSION
917#define brlapi_ignoreAllKeys() brlapi_ignoreKeys(brlapi_rangeType_all, NULL, 0)
918#endif /* BRLAPI_NO_SINGLE_SESSION */
920#define brlapi__ignoreAllKeys(handle) brlapi__ignoreKeys(handle, brlapi_rangeType_all, NULL, 0)
921
922/* brlapi_acceptAllKeys */
933#ifndef BRLAPI_NO_SINGLE_SESSION
935#define brlapi_acceptAllKeys() brlapi_acceptKeys(brlapi_rangeType_all, NULL, 0)
936#endif /* BRLAPI_NO_SINGLE_SESSION */
938#define brlapi__acceptAllKeys(handle) brlapi__acceptKeys(handle, brlapi_rangeType_all, NULL, 0)
939
948
949/* brlapi_ignoreKeyRanges */
960#ifndef BRLAPI_NO_SINGLE_SESSION
961int BRLAPI_STDCALL brlapi_ignoreKeyRanges(const brlapi_range_t ranges[], unsigned int count);
962#endif /* BRLAPI_NO_SINGLE_SESSION */
963int BRLAPI_STDCALL brlapi__ignoreKeyRanges(brlapi_handle_t *handle, const brlapi_range_t ranges[], unsigned int count);
964
965/* brlapi_acceptKeyRanges */
976#ifndef BRLAPI_NO_SINGLE_SESSION
977int BRLAPI_STDCALL brlapi_acceptKeyRanges(const brlapi_range_t ranges[], unsigned int count);
978#endif /* BRLAPI_NO_SINGLE_SESSION */
979int BRLAPI_STDCALL brlapi__acceptKeyRanges(brlapi_handle_t *handle, const brlapi_range_t ranges[], unsigned int count);
1005/* brlapi_enterRawMode */
1013#ifndef BRLAPI_NO_SINGLE_SESSION
1014int BRLAPI_STDCALL brlapi_enterRawMode(const char *driver);
1015#endif /* BRLAPI_NO_SINGLE_SESSION */
1016int BRLAPI_STDCALL brlapi__enterRawMode(brlapi_handle_t *handle, const char *driver);
1017
1018/* brlapi_leaveRawMode */
1021#ifndef BRLAPI_NO_SINGLE_SESSION
1023#endif /* BRLAPI_NO_SINGLE_SESSION */
1025
1026/* brlapi_sendRaw */
1032#ifndef BRLAPI_NO_SINGLE_SESSION
1033ssize_t BRLAPI_STDCALL brlapi_sendRaw(const void *buffer, size_t size);
1034#endif /* BRLAPI_NO_SINGLE_SESSION */
1035ssize_t BRLAPI_STDCALL brlapi__sendRaw(brlapi_handle_t *handle, const void *buffer, size_t size);
1036
1037/* brlapi_recvRaw */
1046#ifndef BRLAPI_NO_SINGLE_SESSION
1047ssize_t BRLAPI_STDCALL brlapi_recvRaw(void *buffer, size_t size);
1048#endif /* BRLAPI_NO_SINGLE_SESSION */
1049ssize_t BRLAPI_STDCALL brlapi__recvRaw(brlapi_handle_t *handle, void *buffer, size_t size);
1050
1051/* brlapi_suspendDriver */
1056#ifndef BRLAPI_NO_SINGLE_SESSION
1057int BRLAPI_STDCALL brlapi_suspendDriver(const char *driver);
1058#endif /* BRLAPI_NO_SINGLE_SESSION */
1060
1061/* brlapi_resumeDriver */
1065#ifndef BRLAPI_NO_SINGLE_SESSION
1067#endif /* BRLAPI_NO_SINGLE_SESSION */
1071#include "brlapi_param.h"
1072
1097typedef uint32_t brlapi_param_flags_t;
1098#define BRLAPI_PARAMF_LOCAL 0X00
1099#define BRLAPI_PARAMF_GLOBAL 0X01
1100#define BRLAPI_PARAMF_SELF 0X02
1102/* brlapi_getParameter */
1115#ifndef BRLAPI_NO_SINGLE_SESSION
1116ssize_t BRLAPI_STDCALL brlapi_getParameter(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void* data, size_t len);
1117#endif
1118ssize_t BRLAPI_STDCALL brlapi__getParameter(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void* data, size_t len);
1119
1120/* brlapi_getParameterAlloc */
1133#ifndef BRLAPI_NO_SINGLE_SESSION
1135#endif
1137
1138/* brlapi_setParameter */
1151#ifndef BRLAPI_NO_SINGLE_SESSION
1152int BRLAPI_STDCALL brlapi_setParameter(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, const void* data, size_t len);
1153#endif
1154int BRLAPI_STDCALL brlapi__setParameter(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, const void* data, size_t len);
1155
1156/* brlapi_paramCallback_t */
1177typedef void (*brlapi_paramCallback_t)(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void *priv, const void *data, size_t len);
1178
1179/* brlapi_paramCallbackDescriptor_t */
1185
1186/* brlapi_watchParameter */
1209#ifndef BRLAPI_NO_SINGLE_SESSION
1211#endif
1213
1214/* brlapi_unwatchParameter */
1225#ifndef BRLAPI_NO_SINGLE_SESSION
1227#endif
1229
1235/* brlapi_pause */
1242#ifndef BRLAPI_NO_SINGLE_SESSION
1243int BRLAPI_STDCALL brlapi_pause(int timeout_ms);
1244#endif
1245int BRLAPI_STDCALL brlapi__pause(brlapi_handle_t *handle, int timeout_ms);
1246
1247/* brlapi_sync */
1255#ifndef BRLAPI_NO_SINGLE_SESSION
1257#endif
1259
1286#define BRLAPI_ERROR_SUCCESS 0
1288#define BRLAPI_ERROR_NOMEM BRLAPI_ERROR_NOMEM
1290#define BRLAPI_ERROR_TTYBUSY BRLAPI_ERROR_TTYBUSY
1292#define BRLAPI_ERROR_DEVICEBUSY BRLAPI_ERROR_DEVICEBUSY
1294#define BRLAPI_ERROR_UNKNOWN_INSTRUCTION BRLAPI_ERROR_UNKNOWN_INSTRUCTION
1296#define BRLAPI_ERROR_ILLEGAL_INSTRUCTION BRLAPI_ERROR_ILLEGAL_INSTRUCTION
1298#define BRLAPI_ERROR_INVALID_PARAMETER BRLAPI_ERROR_INVALID_PARAMETER
1300#define BRLAPI_ERROR_INVALID_PACKET BRLAPI_ERROR_INVALID_PACKET
1302#define BRLAPI_ERROR_CONNREFUSED BRLAPI_ERROR_CONNREFUSED
1304#define BRLAPI_ERROR_OPNOTSUPP BRLAPI_ERROR_OPNOTSUPP
1306#define BRLAPI_ERROR_GAIERR BRLAPI_ERROR_GAIERR
1308#define BRLAPI_ERROR_LIBCERR BRLAPI_ERROR_LIBCERR
1310#define BRLAPI_ERROR_UNKNOWNTTY BRLAPI_ERROR_UNKNOWNTTY
1312#define BRLAPI_ERROR_PROTOCOL_VERSION BRLAPI_ERROR_PROTOCOL_VERSION
1314#define BRLAPI_ERROR_EOF BRLAPI_ERROR_EOF
1316#define BRLAPI_ERROR_EMPTYKEY BRLAPI_ERROR_EMPTYKEY
1318#define BRLAPI_ERROR_DRIVERERROR BRLAPI_ERROR_DRIVERERROR
1320#define BRLAPI_ERROR_AUTHENTICATION BRLAPI_ERROR_AUTHENTICATION
1322#define BRLAPI_ERROR_READONLY_PARAMETER BRLAPI_ERROR_READONLY_PARAMETER
1323};
1324
1325/* brlapi_errlist */
1330extern const char *brlapi_errlist[];
1331
1332/* brlapi_nerr */
1334extern const int brlapi_nerr;
1335
1336/* brlapi_perror */
1341void BRLAPI_STDCALL brlapi_perror(const char *s);
1342
1343/* brlapi_error_t */
1345typedef struct {
1349 const char *errfun;
1351
1361
1371
1373extern enum brlapi_error brlapi_errno;
1375extern int brlapi_libcerrno;
1377extern int brlapi_gaierrno;
1379extern const char *brlapi_errfun;
1380
1382#define brlapi_error (*brlapi_error_location())
1384#define brlapi_errno (brlapi_error.brlerrno)
1386#define brlapi_libcerrno (brlapi_error.libcerrno)
1388#define brlapi_gaierrno (brlapi_error.gaierrno)
1390#define brlapi_errfun (brlapi_error.errfun)
1391
1392/* brlapi_strerror */
1401
1402/* brlapi_strerror_r */
1419size_t BRLAPI_STDCALL brlapi_strerror_r(const brlapi_error_t *error, char *buf, size_t buflen);
1420
1422typedef uint32_t brlapi_packetType_t;
1423
1424/* brlapi_getPacketTypeName */
1431
1432/* brlapi_exceptionHandler_t */
1443#ifndef BRLAPI_NO_SINGLE_SESSION
1444typedef void (BRLAPI_STDCALL *brlapi_exceptionHandler_t)(int error, brlapi_packetType_t type, const void *packet, size_t size);
1445#endif /* BRLAPI_NO_SINGLE_SESSION */
1446typedef void (BRLAPI_STDCALL *brlapi__exceptionHandler_t)(brlapi_handle_t *handle, int error, brlapi_packetType_t type, const void *packet, size_t size);
1447
1448/* brlapi_strexception */
1458#ifndef BRLAPI_NO_SINGLE_SESSION
1459int BRLAPI_STDCALL brlapi_strexception(char *buffer, size_t bufferSize, int error, brlapi_packetType_t type, const void *packet, size_t packetSize);
1460#endif /* BRLAPI_NO_SINGLE_SESSION */
1461int BRLAPI_STDCALL brlapi__strexception(brlapi_handle_t *handle, char *buffer, size_t bufferSize, int error, brlapi_packetType_t type, const void *packet, size_t packetSize);
1462
1463/* brlapi_setExceptionHandler */
1472#ifndef BRLAPI_NO_SINGLE_SESSION
1474#endif /* BRLAPI_NO_SINGLE_SESSION */
1476
1477#ifndef BRLAPI_NO_SINGLE_SESSION
1478void BRLAPI_STDCALL brlapi_defaultExceptionHandler(int error, brlapi_packetType_t type, const void *packet, size_t size);
1479#endif /* BRLAPI_NO_SINGLE_SESSION */
1480void BRLAPI_STDCALL brlapi__defaultExceptionHandler(brlapi_handle_t *handle, int error, brlapi_packetType_t type, const void *packet, size_t size);
1481
1484/* Windows-specific tricks - don't look at this */
1485#ifdef BRLAPI_WIN32
1486#ifndef BRLAPI_NO_SINGLE_SESSION
1487int BRLAPI_STDCALL brlapi_writeTextWin(int cursor, const void *str, int wide);
1488#endif /* BRLAPI_NO_SINGLE_SESSION */
1489int BRLAPI_STDCALL brlapi__writeTextWin(brlapi_handle_t *handle, int cursor, const void *str, int wide);
1490
1491#ifndef BRLAPI_NO_SINGLE_SESSION
1492int BRLAPI_STDCALL brlapi_writeWin(const brlapi_writeArguments_t *s, int wide);
1493#endif /* BRLAPI_NO_SINGLE_SESSION */
1494int BRLAPI_STDCALL brlapi__writeWin(brlapi_handle_t *handle, const brlapi_writeArguments_t *s, int wide);
1495
1496#ifdef UNICODE
1497#ifndef BRLAPI_NO_SINGLE_SESSION
1498#define brlapi_writeText(cursor, str) brlapi_writeTextWin(cursor, str, 1)
1499#endif /* BRLAPI_NO_SINGLE_SESSION */
1500#define brlapi__writeText(handle, cursor, str) brlapi__writeTextWin(handle, cursor, str, 1)
1501
1502#ifndef BRLAPI_NO_SINGLE_SESSION
1503#define brlapi_write(s) brlapi_writeWin(s, 1)
1504#endif /* BRLAPI_NO_SINGLE_SESSION */
1505#define brlapi__write(handle, s) brlapi__writeWin(handle, s, 1)
1506
1507#else /* UNICODE */
1508
1509#ifndef BRLAPI_NO_SINGLE_SESSION
1510#define brlapi_writeText(cursor, str) brlapi_writeTextWin(cursor, str, 0)
1511#endif /* BRLAPI_NO_SINGLE_SESSION */
1512#define brlapi__writeText(handle, cursor, str) brlapi__writeTextWin(handle, cursor, str, 0)
1513
1514#ifndef BRLAPI_NO_SINGLE_SESSION
1515#define brlapi_write(s) brlapi_writeWin(s, 0)
1516#endif /* BRLAPI_NO_SINGLE_SESSION */
1517#define brlapi__write(handle, s) brlapi__writeWin(handle, s, 0)
1518
1519#endif /* UNICODE */
1520#endif /* BRLAPI_WIN32 */
1521
1522#ifndef BRLAPI_NO_DEPRECATED
1535#define brlapi_settings_t brlapi_connectionSettings_t
1536
1538typedef struct {
1540 unsigned int regionBegin;
1541 unsigned int regionSize;
1542 const char *text;
1544 const unsigned char *attrAnd;
1545 const unsigned char *attrOr;
1547 const char *charset;
1549#define BRLAPI_WRITESTRUCT_INITIALIZER BRLAPI_WRITEARGUMENTS_INITIALIZER
1550
1551#define brl_keycode_t brlapi_keyCode_t
1552#define brl_type_t brlapi_packetType_t
1553
1554#define BRLCOMMANDS NULL
1555#define BRL_KEYCODE_MAX BRLAPI_KEY_MAX
1556
1557#ifndef BRLAPI_NO_SINGLE_SESSION
1558#define brlapi_initializeConnection brlapi_openConnection
1559#define brlapi_getTty brlapi_enterTtyMode
1560#define brlapi_getTtyPath brlapi_enterTtyModeWithPath
1561#define brlapi_leaveTty brlapi_leaveTtyMode
1562#define brlapi_unignoreKeyRange brlapi_acceptKeyRange
1563#define brlapi_unignoreKeySet brlapi_acceptKeySet
1564#define brlapi_getRaw brlapi_enterRawMode
1565#define brlapi_leaveRaw brlapi_leaveRawMode
1566#define brlapi_suspend brlapi_suspendDriver
1567#define brlapi_resume brlapi_resumeDriver
1568#endif /* BRLAPI_NO_SINGLE_SESSION */
1569
1570#define BRLERR_SUCCESS BRLAPI_ERROR_SUCCESS
1571#define BRLERR_NOMEM BRLAPI_ERROR_NOMEM
1572#define BRLERR_TTYBUSY BRLAPI_ERROR_TTYBUSY
1573#define BRLERR_DEVICEBUSY BRLAPI_ERROR_DEVICEBUSY
1574#define BRLERR_UNKNOWN_INSTRUCTION BRLAPI_ERROR_UNKNOWN_INSTRUCTION
1575#define BRLERR_ILLEGAL_INSTRUCTION BRLAPI_ERROR_ILLEGAL_INSTRUCTION
1576#define BRLERR_INVALID_PARAMETER BRLAPI_ERROR_INVALID_PARAMETER
1577#define BRLERR_INVALID_PACKET BRLAPI_ERROR_INVALID_PACKET
1578#define BRLERR_CONNREFUSED BRLAPI_ERROR_CONNREFUSED
1579#define BRLERR_OPNOTSUPP BRLAPI_ERROR_OPNOTSUPP
1580#define BRLERR_GAIERR BRLAPI_ERROR_GAIERR
1581#define BRLERR_LIBCERR BRLAPI_ERROR_LIBCERR
1582#define BRLERR_UNKNOWNTTY BRLAPI_ERROR_UNKNOWNTTY
1583#define BRLERR_PROTOCOL_VERSION BRLAPI_ERROR_PROTOCOL_VERSION
1584#define BRLERR_EOF BRLAPI_ERROR_EOF
1585#define BRLERR_EMPTYKEY BRLAPI_ERROR_EMPTYKEY
1586#define BRLERR_DRIVERERROR BRLAPI_ERROR_DRIVERERROR
1587
1589#endif /* BRLAPI_NO_DEPRECATED */
1590
1591#ifdef __cplusplus
1592}
1593#endif /* __cplusplus */
1594
1595#endif /* BRLAPI_INCLUDED */
#define BRLAPI_ERROR_INVALID_PARAMETER
Definition brlapi.h:1298
#define BRLAPI_ERROR_DEVICEBUSY
Definition brlapi.h:1292
#define BRLAPI_ERROR_TTYBUSY
Definition brlapi.h:1290
#define BRLAPI_ERROR_UNKNOWNTTY
Definition brlapi.h:1310
#define BRLAPI_ERROR_DRIVERERROR
Definition brlapi.h:1318
#define BRLAPI_ERROR_AUTHENTICATION
Definition brlapi.h:1320
#define BRLAPI_ERROR_LIBCERR
Definition brlapi.h:1308
#define BRLAPI_ERROR_GAIERR
Definition brlapi.h:1306
#define BRLAPI_ERROR_OPNOTSUPP
Definition brlapi.h:1304
#define BRLAPI_ERROR_ILLEGAL_INSTRUCTION
Definition brlapi.h:1296
#define BRLAPI_ERROR_EMPTYKEY
Definition brlapi.h:1316
#define BRLAPI_ERROR_SUCCESS
Definition brlapi.h:1286
#define BRLAPI_STDCALL
Definition brlapi.h:68
#define BRLAPI_ERROR_INVALID_PACKET
Definition brlapi.h:1300
#define BRLAPI_ERROR_READONLY_PARAMETER
Definition brlapi.h:1322
#define BRLAPI_ERROR_NOMEM
Definition brlapi.h:1288
#define BRLAPI_ERROR_EOF
Definition brlapi.h:1314
#define BRLAPI_ERROR_CONNREFUSED
Definition brlapi.h:1302
#define BRLAPI_ERROR_PROTOCOL_VERSION
Definition brlapi.h:1312
#define BRLAPI_ERROR_UNKNOWN_INSTRUCTION
Definition brlapi.h:1294
uint64_t brlapi_param_subparam_t
Definition brlapi_param.h:112
void BRLAPI_STDCALL brlapi_setClientData(void *data)
void *BRLAPI_STDCALL brlapi__getClientData(brlapi_handle_t *handle)
void *BRLAPI_STDCALL brlapi_getClientData(void)
void BRLAPI_STDCALL brlapi__setClientData(brlapi_handle_t *handle, void *data)
int brlapi_fileDescriptor
Definition brlapi.h:171
brlapi_fileDescriptor BRLAPI_STDCALL brlapi__getFileDescriptor(brlapi_handle_t *handle)
void BRLAPI_STDCALL brlapi_closeConnection(void)
void BRLAPI_STDCALL brlapi__closeConnection(brlapi_handle_t *handle)
brlapi_fileDescriptor BRLAPI_STDCALL brlapi__openConnection(brlapi_handle_t *handle, const brlapi_connectionSettings_t *desiredSettings, brlapi_connectionSettings_t *actualSettings)
brlapi_fileDescriptor BRLAPI_STDCALL brlapi_openConnection(const brlapi_connectionSettings_t *desiredSettings, brlapi_connectionSettings_t *actualSettings)
brlapi_fileDescriptor BRLAPI_STDCALL brlapi_getFileDescriptor(void)
int BRLAPI_STDCALL brlapi_resumeDriver(void)
int BRLAPI_STDCALL brlapi__leaveRawMode(brlapi_handle_t *handle)
int BRLAPI_STDCALL brlapi__resumeDriver(brlapi_handle_t *handle)
ssize_t BRLAPI_STDCALL brlapi__sendRaw(brlapi_handle_t *handle, const void *buffer, size_t size)
int BRLAPI_STDCALL brlapi__enterRawMode(brlapi_handle_t *handle, const char *driver)
int BRLAPI_STDCALL brlapi__suspendDriver(brlapi_handle_t *handle, const char *driver)
int BRLAPI_STDCALL brlapi_leaveRawMode(void)
ssize_t BRLAPI_STDCALL brlapi_sendRaw(const void *buffer, size_t size)
ssize_t BRLAPI_STDCALL brlapi__recvRaw(brlapi_handle_t *handle, void *buffer, size_t size)
int BRLAPI_STDCALL brlapi_enterRawMode(const char *driver)
int BRLAPI_STDCALL brlapi_suspendDriver(const char *driver)
ssize_t BRLAPI_STDCALL brlapi_recvRaw(void *buffer, size_t size)
void(BRLAPI_STDCALL * brlapi_exceptionHandler_t)(int error, brlapi_packetType_t type, const void *packet, size_t size)
Definition brlapi.h:1444
int BRLAPI_STDCALL brlapi_strexception(char *buffer, size_t bufferSize, int error, brlapi_packetType_t type, const void *packet, size_t packetSize)
void BRLAPI_STDCALL brlapi__defaultExceptionHandler(brlapi_handle_t *handle, int error, brlapi_packetType_t type, const void *packet, size_t size)
void BRLAPI_STDCALL brlapi_defaultExceptionHandler(int error, brlapi_packetType_t type, const void *packet, size_t size)
size_t BRLAPI_STDCALL brlapi_strerror_r(const brlapi_error_t *error, char *buf, size_t buflen)
#define brlapi_errno
Definition brlapi.h:1384
const char * brlapi_errlist[]
const char *BRLAPI_STDCALL brlapi_getPacketTypeName(brlapi_packetType_t type)
const int brlapi_nerr
#define brlapi_errfun
Definition brlapi.h:1390
#define brlapi_error
Definition brlapi.h:1382
void BRLAPI_STDCALL brlapi_perror(const char *s)
brlapi_error
Definition brlapi.h:1284
#define brlapi_gaierrno
Definition brlapi.h:1388
int BRLAPI_STDCALL brlapi__strexception(brlapi_handle_t *handle, char *buffer, size_t bufferSize, int error, brlapi_packetType_t type, const void *packet, size_t packetSize)
#define brlapi_libcerrno
Definition brlapi.h:1386
brlapi_exceptionHandler_t BRLAPI_STDCALL brlapi_setExceptionHandler(brlapi_exceptionHandler_t handler)
brlapi__exceptionHandler_t BRLAPI_STDCALL brlapi__setExceptionHandler(brlapi_handle_t *handle, brlapi__exceptionHandler_t handler)
const char *BRLAPI_STDCALL brlapi_strerror(const brlapi_error_t *error)
uint32_t brlapi_packetType_t
Definition brlapi.h:1422
brlapi_error_t *BRLAPI_STDCALL brlapi_error_location(void)
void(BRLAPI_STDCALL * brlapi__exceptionHandler_t)(brlapi_handle_t *handle, int error, brlapi_packetType_t type, const void *packet, size_t size)
Definition brlapi.h:1446
struct brlapi_handle_t brlapi_handle_t
Definition brlapi.h:112
size_t BRLAPI_STDCALL brlapi_getHandleSize(void)
int BRLAPI_STDCALL brlapi__getModelIdentifier(brlapi_handle_t *handle, char *buffer, size_t size)
int BRLAPI_STDCALL brlapi__getDriverName(brlapi_handle_t *handle, char *buffer, size_t size)
int BRLAPI_STDCALL brlapi_getDriverName(char *buffer, size_t size)
int BRLAPI_STDCALL brlapi_getDisplaySize(unsigned int *x, unsigned int *y)
int BRLAPI_STDCALL brlapi__getDisplaySize(brlapi_handle_t *handle, unsigned int *x, unsigned int *y)
int BRLAPI_STDCALL brlapi_getModelIdentifier(char *buffer, size_t size)
uint64_t brlapi_keyCode_t
Definition brlapi_keycodes.h:109
#define BRLAPI_KEY_FLAGS_SHIFT
Definition brlapi_keycodes.h:130
brlapi_rangeType_t
Definition brlapi.h:865
int BRLAPI_STDCALL brlapi__acceptKeys(brlapi_handle_t *handle, brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count)
int BRLAPI_STDCALL brlapi_acceptKeys(brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count)
#define brlapi__ignoreAllKeys(handle)
Definition brlapi.h:920
int BRLAPI_STDCALL brlapi_describeKeyCode(brlapi_keyCode_t code, brlapi_describedKeyCode_t *description)
int BRLAPI_STDCALL brlapi_readKey(int wait, brlapi_keyCode_t *code)
#define brlapi__acceptAllKeys(handle)
Definition brlapi.h:938
int BRLAPI_STDCALL brlapi__ignoreKeyRanges(brlapi_handle_t *handle, const brlapi_range_t ranges[], unsigned int count)
int BRLAPI_STDCALL brlapi_ignoreKeys(brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count)
int BRLAPI_STDCALL brlapi__acceptKeyRanges(brlapi_handle_t *handle, const brlapi_range_t ranges[], unsigned int count)
int BRLAPI_STDCALL brlapi__readKey(brlapi_handle_t *handle, int wait, brlapi_keyCode_t *code)
int BRLAPI_STDCALL brlapi__ignoreKeys(brlapi_handle_t *handle, brlapi_rangeType_t type, const brlapi_keyCode_t keys[], unsigned int count)
int BRLAPI_STDCALL brlapi_acceptKeyRanges(const brlapi_range_t ranges[], unsigned int count)
#define brlapi_ignoreAllKeys()
Definition brlapi.h:917
int BRLAPI_STDCALL brlapi_readKeyWithTimeout(int timeout_ms, brlapi_keyCode_t *code)
int BRLAPI_STDCALL brlapi__readKeyWithTimeout(brlapi_handle_t *handle, int timeout_ms, brlapi_keyCode_t *code)
#define brlapi_acceptAllKeys()
Definition brlapi.h:935
int BRLAPI_STDCALL brlapi_ignoreKeyRanges(const brlapi_range_t ranges[], unsigned int count)
int BRLAPI_STDCALL brlapi_expandKeyCode(brlapi_keyCode_t code, brlapi_expandedKeyCode_t *expansion)
@ brlapi_rangeType_all
Definition brlapi.h:866
@ brlapi_rangeType_key
Definition brlapi.h:869
@ brlapi_rangeType_command
Definition brlapi.h:868
@ brlapi_rangeType_type
Definition brlapi.h:867
@ brlapi_rangeType_code
Definition brlapi.h:870
int BRLAPI_STDCALL brlapi__pause(brlapi_handle_t *handle, int timeout_ms)
int BRLAPI_STDCALL brlapi_pause(int timeout_ms)
int BRLAPI_STDCALL brlapi_sync(void)
int BRLAPI_STDCALL brlapi__sync(brlapi_handle_t *handle)
void * brlapi_paramCallbackDescriptor_t
Definition brlapi.h:1184
brlapi_paramCallbackDescriptor_t BRLAPI_STDCALL brlapi_watchParameter(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, brlapi_paramCallback_t func, void *priv, void *data, size_t len)
void *BRLAPI_STDCALL brlapi_getParameterAlloc(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, size_t *len)
int BRLAPI_STDCALL brlapi_setParameter(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, const void *data, size_t len)
uint32_t brlapi_param_flags_t
Definition brlapi.h:1097
brlapi_param_t
Definition brlapi_param.h:36
ssize_t BRLAPI_STDCALL brlapi_getParameter(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void *data, size_t len)
brlapi_paramCallbackDescriptor_t BRLAPI_STDCALL brlapi__watchParameter(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, brlapi_paramCallback_t func, void *priv, void *data, size_t len)
int BRLAPI_STDCALL brlapi__setParameter(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, const void *data, size_t len)
void *BRLAPI_STDCALL brlapi__getParameterAlloc(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, size_t *len)
int BRLAPI_STDCALL brlapi_unwatchParameter(brlapi_paramCallbackDescriptor_t descriptor)
void(* brlapi_paramCallback_t)(brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void *priv, const void *data, size_t len)
Definition brlapi.h:1177
int BRLAPI_STDCALL brlapi__unwatchParameter(brlapi_handle_t *handle, brlapi_paramCallbackDescriptor_t descriptor)
ssize_t BRLAPI_STDCALL brlapi__getParameter(brlapi_handle_t *handle, brlapi_param_t parameter, brlapi_param_subparam_t subparam, brlapi_param_flags_t flags, void *data, size_t len)
int BRLAPI_STDCALL brlapi_enterTtyModeWithPath(const int *ttys, int count, const char *driver)
int BRLAPI_STDCALL brlapi_setFocus(int tty)
int BRLAPI_STDCALL brlapi_leaveTtyMode(void)
int BRLAPI_STDCALL brlapi_enterTtyMode(int tty, const char *driver)
int BRLAPI_STDCALL brlapi__enterTtyMode(brlapi_handle_t *handle, int tty, const char *driver)
int BRLAPI_STDCALL brlapi__leaveTtyMode(brlapi_handle_t *handle)
int BRLAPI_STDCALL brlapi__setFocus(brlapi_handle_t *handle, int tty)
int BRLAPI_STDCALL brlapi__enterTtyModeWithPath(brlapi_handle_t *handle, const int *ttys, int count, const char *driver)
void brlapi_getLibraryVersion(int *major, int *minor, int *revision)
int BRLAPI_STDCALL brlapi__writeWText(brlapi_handle_t *handle, int cursor, const wchar_t *text)
int BRLAPI_STDCALL brlapi_write(const brlapi_writeArguments_t *arguments)
int BRLAPI_STDCALL brlapi__writeText(brlapi_handle_t *handle, int cursor, const char *text)
int BRLAPI_STDCALL brlapi_writeWText(int cursor, const wchar_t *text)
int BRLAPI_STDCALL brlapi__writeDots(brlapi_handle_t *handle, const unsigned char *dots)
int BRLAPI_STDCALL brlapi_writeText(int cursor, const char *text)
int BRLAPI_STDCALL brlapi_writeDots(const unsigned char *dots)
int BRLAPI_STDCALL brlapi__write(brlapi_handle_t *handle, const brlapi_writeArguments_t *arguments)
Settings structure for BrlAPI connection.
Definition brlapi.h:214
const char * host
Definition brlapi.h:232
const char * auth
Definition brlapi.h:222
Definition brlapi.h:742
Definition brlapi.h:1345
int gaierrno
Definition brlapi.h:1348
enum brlapi_error brlerrno
Definition brlapi.h:1346
const char * errfun
Definition brlapi.h:1349
int libcerrno
Definition brlapi.h:1347
Definition brlapi.h:723
Definition brlapi.h:944
brlapi_keyCode_t last
Definition brlapi.h:946
brlapi_keyCode_t first
Definition brlapi.h:945
Definition brlapi.h:611
Definition brlapi.h:1538
int displayNumber
Definition brlapi.h:1539
int cursor
Definition brlapi.h:1546
unsigned int regionBegin
Definition brlapi.h:1540
unsigned int regionSize
Definition brlapi.h:1541
const char * text
Definition brlapi.h:1542
const unsigned char * attrOr
Definition brlapi.h:1545
const char * charset
Definition brlapi.h:1547
const unsigned char * attrAnd
Definition brlapi.h:1544
int textSize
Definition brlapi.h:1543