struct iio_buffer — general buffer structure
struct iio_buffer { int length; int bytes_per_datum; struct attribute_group * scan_el_attrs; long * scan_mask; bool scan_timestamp; const struct iio_buffer_access_funcs * access; struct list_head scan_el_dev_attr_list; struct attribute_group scan_el_group; wait_queue_head_t pollq; bool stufftoread; struct list_head demux_list; void * demux_bounce; struct list_head buffer_list; struct kref ref; unsigned int watermark; };
[DEVICE] number of datums in buffer
[DEVICE] size of individual datum including timestamp
[DRIVER] control of scan elements if that scan mode control method is used
[INTERN] bitmask used in masking scan mode elements
[INTERN] does the scan mode include a timestamp
[DRIVER] buffer access functions associated with the implementation.
[INTERN] list of scan element related attributes.
[DRIVER] attribute group for those attributes not created from the iio_chan_info array.
[INTERN] wait queue to allow for polling on the buffer.
[INTERN] flag to indicate new data.
[INTERN] list of operations required to demux the scan.
[INTERN] buffer for doing gather from incoming scan.
[INTERN] entry in the devices list of current buffers.
[INTERN] reference count of the buffer.
[INTERN] number of datums to wait for poll/read.