brlapi_driverspecific(3)

NAME
brlapi_driverspecific - Raw and Suspend Modes mechanism.

SYNOPSIS

  Functions
int BRLAPI_STDCALL brlapi_enterRawMode (const char *driver)
int BRLAPI_STDCALL brlapi__enterRawMode (brlapi_handle_t *handle, const char *driver)
int BRLAPI_STDCALL brlapi_leaveRawMode (void)
int BRLAPI_STDCALL brlapi__leaveRawMode (brlapi_handle_t *handle)
ssize_t BRLAPI_STDCALL brlapi_sendRaw (const void *buffer, size_t size)
ssize_t BRLAPI_STDCALL brlapi__sendRaw (brlapi_handle_t *handle, const void *buffer, size_t size)
ssize_t BRLAPI_STDCALL brlapi_recvRaw (void *buffer, size_t size)
ssize_t BRLAPI_STDCALL brlapi__recvRaw (brlapi_handle_t *handle, void *buffer, size_t size)
int BRLAPI_STDCALL brlapi_suspendDriver (const char *driver)
int BRLAPI_STDCALL brlapi__suspendDriver (brlapi_handle_t *handle, const char *driver)
int BRLAPI_STDCALL brlapi_resumeDriver (void)
int BRLAPI_STDCALL brlapi__resumeDriver (brlapi_handle_t *handle)

Detailed Description

If the application wants to directly talk to the braille terminal, it should use Raw Mode. In this special mode, the driver gives the whole control of the terminal to it: brltty doesn't work any more.

For this, it simply has to call brlapi_enterRawMode(), then brlapi_sendRaw() and brlapi_recvRaw(), and finally give control back thanks to brlapi_leaveRawMode().

Special care of the terminal should be taken, since one might completely trash the terminal's data, or even lock it! The application should always check for terminal's type thanks to brlapi_getDriverName().

The client can also make brltty close the driver by using brlapi_suspendDriver(), and resume it again with brlapi_resumeDriver(). This should not be used if possible: raw mode should be sufficient for any use. If not, please ask for features :)

Function Documentation

  int BRLAPI_STDCALL brlapi__enterRawMode (brlapi_handle_t * handle, const char * driver)

  int BRLAPI_STDCALL brlapi__leaveRawMode (brlapi_handle_t * handle)

  ssize_t BRLAPI_STDCALL brlapi__recvRaw (brlapi_handle_t * handle, void * buffer, size_t size)

  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__suspendDriver (brlapi_handle_t * handle, const char * driver)

  int BRLAPI_STDCALL brlapi_enterRawMode (const char * driver)
Switch to Raw mode

Parameters:
    driver Specifies the name of the driver for which the raw communication will be established.

Returns:
    0 on success, -1 on error

  int BRLAPI_STDCALL brlapi_leaveRawMode (void)
Leave Raw mode

Returns:
    0 on success, -1 on error

  ssize_t BRLAPI_STDCALL brlapi_recvRaw (void * buffer, size_t size)
Get Raw data

Parameters:
    buffer points on a buffer where the function will store the received data;
    size holds the buffer size.

Returns:
    its size, -1 on error or signal interruption

  int BRLAPI_STDCALL brlapi_resumeDriver (void)
Resume braille driver

Returns:
    -1 on error

  ssize_t BRLAPI_STDCALL brlapi_sendRaw (const void * buffer, size_t size)
Send Raw data

Parameters:
    buffer points on the data;
    size holds the packet size.

Returns:
    size on success, -1 on error

  int BRLAPI_STDCALL brlapi_suspendDriver (const char * driver)
Suspend braille driver

Parameters:
    driver Specifies the name of the driver which will be suspended.

Returns:
    -1 on error

Author

Generated automatically by Doxygen for BrlAPI from the source code.