Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
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. More...
 

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

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