Eeze_Sensor.h File Reference

Sensor information subsystem. More...

## Data Structures

struct | _Eeze_Sensor_Obj

## Typedefs

typedef struct _Eeze_Sensor_Obj | Eeze_Sensor_Obj
| Object for a sensor type.

## Enumerations

enum

Eeze_Sensor_Type {
EEZE_SENSOR_TYPE_ACCELEROMETER ,
EEZE_SENSOR_TYPE_GRAVITY ,
EEZE_SENSOR_TYPE_LINEAR_ACCELERATION ,
EEZE_SENSOR_TYPE_DEVICE_ORIENTATION ,
EEZE_SENSOR_TYPE_MAGNETIC ,
EEZE_SENSOR_TYPE_ORIENTATION ,
EEZE_SENSOR_TYPE_GYROSCOPE ,
EEZE_SENSOR_TYPE_LIGHT ,
EEZE_SENSOR_TYPE_PROXIMITY ,
EEZE_SENSOR_TYPE_MOTION_SNAP ,
EEZE_SENSOR_TYPE_MOTION_SHAKE ,
EEZE_SENSOR_TYPE_MOTION_DOUBLETAP ,
EEZE_SENSOR_TYPE_MOTION_PANNING ,
EEZE_SENSOR_TYPE_MOTION_PANNING_BROWSE ,
EEZE_SENSOR_TYPE_MOTION_TILT ,
EEZE_SENSOR_TYPE_MOTION_FACEDOWN ,
EEZE_SENSOR_TYPE_MOTION_DIRECT_CALL ,
EEZE_SENSOR_TYPE_MOTION_SMART_ALERT ,
EEZE_SENSOR_TYPE_MOTION_NO_MOVE ,
EEZE_SENSOR_TYPE_BAROMETER ,
EEZE_SENSOR_TYPE_TEMPERATURE ,
EEZE_SENSOR_TYPE_LAST = 0xFF
}

| All sensor types known by Eeze Sensor. More...

## Functions

EAPI Eeze_Sensor_Obj * | eeze_sensor_new (Eeze_Sensor_Type type)
| Create sensor object to operate on.
EAPI void | eeze_sensor_free (Eeze_Sensor_Obj *sens)
| Free a sensor object.
EAPI Eina_Bool | eeze_sensor_accuracy_get (Eeze_Sensor_Obj *sens, int *accuracy)
| Get accuracy from sensor object.
EAPI Eina_Bool | eeze_sensor_xyz_get (Eeze_Sensor_Obj *sens, float *x, float *y, float *z)
| Get data from all three data properties.
EAPI Eina_Bool | eeze_sensor_xy_get (Eeze_Sensor_Obj *sens, float *x, float *y)
| Get data from first two data properties.
EAPI Eina_Bool | eeze_sensor_x_get (Eeze_Sensor_Obj *sens, float *x)
| Get the data from first data property.
EAPI Eina_Bool | eeze_sensor_timestamp_get (Eeze_Sensor_Obj *sens, double *timestamp)
| Get timestamp from sensor object.
EAPI Eina_Bool | eeze_sensor_read (Eeze_Sensor_Obj *sens)
| Read out sensor data.
EAPI Eina_Bool | eeze_sensor_async_read (Eeze_Sensor_Obj *sens, void *user_data)
| Asynchronous read out sensor data.

## Variables

EAPI int | EEZE_SENSOR_EVENT_ACCELEROMETER
EAPI int | EEZE_SENSOR_EVENT_GRAVITY
EAPI int | EEZE_SENSOR_EVENT_LINEAR_ACCELERATION
EAPI int | EEZE_SENSOR_EVENT_DEVICE_ORIENTATION
EAPI int | EEZE_SENSOR_EVENT_MAGNETIC
EAPI int | EEZE_SENSOR_EVENT_ORIENTATION
EAPI int | EEZE_SENSOR_EVENT_GYROSCOPE
EAPI int | EEZE_SENSOR_EVENT_LIGHT
EAPI int | EEZE_SENSOR_EVENT_PROXIMITY
EAPI int | EEZE_SENSOR_EVENT_SNAP
EAPI int | EEZE_SENSOR_EVENT_SHAKE
EAPI int | EEZE_SENSOR_EVENT_DOUBLETAP
EAPI int | EEZE_SENSOR_EVENT_PANNING
EAPI int | EEZE_SENSOR_EVENT_PANNING_BROWSE
EAPI int | EEZE_SENSOR_EVENT_TILT
EAPI int | EEZE_SENSOR_EVENT_FACEDOWN
EAPI int | EEZE_SENSOR_EVENT_DIRECT_CALL
EAPI int | EEZE_SENSOR_EVENT_SMART_ALERT
EAPI int | EEZE_SENSOR_EVENT_NO_MOVE
EAPI int | EEZE_SENSOR_EVENT_BAROMETER
EAPI int | EEZE_SENSOR_EVENT_TEMPERATURE

## Detailed Description

Sensor information subsystem.

Eeze sensor functions allow you to gather sensor information from different sensor sources available on your hardware. It supports a plugin architecture to support different hardware platforms and devices. These plugins can be loaded at runtime.

Right now we have support for the Tizen sensor framework as well as a simple fake plugin to be used as a test harness for development. Plugins for other sensor frameworks or platforms are always welcome.

Synchronous as well as asynchronous reads are possible. As reading the physical sensor might be bound to a high latency and thus cost the value of the last read is cached within Eeze_Sensor together with a timestamp of the actual read out. This can speed up the value access for application while the values are still getting updating asynchronously in the background. The timestamp should be checked if the specific time requirements are needed.

As an alternative the sensor could be read synchronously. With the disadvantage that the function call will block until the data is read from the sensor.

Since
  1.8