|
libiio
0.16
Library for interfacing with IIO devices
|
Data Structures | |
| struct | iio_device |
| Represents a device in the IIO context. More... | |
Functions | |
| __api __pure const struct iio_context * | iio_device_get_context (const struct iio_device *dev) |
| Retrieve a pointer to the iio_context structure. More... | |
| __api __pure const char * | iio_device_get_id (const struct iio_device *dev) |
| Retrieve the device ID (e.g. iio:device0) More... | |
| __api __pure const char * | iio_device_get_name (const struct iio_device *dev) |
| Retrieve the device name (e.g. xadc) More... | |
| __api __pure unsigned int | iio_device_get_channels_count (const struct iio_device *dev) |
| Enumerate the channels of the given device. More... | |
| __api __pure unsigned int | iio_device_get_attrs_count (const struct iio_device *dev) |
| Enumerate the device-specific attributes of the given device. More... | |
| __api __pure unsigned int | iio_device_get_buffer_attrs_count (const struct iio_device *dev) |
| Enumerate the buffer-specific attributes of the given device. More... | |
| __api __pure struct iio_channel * | iio_device_get_channel (const struct iio_device *dev, unsigned int index) |
| Get the channel present at the given index. More... | |
| __api __pure const char * | iio_device_get_attr (const struct iio_device *dev, unsigned int index) |
| Get the device-specific attribute present at the given index. More... | |
| __api __pure const char * | iio_device_get_buffer_attr (const struct iio_device *dev, unsigned int index) |
| Get the buffer-specific attribute present at the given index. More... | |
| __api __pure struct iio_channel * | iio_device_find_channel (const struct iio_device *dev, const char *name, bool output) |
| Try to find a channel structure by its name of ID. More... | |
| __api __pure const char * | iio_device_find_attr (const struct iio_device *dev, const char *name) |
| Try to find a device-specific attribute by its name. More... | |
| __api __pure const char * | iio_device_find_buffer_attr (const struct iio_device *dev, const char *name) |
| Try to find a buffer-specific attribute by its name. More... | |
| __api ssize_t | iio_device_attr_read (const struct iio_device *dev, const char *attr, char *dst, size_t len) |
| Read the content of the given device-specific attribute. More... | |
| __api int | iio_device_attr_read_all (struct iio_device *dev, int(*cb)(struct iio_device *dev, const char *attr, const char *value, size_t len, void *d), void *data) |
| Read the content of all device-specific attributes. More... | |
| __api int | iio_device_attr_read_bool (const struct iio_device *dev, const char *attr, bool *val) |
| Read the content of the given device-specific attribute. More... | |
| __api int | iio_device_attr_read_longlong (const struct iio_device *dev, const char *attr, long long *val) |
| Read the content of the given device-specific attribute. More... | |
| __api int | iio_device_attr_read_double (const struct iio_device *dev, const char *attr, double *val) |
| Read the content of the given device-specific attribute. More... | |
| __api ssize_t | iio_device_attr_write (const struct iio_device *dev, const char *attr, const char *src) |
| Set the value of the given device-specific attribute. More... | |
| __api ssize_t | iio_device_attr_write_raw (const struct iio_device *dev, const char *attr, const void *src, size_t len) |
| Set the value of the given device-specific attribute. More... | |
| __api int | iio_device_attr_write_all (struct iio_device *dev, ssize_t(*cb)(struct iio_device *dev, const char *attr, void *buf, size_t len, void *d), void *data) |
| Set the values of all device-specific attributes. More... | |
| __api int | iio_device_attr_write_bool (const struct iio_device *dev, const char *attr, bool val) |
| Set the value of the given device-specific attribute. More... | |
| __api int | iio_device_attr_write_longlong (const struct iio_device *dev, const char *attr, long long val) |
| Set the value of the given device-specific attribute. More... | |
| __api int | iio_device_attr_write_double (const struct iio_device *dev, const char *attr, double val) |
| Set the value of the given device-specific attribute. More... | |
| __api ssize_t | iio_device_buffer_attr_read (const struct iio_device *dev, const char *attr, char *dst, size_t len) |
| Read the content of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_read_all (struct iio_device *dev, int(*cb)(struct iio_device *dev, const char *attr, const char *value, size_t len, void *d), void *data) |
| Read the content of all buffer-specific attributes. More... | |
| __api int | iio_device_buffer_attr_read_bool (const struct iio_device *dev, const char *attr, bool *val) |
| Read the content of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_read_longlong (const struct iio_device *dev, const char *attr, long long *val) |
| Read the content of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_read_double (const struct iio_device *dev, const char *attr, double *val) |
| Read the content of the given buffer-specific attribute. More... | |
| __api ssize_t | iio_device_buffer_attr_write (const struct iio_device *dev, const char *attr, const char *src) |
| Set the value of the given buffer-specific attribute. More... | |
| __api ssize_t | iio_device_buffer_attr_write_raw (const struct iio_device *dev, const char *attr, const void *src, size_t len) |
| Set the value of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_write_all (struct iio_device *dev, ssize_t(*cb)(struct iio_device *dev, const char *attr, void *buf, size_t len, void *d), void *data) |
| Set the values of all buffer-specific attributes. More... | |
| __api int | iio_device_buffer_attr_write_bool (const struct iio_device *dev, const char *attr, bool val) |
| Set the value of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_write_longlong (const struct iio_device *dev, const char *attr, long long val) |
| Set the value of the given buffer-specific attribute. More... | |
| __api int | iio_device_buffer_attr_write_double (const struct iio_device *dev, const char *attr, double val) |
| Set the value of the given buffer-specific attribute. More... | |
| __api void | iio_device_set_data (struct iio_device *dev, void *data) |
| Associate a pointer to an iio_device structure. More... | |
| __api void * | iio_device_get_data (const struct iio_device *dev) |
| Retrieve a previously associated pointer of an iio_device structure. More... | |
| __api int | iio_device_get_trigger (const struct iio_device *dev, const struct iio_device **trigger) |
| Retrieve the trigger of a given device. More... | |
| __api int | iio_device_set_trigger (const struct iio_device *dev, const struct iio_device *trigger) |
| Associate a trigger to a given device. More... | |
| __api __pure bool | iio_device_is_trigger (const struct iio_device *dev) |
| Return True if the given device is a trigger. More... | |
| __api int | iio_device_set_kernel_buffers_count (const struct iio_device *dev, unsigned int nb_buffers) |
| Configure the number of kernel buffers for a device. More... | |
| __api ssize_t iio_device_attr_read | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| char * | dst, | ||
| size_t | len | ||
| ) |
Read the content of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| dst | A pointer to the memory area where the NULL-terminated string corresponding to the value read will be stored |
| len | The available length of the memory area, in bytes |
NOTE:By passing NULL as the "attr" argument to iio_device_attr_read, it is now possible to read all of the attributes of a device.
The buffer is filled with one block of data per attribute of the device, by the order they appear in the iio_device structure.
The first four bytes of one block correspond to a 32-bit signed value in network order. If negative, it corresponds to the errno code that were returned when reading the attribute; if positive, it corresponds to the length of the data read. In that case, the rest of the block contains the data.

