Loading...
Searching...
No Matches
driver Struct Reference
User-space driver API

The data the driver exports i. More...

`#include <driver.h>`

## Public Attributes

const char * | device
| Name of the device (string).
int | fd
| Set by the driver after init().
uint32_t | features
| Code for the features of the present device, valid after init().
uint32_t | send_mode
| Possible values are: LIRC_MODE_RAW, LIRC_MODE_PULSE, LIRC_MODE_MODE2, LIRC_MODE_LIRCCODE.
uint32_t | rec_mode
| Possible values are: LIRC_MODE_RAW, LIRC_MODE_PULSE, LIRC_MODE_MODE2, LIRC_MODE_LIRCCODE.
const uint32_t | code_length
| Length in bits of the code.
int(*const | open_func )(const char *device)
| Function called to do basic driver setup.
int(*const | init_func )(void)
| Function called for initializing the driver and the hardware.
int(*const | deinit_func )(void)
| Function called when transmitting/receiving stops.
int(*const | send_func )(struct ir_remote *remote, struct ir_ncode *code)
| Send data to the remote.
char *(*const | rec_func )(struct ir_remote *remotes)
| Receive data from remote.
int(*const | decode_func )(struct ir_remote *remote, struct decode_ctx_t *ctx)
| TODO.
int(*const | drvctl_func )(unsigned int cmd, void *arg)
| Generic driver control function with semantics as defined by driver Returns 0 on success, else a positive error code.
lirc_t(*const | readdata )(lirc_t timeout)
| Get length of next pulse/space from hardware.
const char * | name
| Driver name, as listed by -H help and used as argument to i –driver.
unsigned int | resolution
| The resolution in microseconds of the recorded durations when reading signals.
const int | api_version
| API version (from version 2+).
const char * | driver_version
| Driver version (free text).
const char * | info
| Free text driver info.
int(*const | close_func )(void)
| Hard closing, returns 0 on OK.
const char *const | device_hint
| device_hint is a mean for config tools to autodetect devices.

## Detailed Description

The data the driver exports i.

e., lirc accesses the driver as defined here.

Definition at line 132 of file driver.h.

## Member Data Documentation

## api_version

const int driver::api_version

API version (from version 2+).

Definition at line 234 of file driver.h.

## close_func

int(*const driver::close_func) (void)

Hard closing, returns 0 on OK.

Definition at line 238 of file driver.h.

## code_length

const uint32_t driver::code_length

Length in bits of the code.

Definition at line 160 of file driver.h.

## decode_func

int(*const driver::decode_func) (struct ir_remote *remote, struct decode_ctx_t *ctx)

TODO.

Definition at line 202 of file driver.h.

## deinit_func

int(*const driver::deinit_func) (void)

Function called when transmitting/receiving stops.

Zero return value indicates failure, all other return values success.

Definition at line 180 of file driver.h.

## device

const char* driver::device

Name of the device (string).

Set by open_func() before init(), possibly using the hard-coded driver default value.

Definition at line 139 of file driver.h.

## device_hint

const char* const driver::device_hint

device_hint is a mean for config tools to autodetect devices.

- /dev/tty* User selects a tty.
- drvctl Driver supports DRVCTL_GET_DEVICES drvctl.
- auto No device configured, a message is displayed.
- /dev/foo* A wildcard listing possible devices, general fallback.

The following hints are not longer supported:

- /dev/event* A devinput device
- /dev/usb/* A serial, USB-connected port.
- /bin/sh ... Shell command listing possible devices.
- None No device is silently configured.

Definition at line 255 of file driver.h.

## driver_version

const char* driver::driver_version

Driver version (free text).

Definition at line 235 of file driver.h.

## drvctl_func

int(*const driver::drvctl_func) (unsigned int cmd, void *arg)

Generic driver control function with semantics as defined by driver Returns 0 on success, else a positive error code.

Definition at line 209 of file driver.h.

## fd

int driver::fd

Set by the driver after init().

Definition at line 142 of file driver.h.

## features

uint32_t driver::features

Code for the features of the present device, valid after init().

Definition at line 145 of file driver.h.

## info

const char* driver::info

Free text driver info.

Definition at line 236 of file driver.h.

## init_func

int(*const driver::init_func) (void)

Function called for initializing the driver and the hardware.

Zero return value indicates failure, all other return values success.

Definition at line 174 of file driver.h.

## name

const char* driver::name

Driver name, as listed by -H help and used as argument to i –driver.

Definition at line 224 of file driver.h.

## open_func

int(*const driver::open_func) (const char *device)

Function called to do basic driver setup.

Parameters

  device | String describing what device driver should communicate with. Often (but not always) a /dev/... path.

Returns
  0 if everything is fine, else positive error code.

Definition at line 168 of file driver.h.

## readdata

lirc_t(*const driver::readdata) (lirc_t timeout)

Get length of next pulse/space from hardware.

Parameters

  timeout | Max time to wait (us).

Returns
  Length of pulse in lower 24 bits (us). PULSE_BIT is set to reflect if this is a pulse or space. 0 indicates errors.

Definition at line 218 of file driver.h.

## rec_func

char *(*const driver::rec_func) (struct ir_remote *remotes)

Receive data from remote.

Might close device on error conditions.

Parameters

  The | remote to read from.

Returns
  Formatted, statically allocated string with decoded data: "remote-name code-name code repetitions"

Definition at line 197 of file driver.h.

## rec_mode

uint32_t driver::rec_mode

Possible values are: LIRC_MODE_RAW, LIRC_MODE_PULSE, LIRC_MODE_MODE2, LIRC_MODE_LIRCCODE.

These can be combined using bitwise or.

Definition at line 157 of file driver.h.

## resolution

unsigned int driver::resolution

The resolution in microseconds of the recorded durations when reading signals.

Definition at line 230 of file driver.h.

## send_func

int(*const driver::send_func) (struct ir_remote *remote, struct ir_ncode *code)

Send data to the remote.

Parameters

  remote | The remote used to send.
  code | Code(s) to send, a single code or the head of a list of codes.

Definition at line 188 of file driver.h.

## send_mode

uint32_t driver::send_mode

Possible values are: LIRC_MODE_RAW, LIRC_MODE_PULSE, LIRC_MODE_MODE2, LIRC_MODE_LIRCCODE.

These can be combined using bitwise or.

Definition at line 151 of file driver.h.

The documentation for this struct was generated from the following file:

- driver.h