NAME¶
egd_channel_info - Get various information about a particular channel
SYNOPSIS¶
#include <eegdev.h>
int egd_channel_info(const struct eegdev* dev, int
stype,
unsigned int index, int fieldtype, ...);
DESCRIPTION¶
egd_channel_info() provides different type of information about the
channel at the index
index of the group specified by
stype of
the device referenced by
dev. As described for
egd_acq_setup(3),
stype specifies the type of channel. It must one of the values returned
by
egd_sensor_type(3).
The information returned by the function is defined by the variable list of
argument. This list is composed of successive couple grouping one field type
identifier specifying the feature to be get and a pointer to a value whose
type depends on the previous field type. The list
must finish by
EGD_END.
The field identifers can be the following (The expected corresponding pointer
type is provided in parenthesis):
- EGD_LABEL (char*)
- Name of the channel. The pointed array should be long enough to hold 32
characters (including the null termination character).
- EGD_ISINT (int*)
- Indicates whether the data provided by the channel are integer or floating
point. (zero indicates floating point, non-zero indicates integer).
- EGD_MM_I (int32_t*)
- Returns in an array of 2 int32_t the minimal and maximal values
that the channel can deliver (If the channel deliver floating point data,
these values can be underestimated due to overflow)
- EGD_MM_F (float*)
- Returns in an array of 2 float values the minimal and maximal
values that the channel can deliver (If the channel deliver double
floating point data, these values can be underestimated due to
overflow)
- EGD_MM_D (double*)
- Returns in an array of 2 double values the minimal and maximal
values that the channel can deliver.
- EGD_UNIT (char*)
- Unit in which the channel data is expressed. The pointed array should be
long enough to hold 16 characters (including the null termination
character).
- EGD_TRANSDUCTER (char*)
- Transducter type of the sensor. The pointed array should be long enough to
hold 128 characters (including the null termination character).
- EGD_PREFILTERING (char*)
- Information about the filters already applied on data. The pointed array
should be long enough to hold 128 characters (including the null
termination character).
RETURN VALUE¶
The function returns 0 in case of succes. Otherwise, -1 is returned and
errno is set accordingly.
ERRORS¶
egd_channel_info() will fail if:
- EINVAL
- dev is NULL, stype is an invalid sensor type, index
is bigger than the maximal number of channel in the group, any field
identifier is unknown or any pointer used is NULL.
THREAD SAFETY¶
egd_channel_info() is thread-safe.
SEE ALSO¶
egd_acq_setup(3),
egd_sensor_type(3)