Private
Public Access
2
0

iio: initial pass at getting channel information from scan_elements

This commit creates a new structure inside each _iio device when used and can
then be used to understand the data being read after a trigger is run/executed

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
Brendan Le Foll
2015-10-02 16:48:47 +01:00
parent b192e7a223
commit 2c97fd5953
5 changed files with 251 additions and 15 deletions

View File

@@ -24,6 +24,23 @@
#pragma once
#include "common.h"
typedef struct {
int index;
int enabled;
char* type;
mraa_boolean_t lendian;
int signedd;
unsigned int offset;
uint64_t mask;
unsigned int bits_used;
unsigned int bytes;
unsigned int shift;
unsigned int location;
float scale;
} mraa_iio_channel;
/**
* @file
* @brief iio
@@ -57,14 +74,16 @@ typedef struct _iio* mraa_iio_context;
*/
mraa_iio_context mraa_iio_init(int device);
/**
*/
int mraa_iio_get_channel_count(mraa_iio_context dev);
int mraa_iio_get_attr_count(mraa_iio_context dev, int channel);
mraa_result_t mraa_iio_trigger_buffer(mraa_iio_context dev, void (*fptr)(char* data), void* args);
const char* mraa_iio_get_device_name(mraa_iio_context dev);
int mraa_iio_read_size(mraa_iio_context dev);
mraa_iio_channel* mraa_iio_get_channels(mraa_iio_context dev);
int mraa_iio_get_channel_count(mraa_iio_context dev);
/**
*/
mraa_result_t mraa_iio_read(mraa_iio_context dev, const char* attribute, float* data);
@@ -74,6 +93,8 @@ mraa_result_t mraa_iio_read(mraa_iio_context dev, const char* attribute, float*
*/
mraa_result_t mraa_iio_write(mraa_iio_context dev, const char* attribute);
mraa_result_t mraa_iio_get_channel_data(mraa_iio_context dev);
/**
* De-inits an mraa_iio_context device
*