| __api int iio_device_attr_read_all | ( | struct iio_device * | dev, |
| int(*)(struct iio_device *dev, const char *attr, const char *value, size_t len, void *d) | cb, | ||
| void * | data | ||
| ) |
Read the content of all device-specific attributes.
| dev | A pointer to an iio_device structure |
| cb | A pointer to a callback function |
| data | A pointer that will be passed to the callback function |
NOTE: This function is especially useful when used with the network backend, as all the device-specific attributes are read in one single command.

| __api int iio_device_attr_read_bool | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| bool * | val | ||
| ) |
Read the content of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a bool variable where the value should be stored |

| __api int iio_device_attr_read_double | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| double * | val | ||
| ) |
Read the content of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a double variable where the value should be stored |

| __api int iio_device_attr_read_longlong | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| long long * | val | ||
| ) |
Read the content of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a long long variable where the value should be stored |


| __api ssize_t iio_device_attr_write | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| const char * | src | ||
| ) |
Set the value of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| src | A NULL-terminated string to set the attribute to |
NOTE:By passing NULL as the "attr" argument to iio_device_attr_write, it is now possible to write all of the attributes of a device.
The buffer must contain one block of data per attribute of the device, by the order they appear in the iio_device structure.
The first four bytes of one block correspond to a 32-bit signed value in network order. If negative, the attribute is not written; if positive, it corresponds to the length of the data to write. In that case, the rest of the block must contain the data.


| __api int iio_device_attr_write_all | ( | struct iio_device * | dev, |
| ssize_t(*)(struct iio_device *dev, const char *attr, void *buf, size_t len, void *d) | cb, | ||
| void * | data | ||
| ) |
Set the values of all device-specific attributes.
| dev | A pointer to an iio_device structure |
| cb | A pointer to a callback function |
| data | A pointer that will be passed to the callback function |
NOTE: This function is especially useful when used with the network backend, as all the device-specific attributes are written in one single command.
| __api int iio_device_attr_write_bool | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| bool | val | ||
| ) |
Set the value of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A bool value to set the attribute to |

| __api int iio_device_attr_write_double | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| double | val | ||
| ) |
Set the value of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A double value to set the attribute to |

| __api int iio_device_attr_write_longlong | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| long long | val | ||
| ) |
Set the value of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A long long value to set the attribute to |

| __api ssize_t iio_device_attr_write_raw | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| const void * | src, | ||
| size_t | len | ||
| ) |
Set the value of the given device-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| src | A pointer to the data to be written |
| len | The number of bytes that should be written |

| __api ssize_t iio_device_buffer_attr_read | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| char * | dst, | ||
| size_t | len | ||
| ) |
Read the content of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| dst | A pointer to the memory area where the NULL-terminated string corresponding to the value read will be stored |
| len | The available length of the memory area, in bytes |
NOTE:By passing NULL as the "attr" argument to iio_device_buffer_attr_read, it is now possible to read all of the attributes of a device.
The buffer is filled with one block of data per attribute of the buffer, by the order they appear in the iio_device structure.
The first four bytes of one block correspond to a 32-bit signed value in network order. If negative, it corresponds to the errno code that were returned when reading the attribute; if positive, it corresponds to the length of the data read. In that case, the rest of the block contains the data.

| __api int iio_device_buffer_attr_read_all | ( | struct iio_device * | dev, |
| int(*)(struct iio_device *dev, const char *attr, const char *value, size_t len, void *d) | cb, | ||
| void * | data | ||
| ) |
Read the content of all buffer-specific attributes.
| dev | A pointer to an iio_device structure |
| cb | A pointer to a callback function |
| data | A pointer that will be passed to the callback function |
NOTE: This function is especially useful when used with the network backend, as all the buffer-specific attributes are read in one single command.

| __api int iio_device_buffer_attr_read_bool | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| bool * | val | ||
| ) |
Read the content of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a bool variable where the value should be stored |

| __api int iio_device_buffer_attr_read_double | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| double * | val | ||
| ) |
Read the content of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a double variable where the value should be stored |

| __api int iio_device_buffer_attr_read_longlong | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| long long * | val | ||
| ) |
Read the content of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A pointer to a long long variable where the value should be stored |


| __api ssize_t iio_device_buffer_attr_write | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| const char * | src | ||
| ) |
Set the value of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| src | A NULL-terminated string to set the attribute to |
NOTE:By passing NULL as the "attr" argument to iio_device_buffer_attr_write, it is now possible to write all of the attributes of a device.
The buffer must contain one block of data per attribute of the buffer, by the order they appear in the iio_device structure.
The first four bytes of one block correspond to a 32-bit signed value in network order. If negative, the attribute is not written; if positive, it corresponds to the length of the data to write. In that case, the rest of the block must contain the data.


| __api int iio_device_buffer_attr_write_all | ( | struct iio_device * | dev, |
| ssize_t(*)(struct iio_device *dev, const char *attr, void *buf, size_t len, void *d) | cb, | ||
| void * | data | ||
| ) |
Set the values of all buffer-specific attributes.
| dev | A pointer to an iio_device structure |
| cb | A pointer to a callback function |
| data | A pointer that will be passed to the callback function |
NOTE: This function is especially useful when used with the network backend, as all the buffer-specific attributes are written in one single command.
| __api int iio_device_buffer_attr_write_bool | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| bool | val | ||
| ) |
Set the value of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A bool value to set the attribute to |

| __api int iio_device_buffer_attr_write_double | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| double | val | ||
| ) |
Set the value of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A double value to set the attribute to |

| __api int iio_device_buffer_attr_write_longlong | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| long long | val | ||
| ) |
Set the value of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| val | A long long value to set the attribute to |

| __api ssize_t iio_device_buffer_attr_write_raw | ( | const struct iio_device * | dev, |
| const char * | attr, | ||
| const void * | src, | ||
| size_t | len | ||
| ) |
Set the value of the given buffer-specific attribute.
| dev | A pointer to an iio_device structure |
| attr | A NULL-terminated string corresponding to the name of the attribute |
| src | A pointer to the data to be written |
| len | The number of bytes that should be written |

