From ae81bcdcd5425ae8905f5ce6deb1195ed1776be9 Mon Sep 17 00:00:00 2001 From: Stefan Schmidt Date: Fri, 28 Sep 2012 09:10:47 +0000 Subject: [PATCH] eeze/sensor: Fix fake module to set timestamp to microseconds since epoch. Seconds is not really a suitable resolution for sensor data read outs. This also aligns it with the tizen module and the public API. The sleep is no longer needed in the test program either. SVN revision: 77191 --- legacy/eeze/src/bin/eeze_sensor_test.c | 2 -- legacy/eeze/src/modules/eeze_sensor_fake.c | 16 +++++++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/legacy/eeze/src/bin/eeze_sensor_test.c b/legacy/eeze/src/bin/eeze_sensor_test.c index a996ef382e..afc082a390 100644 --- a/legacy/eeze/src/bin/eeze_sensor_test.c +++ b/legacy/eeze/src/bin/eeze_sensor_test.c @@ -129,8 +129,6 @@ main(void) else printf("Could not find a light sensor!\n"); - sleep(1); - /* Get updated values on a sensor. Read out is synchronous */ eeze_sensor_read(sens); if (!sens) printf("can't find an light sensor!\n"); diff --git a/legacy/eeze/src/modules/eeze_sensor_fake.c b/legacy/eeze/src/modules/eeze_sensor_fake.c index 194b5c5cda..0a45b67b0a 100644 --- a/legacy/eeze/src/modules/eeze_sensor_fake.c +++ b/legacy/eeze/src/modules/eeze_sensor_fake.c @@ -3,7 +3,7 @@ #endif #include -#include +#include #include #include @@ -38,6 +38,7 @@ Eina_Bool fake_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj) { Eeze_Sensor_Obj *obj = NULL; + struct timeval tv; obj = eeze_sensor_obj_get(sensor_type); if (obj == NULL) @@ -56,7 +57,8 @@ fake_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj) obj->data[0] = 7; obj->data[1] = 23; obj->data[2] = 42; - obj->timestamp = time(NULL); + gettimeofday(&tv, NULL); + obj->timestamp = ((tv.tv_sec * 1000000) + tv.tv_usec); break; case EEZE_SENSOR_TYPE_LIGHT: @@ -65,7 +67,8 @@ fake_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj) case EEZE_SENSOR_TYPE_TEMPERATURE: obj->accuracy = 0; obj->data[0] = 7; - obj->timestamp = time(NULL); + gettimeofday(&tv, NULL); + obj->timestamp = ((tv.tv_sec * 1000000) + tv.tv_usec); break; default: @@ -82,6 +85,7 @@ Eina_Bool fake_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED) { Eeze_Sensor_Obj *obj = NULL; + struct timeval tv; obj = eeze_sensor_obj_get(sensor_type); if (obj == NULL) @@ -101,7 +105,8 @@ fake_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED) obj->data[0] = 7; obj->data[1] = 23; obj->data[2] = 42; - obj->timestamp = time(NULL); + gettimeofday(&tv, NULL); + obj->timestamp = ((tv.tv_sec * 1000000) + tv.tv_usec); break; case EEZE_SENSOR_TYPE_LIGHT: @@ -110,7 +115,8 @@ fake_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED) case EEZE_SENSOR_TYPE_TEMPERATURE: obj->accuracy = 0; obj->data[0] = 7; - obj->timestamp = time(NULL); + gettimeofday(&tv, NULL); + obj->timestamp = ((tv.tv_sec * 1000000) + tv.tv_usec); break; case EEZE_SENSOR_TYPE_MOTION_SNAP: