Loading...
Searching...
No Matches
iio.h File Reference

Public interface. More...

`#include <limits.h>`
`#include <stdint.h>`
`#include <stdlib.h>`
`#include <stddef.h>`
`#include <sys/types.h>`
`#include <stdbool.h>`
Include dependency graph for iio.h:

Go to the source code of this file.

## Data Structures

struct | iio_data_format
| Contains the format of a data sample. More...

## Enumerations

enum

iio_chan_type {
IIO_VOLTAGE , IIO_CURRENT , IIO_POWER , IIO_ACCEL ,
IIO_ANGL_VEL , IIO_MAGN , IIO_LIGHT , IIO_INTENSITY ,
IIO_PROXIMITY , IIO_TEMP , IIO_INCLI , IIO_ROT ,
IIO_ANGL , IIO_TIMESTAMP , IIO_CAPACITANCE , IIO_ALTVOLTAGE ,
IIO_CCT , IIO_PRESSURE , IIO_HUMIDITYRELATIVE , IIO_ACTIVITY ,
IIO_STEPS , IIO_ENERGY , IIO_DISTANCE , IIO_VELOCITY ,
IIO_CONCENTRATION , IIO_RESISTANCE , IIO_PH , IIO_UVINDEX ,
IIO_ELECTRICALCONDUCTIVITY , IIO_COUNT , IIO_INDEX , IIO_GRAVITY ,
IIO_POSITIONRELATIVE , IIO_PHASE , IIO_MASSCONCENTRATION , IIO_CHAN_TYPE_UNKNOWN = INT_MAX
}

| IIO channel type. More...

enum

iio_modifier {
IIO_NO_MOD , IIO_MOD_X , IIO_MOD_Y , IIO_MOD_Z ,
IIO_MOD_X_AND_Y , IIO_MOD_X_AND_Z , IIO_MOD_Y_AND_Z , IIO_MOD_X_AND_Y_AND_Z ,
IIO_MOD_X_OR_Y , IIO_MOD_X_OR_Z , IIO_MOD_Y_OR_Z , IIO_MOD_X_OR_Y_OR_Z ,
IIO_MOD_LIGHT_BOTH , IIO_MOD_LIGHT_IR , IIO_MOD_ROOT_SUM_SQUARED_X_Y , IIO_MOD_SUM_SQUARED_X_Y_Z ,
IIO_MOD_LIGHT_CLEAR , IIO_MOD_LIGHT_RED , IIO_MOD_LIGHT_GREEN , IIO_MOD_LIGHT_BLUE ,
IIO_MOD_QUATERNION , IIO_MOD_TEMP_AMBIENT , IIO_MOD_TEMP_OBJECT , IIO_MOD_NORTH_MAGN ,
IIO_MOD_NORTH_TRUE , IIO_MOD_NORTH_MAGN_TILT_COMP , IIO_MOD_NORTH_TRUE_TILT_COMP , IIO_MOD_RUNNING ,
IIO_MOD_JOGGING , IIO_MOD_WALKING , IIO_MOD_STILL , IIO_MOD_ROOT_SUM_SQUARED_X_Y_Z ,
IIO_MOD_I , IIO_MOD_Q , IIO_MOD_CO2 , IIO_MOD_VOC ,
IIO_MOD_LIGHT_UV , IIO_MOD_LIGHT_DUV , IIO_MOD_PM1 , IIO_MOD_PM2P5 ,
IIO_MOD_PM4 , IIO_MOD_PM10 , IIO_MOD_ETHANOL , IIO_MOD_H2 ,
IIO_MOD_O2 , IIO_MOD_LINEAR_X , IIO_MOD_LINEAR_Y , IIO_MOD_LINEAR_Z ,
IIO_MOD_PITCH , IIO_MOD_YAW , IIO_MOD_ROLL
}

| IIO channel modifier. More...
enum | iio_event_type { IIO_EV_TYPE_THRESH , IIO_EV_TYPE_MAG , IIO_EV_TYPE_ROC , IIO_EV_TYPE_THRESH_ADAPTIVE , IIO_EV_TYPE_MAG_ADAPTIVE , IIO_EV_TYPE_CHANGE , IIO_EV_TYPE_MAG_REFERENCED , IIO_EV_TYPE_GESTURE }
| IIO event type. More...
enum | iio_event_direction { IIO_EV_DIR_EITHER , IIO_EV_DIR_RISING , IIO_EV_DIR_FALLING , IIO_EV_DIR_NONE , IIO_EV_DIR_SINGLETAP , IIO_EV_DIR_DOUBLETAP }
| IIO event direction. More...
enum | hwmon_chan_type { HWMON_VOLTAGE , HWMON_FAN , HWMON_PWM , HWMON_TEMP , HWMON_CURRENT , HWMON_POWER , HWMON_ENERGY , HWMON_HUMIDITY , HWMON_INTRUSION , HWMON_CHAN_TYPE_UNKNOWN = IIO_CHAN_TYPE_UNKNOWN }
| Hwmon channel type. More...

## Functions

__api __check_ret struct iio_scan_context * | iio_create_scan_context (const char *backend, unsigned int flags)
| Create a scan context.
__api void | iio_scan_context_destroy (struct iio_scan_context *ctx)
| Destroy the given scan context.
__api __check_ret ssize_t | iio_scan_context_get_info_list (struct iio_scan_context *ctx, struct iio_context_info ***info)
| Enumerate available contexts.
__api void | iio_context_info_list_free (struct iio_context_info **info)
| Free a context info list.
__api __check_ret __pure const char * | iio_context_info_get_description (const struct iio_context_info *info)
| Get a description of a discovered context.
__api __check_ret __pure const char * | iio_context_info_get_uri (const struct iio_context_info *info)
| Get the URI of a discovered context.
__api struct iio_scan_block * | iio_create_scan_block (const char *backend, unsigned int flags)
| Create a scan block.
__api void | iio_scan_block_destroy (struct iio_scan_block *blk)
| Destroy the given scan block.
__api ssize_t | iio_scan_block_scan (struct iio_scan_block *blk)
| Enumerate available contexts via scan block.
__api struct iio_context_info * | iio_scan_block_get_info (struct iio_scan_block *blk, unsigned int index)
| Get the iio_context_info for a particular context.
__api void | iio_library_get_version (unsigned int *major, unsigned int *minor, char git_tag[8])
| Get the version of the libiio library.
__api void | iio_strerror (int err, char *dst, size_t len)
| Get a string description of an error code.
__api __check_ret __cnst bool | iio_has_backend (const char *backend)
| Check if the specified backend is available.
__api __check_ret __cnst unsigned int | iio_get_backends_count (void)
| Get the number of available backends.
__api __check_ret __cnst const char * | iio_get_backend (unsigned int index)
| Retrieve the name of a given backend.
__api __check_ret struct iio_context * | iio_create_default_context (void)
| Create a context from local or remote IIO devices.
__api __check_ret struct iio_context * | iio_create_local_context (void)
| Create a context from local IIO devices (Linux only).
__api __check_ret struct iio_context * | iio_create_xml_context (const char *xml_file)
| Create a context from a XML file.
__api __check_ret struct iio_context * | iio_create_xml_context_mem (const char *xml, size_t len)
| Create a context from XML data in memory.
__api __check_ret struct iio_context * | iio_create_network_context (const char *host)
| Create a context from the network.
__api __check_ret struct iio_context * | iio_create_context_from_uri (const char *uri)
| Create a context from a URI description.
__api __check_ret struct iio_context * | iio_context_clone (const struct iio_context *ctx)
| Duplicate a pre-existing IIO context.
__api void | iio_context_destroy (struct iio_context *ctx)
| Destroy the given context.
__api __check_ret int | iio_context_get_version (const struct iio_context *ctx, unsigned int *major, unsigned int *minor, char git_tag[8])
| Get the version of the backend in use.
__api __check_ret __pure const char * | iio_context_get_xml (const struct iio_context *ctx)
| Obtain a XML representation of the given context.
__api __check_ret __pure const char * | iio_context_get_name (const struct iio_context *ctx)
| Get the name of the given context.
__api __check_ret __pure const char * | iio_context_get_description (const struct iio_context *ctx)
| Get a description of the given context.
__api __check_ret __pure unsigned int | iio_context_get_attrs_count (const struct iio_context *ctx)
| Get the number of context-specific attributes.
__api __check_ret int | iio_context_get_attr (const struct iio_context *ctx, unsigned int index, const char **name, const char **value)
| Retrieve the name and value of a context-specific attribute.
__api __check_ret const char * | iio_context_get_attr_value (const struct iio_context *ctx, const char *name)
| Retrieve the value of a context-specific attribute.
__api __check_ret __pure unsigned int | iio_context_get_devices_count (const struct iio_context *ctx)
| Enumerate the devices found in the given context.
__api __check_ret __pure struct iio_device * | iio_context_get_device (const struct iio_context *ctx, unsigned int index)
| Get the device present at the given index.
__api __check_ret __pure struct iio_device * | iio_context_find_device (const struct iio_context *ctx, const char *name)
| Try to find a device structure by its ID, label or name.
__api __check_ret int | iio_context_set_timeout (struct iio_context *ctx, unsigned int timeout_ms)
| Set a timeout for I/O operations.
__api __check_ret __pure const struct iio_context * | iio_device_get_context (const struct iio_device *dev)
| Retrieve a pointer to the iio_context structure.
__api __check_ret __pure const char * | iio_device_get_id (const struct iio_device *dev)
| Retrieve the device ID (e.g. iio:device0).
__api __check_ret __pure const char * | iio_device_get_name (const struct iio_device *dev)
| Retrieve the device name (e.g. xadc).
__api __check_ret __pure const char * | iio_device_get_label (const struct iio_device *dev)
| Retrieve the device label (e.g. lo_pll0_rx_adf4351).
__api __check_ret __pure unsigned int | iio_device_get_channels_count (const struct iio_device *dev)
| Enumerate the channels of the given device.
__api __check_ret __pure unsigned int | iio_device_get_attrs_count (const struct iio_device *dev)
| Enumerate the device-specific attributes of the given device.
__api __check_ret __pure unsigned int | iio_device_get_buffer_attrs_count (const struct iio_device *dev)
| Enumerate the buffer-specific attributes of the given device.
__api __check_ret __pure struct iio_channel * | iio_device_get_channel (const struct iio_device *dev, unsigned int index)
| Get the channel present at the given index.
__api __check_ret __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.
__api __check_ret __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.
__api __check_ret __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.
__api __check_ret __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.
__api __check_ret __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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api __check_ret 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.
__api void | iio_device_set_data (struct iio_device *dev, void *data)
| Associate 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.
__api __check_ret int | iio_device_get_trigger (const struct iio_device *dev, const struct iio_device **trigger)
| Retrieve the trigger of a given device.
__api __check_ret int | iio_device_set_trigger (const struct iio_device *dev, const struct iio_device *trigger)
| Associate a trigger to a given device.
__api __check_ret __pure bool | iio_device_is_trigger (const struct iio_device *dev)
| Return True if the given device is a trigger.
__api __check_ret 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.
__api __check_ret __pure const struct iio_device * | iio_channel_get_device (const struct iio_channel *chn)
| Retrieve a pointer to the iio_device structure.
__api __check_ret __pure const char * | iio_channel_get_id (const struct iio_channel *chn)
| Retrieve the channel ID (e.g. voltage0).
__api __check_ret __pure const char * | iio_channel_get_name (const struct iio_channel *chn)
| Retrieve the channel name (e.g. vccint).
__api __check_ret __pure bool | iio_channel_is_output (const struct iio_channel *chn)
| Return True if the given channel is an output channel.
__api __check_ret __pure bool | iio_channel_is_scan_element (const struct iio_channel *chn)
| Return True if the given channel is a scan element.
__api __check_ret __pure unsigned int | iio_channel_get_attrs_count (const struct iio_channel *chn)
| Enumerate the channel-specific attributes of the given channel.
__api __check_ret __pure const char * | iio_channel_get_attr (const struct iio_channel *chn, unsigned int index)
| Get the channel-specific attribute present at the given index.
__api __check_ret __pure const char * | iio_channel_find_attr (const struct iio_channel *chn, const char *name)
| Try to find a channel-specific attribute by its name.
__api __check_ret __pure const char * | iio_channel_attr_get_filename (const struct iio_channel *chn, const char *attr)
| Retrieve the filename of an attribute.
__api __check_ret ssize_t | iio_channel_attr_read (const struct iio_channel *chn, const char *attr, char *dst, size_t len)
| Read the content of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_read_all (struct iio_channel *chn, int(*cb)(struct iio_channel *chn, const char *attr, const char *val, size_t len, void *d), void *data)
| Read the content of all channel-specific attributes.
__api __check_ret int | iio_channel_attr_read_bool (const struct iio_channel *chn, const char *attr, bool *val)
| Read the content of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_read_longlong (const struct iio_channel *chn, const char *attr, long long *val)
| Read the content of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_read_double (const struct iio_channel *chn, const char *attr, double *val)
| Read the content of the given channel-specific attribute.
__api __check_ret ssize_t | iio_channel_attr_write (const struct iio_channel *chn, const char *attr, const char *src)
| Set the value of the given channel-specific attribute.
__api __check_ret ssize_t | iio_channel_attr_write_raw (const struct iio_channel *chn, const char *attr, const void *src, size_t len)
| Set the value of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_write_all (struct iio_channel *chn, ssize_t(*cb)(struct iio_channel *chn, const char *attr, void *buf, size_t len, void *d), void *data)
| Set the values of all channel-specific attributes.
__api __check_ret int | iio_channel_attr_write_bool (const struct iio_channel *chn, const char *attr, bool val)
| Set the value of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_write_longlong (const struct iio_channel *chn, const char *attr, long long val)
| Set the value of the given channel-specific attribute.
__api __check_ret int | iio_channel_attr_write_double (const struct iio_channel *chn, const char *attr, double val)
| Set the value of the given channel-specific attribute.
__api void | iio_channel_enable (struct iio_channel *chn)
| Enable the given channel.
__api void | iio_channel_disable (struct iio_channel *chn)
| Disable the given channel.
__api __check_ret bool | iio_channel_is_enabled (const struct iio_channel *chn)
| Returns True if the channel is enabled.
__api __check_ret size_t | iio_channel_read_raw (const struct iio_channel *chn, struct iio_buffer *buffer, void *dst, size_t len)
| Demultiplex the samples of a given channel.
__api __check_ret size_t | iio_channel_read (const struct iio_channel *chn, struct iio_buffer *buffer, void *dst, size_t len)
| Demultiplex and convert the samples of a given channel.
__api __check_ret size_t | iio_channel_write_raw (const struct iio_channel *chn, struct iio_buffer *buffer, const void *src, size_t len)
| Multiplex the samples of a given channel.
__api __check_ret size_t | iio_channel_write (const struct iio_channel *chn, struct iio_buffer *buffer, const void *src, size_t len)
| Convert and multiplex the samples of a given channel.
__api void | iio_channel_set_data (struct iio_channel *chn, void *data)
| Associate a pointer to an iio_channel structure.
__api void * | iio_channel_get_data (const struct iio_channel *chn)
| Retrieve a previously associated pointer of an iio_channel structure.
__api __check_ret __pure enum iio_chan_type | iio_channel_get_type (const struct iio_channel *chn)
| Get the type of the given channel.
__api __check_ret __pure enum iio_modifier | iio_channel_get_modifier (const struct iio_channel *chn)
| Get the modifier type of the given channel.
__api __check_ret __pure const struct iio_device * | iio_buffer_get_device (const struct iio_buffer *buf)
| Retrieve a pointer to the iio_device structure.
__api __check_ret struct iio_buffer * | iio_device_create_buffer (const struct iio_device *dev, size_t samples_count, bool cyclic)
| Create an input or output buffer associated to the given device.
__api void | iio_buffer_destroy (struct iio_buffer *buf)
| Destroy the given buffer.
__api __check_ret int | iio_buffer_get_poll_fd (struct iio_buffer *buf)
| Get a pollable file descriptor.
__api __check_ret int | iio_buffer_set_blocking_mode (struct iio_buffer *buf, bool blocking)
| Make iio_buffer_refill() and iio_buffer_push() blocking or not.
__api __check_ret ssize_t | iio_buffer_refill (struct iio_buffer *buf)
| Fetch more samples from the hardware.
__api __check_ret ssize_t | iio_buffer_push (struct iio_buffer *buf)
| Send the samples to the hardware.
__api __check_ret ssize_t | iio_buffer_push_partial (struct iio_buffer *buf, size_t samples_count)
| Send a given number of samples to the hardware.
__api void | iio_buffer_cancel (struct iio_buffer *buf)
| Cancel all buffer operations.
__api void * | iio_buffer_start (const struct iio_buffer *buf)
| Get the start address of the buffer.
__api void * | iio_buffer_first (const struct iio_buffer *buf, const struct iio_channel *chn)
| Find the first sample of a channel in a buffer.
__api __check_ret ptrdiff_t | iio_buffer_step (const struct iio_buffer *buf)
| Get the step size between two samples of one channel.
__api void * | iio_buffer_end (const struct iio_buffer *buf)
| Get the address that follows the last sample in a buffer.
__api __check_ret ssize_t | iio_buffer_foreach_sample (struct iio_buffer *buf, ssize_t(*callback)(const struct iio_channel *chn, void *src, size_t bytes, void *d), void *data)
| Call the supplied callback for each sample found in a buffer.
__api void | iio_buffer_set_data (struct iio_buffer *buf, void *data)
| Associate a pointer to an iio_buffer structure.
__api void * | iio_buffer_get_data (const struct iio_buffer *buf)
| Retrieve a previously associated pointer of an iio_buffer structure.
__api __check_ret ssize_t | iio_device_get_sample_size (const struct iio_device *dev)
| Get the current sample size.
__api __check_ret __pure long | iio_channel_get_index (const struct iio_channel *chn)
| Get the index of the given channel.
__api __check_ret __cnst const struct iio_data_format * | iio_channel_get_data_format (const struct iio_channel *chn)
| Get a pointer to a channel's data format structure.
__api void | iio_channel_convert (const struct iio_channel *chn, void *dst, const void *src)
| Convert the sample from hardware format to host format.
__api void | iio_channel_convert_inverse (const struct iio_channel *chn, void *dst, const void *src)
| Convert the sample from host format to hardware format.
__api __check_ret __pure unsigned int | iio_device_get_debug_attrs_count (const struct iio_device *dev)
| Enumerate the debug attributes of the given device.
__api __check_ret __pure const char * | iio_device_get_debug_attr (const struct iio_device *dev, unsigned int index)
| Get the debug attribute present at the given index.
__api __check_ret __pure const char * | iio_device_find_debug_attr (const struct iio_device *dev, const char *name)
| Try to find a debug attribute by its name.
__api __check_ret ssize_t | iio_device_debug_attr_read (const struct iio_device *dev, const char *attr, char *dst, size_t len)
| Read the content of the given debug attribute.
__api __check_ret int | iio_device_debug_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 debug attributes.
__api __check_ret ssize_t | iio_device_debug_attr_write (const struct iio_device *dev, const char *attr, const char *src)
| Set the value of the given debug attribute.
__api __check_ret ssize_t | iio_device_debug_attr_write_raw (const struct iio_device *dev, const char *attr, const void *src, size_t len)
| Set the value of the given debug attribute.
__api __check_ret int | iio_device_debug_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 debug attributes.
__api __check_ret int | iio_device_debug_attr_read_bool (const struct iio_device *dev, const char *attr, bool *val)
| Read the content of the given debug attribute.
__api __check_ret int | iio_device_debug_attr_read_longlong (const struct iio_device *dev, const char *attr, long long *val)
| Read the content of the given debug attribute.
__api __check_ret int | iio_device_debug_attr_read_double (const struct iio_device *dev, const char *attr, double *val)
| Read the content of the given debug attribute.
__api __check_ret int | iio_device_debug_attr_write_bool (const struct iio_device *dev, const char *attr, bool val)
| Set the value of the given debug attribute.
__api __check_ret int | iio_device_debug_attr_write_longlong (const struct iio_device *dev, const char *attr, long long val)
| Set the value of the given debug attribute.
__api __check_ret int | iio_device_debug_attr_write_double (const struct iio_device *dev, const char *attr, double val)
| Set the value of the given debug attribute.
__api __check_ret int | iio_device_identify_filename (const struct iio_device *dev, const char *filename, struct iio_channel **chn, const char **attr)
| Identify the channel or debug attribute corresponding to a filename.
__api __check_ret int | iio_device_reg_write (struct iio_device *dev, uint32_t address, uint32_t value)
| Set the value of a hardware register.
__api __check_ret int | iio_device_reg_read (struct iio_device *dev, uint32_t address, uint32_t *value)
| Get the value of a hardware register.

## Detailed Description

Public interface.

## Enumeration Type Documentation

## iio_chan_type

enum iio_chan_type

IIO channel type.

A IIO channel has a type specifying the type of data associated with the channel.

## iio_event_direction

enum iio_event_direction

IIO event direction.

When applicable, this enum specifies the direction of the iio_event_type.

## iio_event_type

enum iio_event_type

IIO event type.

Some IIO devices can deliver events. The type of the event can be specified by one of the iio_event_type values.

## iio_modifier

enum iio_modifier

IIO channel modifier.

In a addition to a type a IIO channel can optionally have a channel modifier further specifying the data type of of the channel.