| __api __pure const char* iio_device_find_attr | ( | const struct iio_device * | dev, |
| const char * | name | ||
| ) |
Try to find a device-specific attribute by its name.
| dev | A pointer to an iio_device structure |
| name | A NULL-terminated string corresponding to the name of the attribute |
NOTE: This function is useful to detect the presence of an attribute. It can also be used to retrieve the name of an attribute as a pointer to a static string from a dynamically allocated string.
| __api __pure const char* iio_device_find_buffer_attr | ( | const struct iio_device * | dev, |
| const char * | name | ||
| ) |
Try to find a buffer-specific attribute by its name.
| dev | A pointer to an iio_device structure |
| name | A NULL-terminated string corresponding to the name of the attribute |
NOTE: This function is useful to detect the presence of an attribute. It can also be used to retrieve the name of an attribute as a pointer to a static string from a dynamically allocated string.
| __api __pure struct iio_channel* iio_device_find_channel | ( | const struct iio_device * | dev, |
| const char * | name, | ||
| bool | output | ||
| ) |
Try to find a channel structure by its name of ID.
| dev | A pointer to an iio_device structure |
| name | A NULL-terminated string corresponding to the name or the ID of the channel to search for |
| output | True if the searched channel is output, False otherwise |

| __api __pure const char* iio_device_get_attr | ( | const struct iio_device * | dev, |
| unsigned int | index | ||
| ) |
Get the device-specific attribute present at the given index.
| dev | A pointer to an iio_device structure |
| index | The index corresponding to the attribute |

| __api __pure unsigned int iio_device_get_attrs_count | ( | const struct iio_device * | dev | ) |
Enumerate the device-specific attributes of the given device.
| dev | A pointer to an iio_device structure |

| __api __pure const char* iio_device_get_buffer_attr | ( | const struct iio_device * | dev, |
| unsigned int | index | ||
| ) |
Get the buffer-specific attribute present at the given index.
| dev | A pointer to an iio_device structure |
| index | The index corresponding to the attribute |

| __api __pure unsigned int iio_device_get_buffer_attrs_count | ( | const struct iio_device * | dev | ) |
Enumerate the buffer-specific attributes of the given device.
| dev | A pointer to an iio_device structure |

| __api __pure struct iio_channel* iio_device_get_channel | ( | const struct iio_device * | dev, |
| unsigned int | index | ||
| ) |
Get the channel present at the given index.
| dev | A pointer to an iio_device structure |
| index | The index corresponding to the channel |
| __api __pure unsigned int iio_device_get_channels_count | ( | const struct iio_device * | dev | ) |
Enumerate the channels of the given device.
| dev | A pointer to an iio_device structure |

| __api __pure const struct iio_context* iio_device_get_context | ( | const struct iio_device * | dev | ) |
Retrieve a pointer to the iio_context structure.
| dev | A pointer to an iio_device structure |
| __api void* iio_device_get_data | ( | const struct iio_device * | dev | ) |
Retrieve a previously associated pointer of an iio_device structure.
| dev | A pointer to an iio_device structure |
| __api __pure const char* iio_device_get_id | ( | const struct iio_device * | dev | ) |
Retrieve the device ID (e.g. iio:device0)
| dev | A pointer to an iio_device structure |

| __api __pure const char* iio_device_get_name | ( | const struct iio_device * | dev | ) |
Retrieve the device name (e.g. xadc)
| dev | A pointer to an iio_device structure |
NOTE: if the device has no name, NULL is returned.

| __api int iio_device_get_trigger | ( | const struct iio_device * | dev, |
| const struct iio_device ** | trigger | ||
| ) |
Retrieve the trigger of a given device.
| dev | A pointer to an iio_device structure |
| trigger | a pointer to a pointer of an iio_device structure. The pointed pointer will be set to the address of the iio_device structure corresponding to the associated trigger device. |
| __api __pure bool iio_device_is_trigger | ( | const struct iio_device * | dev | ) |
Return True if the given device is a trigger.
| dev | A pointer to an iio_device structure |


| __api void iio_device_set_data | ( | struct iio_device * | dev, |
| void * | data | ||
| ) |
Associate a pointer to an iio_device structure.
| dev | A pointer to an iio_device structure |
| data | The pointer to be associated |
| __api int iio_device_set_kernel_buffers_count | ( | const struct iio_device * | dev, |
| unsigned int | nb_buffers | ||
| ) |
Configure the number of kernel buffers for a device.
This function allows to change the number of buffers on kernel side.
| dev | A pointer to an iio_device structure |
| nb_buffers | The number of buffers |
| __api int iio_device_set_trigger | ( | const struct iio_device * | dev, |
| const struct iio_device * | trigger | ||
| ) |
Associate a trigger to a given device.
| dev | A pointer to an iio_device structure |
| trigger | a pointer to the iio_device structure corresponding to the trigger that should be associated. |

1.8.13