From: ABHISHEK JAIN Date: Thu, 9 Apr 2020 06:59:33 +0000 (+0530) Subject: [ITC][sensor][ACR-1531][Add sensor types and enum for new sensors] X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=54f71a96bb9dabb279300e256c126fc9c44b0bd6;p=test%2Ftct%2Fnative%2Fapi.git [ITC][sensor][ACR-1531][Add sensor types and enum for new sensors] Change-Id: I4677b1641c91ea3858646fffd483dc50f15fa5ed Signed-off-by: ABHISHEK JAIN --- diff --git a/src/itc/sensor/ITs-sensor-common.c b/src/itc/sensor/ITs-sensor-common.c index 94e16d904..e488ee721 100755 --- a/src/itc/sensor/ITs-sensor-common.c +++ b/src/itc/sensor/ITs-sensor-common.c @@ -27,21 +27,20 @@ */ char* SensorsGetError(int nRet) { - char *szErrorVal = NULL; + char *szErrorVal = "Unknown error"; switch ( nRet ) { - case SENSOR_ERROR_NONE: szErrorVal = "SENSOR_ERROR_NONE"; break; - case SENSOR_ERROR_IO_ERROR: szErrorVal = "SENSOR_ERROR_IO_ERROR"; break; - case SENSOR_ERROR_INVALID_PARAMETER: szErrorVal = "SENSOR_ERROR_INVALID_PARAMETER"; break; - case SENSOR_ERROR_OUT_OF_MEMORY: szErrorVal = "SENSOR_ERROR_OUT_OF_MEMORY"; break; - case SENSOR_ERROR_NOT_NEED_CALIBRATION: szErrorVal = "SENSOR_ERROR_NOT_NEED_CALIBRATION"; break; - case SENSOR_ERROR_NOT_SUPPORTED: szErrorVal = "SENSOR_ERROR_NOT_SUPPORTED"; break; - case SENSOR_ERROR_OPERATION_FAILED: szErrorVal = "SENSOR_ERROR_OPERATION_FAILED"; break; - case SENSOR_ERROR_PERMISSION_DENIED: szErrorVal = "SENSOR_ERROR_PERMISSION_DENIED"; break; - case SENSOR_ERROR_NO_DATA: szErrorVal = "SENSOR_ERROR_NO_DATA"; break; - case SENSOR_ERROR_NOT_AVAILABLE: szErrorVal = "SENSOR_ERROR_NOT_AVAILABLE"; break; - default : szErrorVal = "Unknown error"; break; + case SENSOR_ERROR_NONE: szErrorVal = "SENSOR_ERROR_NONE"; break; + case SENSOR_ERROR_IO_ERROR: szErrorVal = "SENSOR_ERROR_IO_ERROR"; break; + case SENSOR_ERROR_INVALID_PARAMETER: szErrorVal = "SENSOR_ERROR_INVALID_PARAMETER"; break; + case SENSOR_ERROR_OUT_OF_MEMORY: szErrorVal = "SENSOR_ERROR_OUT_OF_MEMORY"; break; + case SENSOR_ERROR_NOT_NEED_CALIBRATION: szErrorVal = "SENSOR_ERROR_NOT_NEED_CALIBRATION"; break; + case SENSOR_ERROR_NOT_SUPPORTED: szErrorVal = "SENSOR_ERROR_NOT_SUPPORTED"; break; + case SENSOR_ERROR_OPERATION_FAILED: szErrorVal = "SENSOR_ERROR_OPERATION_FAILED"; break; + case SENSOR_ERROR_PERMISSION_DENIED: szErrorVal = "SENSOR_ERROR_PERMISSION_DENIED"; break; + case SENSOR_ERROR_NO_DATA: szErrorVal = "SENSOR_ERROR_NO_DATA"; break; + case SENSOR_ERROR_NOT_AVAILABLE: szErrorVal = "SENSOR_ERROR_NOT_AVAILABLE"; break; } return szErrorVal; } @@ -54,36 +53,37 @@ char* SensorsGetError(int nRet) */ char* SensorGetType(sensor_type_e nSensorType) { - char *szErrorVal = NULL; + char *szErrorVal = "Unknown Error"; switch ( nSensorType ) { - case SENSOR_ACCELEROMETER: szErrorVal = "SENSOR_ACCELEROMETER"; break; - case SENSOR_GRAVITY: szErrorVal = "SENSOR_GRAVITY"; break; - case SENSOR_LINEAR_ACCELERATION: szErrorVal = "SENSOR_LINEAR_ACCELERATION"; break; - case SENSOR_MAGNETIC: szErrorVal = "SENSOR_MAGNETIC"; break; - case SENSOR_ROTATION_VECTOR: szErrorVal = "SENSOR_ROTATION_VECTOR"; break; - case SENSOR_ORIENTATION: szErrorVal = "SENSOR_ORIENTATION"; break; - case SENSOR_GYROSCOPE: szErrorVal = "SENSOR_GYROSCOPE"; break; - case SENSOR_LIGHT: szErrorVal = "SENSOR_LIGHT"; break; - case SENSOR_PROXIMITY: szErrorVal = "SENSOR_PROXIMITY"; break; - case SENSOR_PRESSURE: szErrorVal = "SENSOR_PRESSURE"; break; - case SENSOR_ULTRAVIOLET: szErrorVal = "SENSOR_ULTRAVIOLET"; break; - case SENSOR_TEMPERATURE: szErrorVal = "SENSOR_TEMPERATURE"; break; - case SENSOR_HUMIDITY: szErrorVal = "SENSOR_HUMIDITY"; break; - case SENSOR_HRM: szErrorVal = "SENSOR_HRM"; break; /**< Heart Rate Monitor sensor */ - case SENSOR_HRM_LED_GREEN: szErrorVal = "SENSOR_HRM_LED_GREEN"; break; /**< HRM (LED Green) sensor */ - case SENSOR_HRM_LED_IR: szErrorVal = "SENSOR_HRM_LED_IR"; break; /**< HRM (LED IR) sensor */ - case SENSOR_HRM_LED_RED: szErrorVal = "SENSOR_HRM_LED_RED"; break; /**< HRM (LED RED) sensor */ - case SENSOR_GYROSCOPE_UNCALIBRATED: szErrorVal = "SENSOR_GYROSCOPE_UNCALIBRATED"; break; /**< Uncalibrated Gyroscope sensor (Since Tizen 2.4) */ - case SENSOR_GEOMAGNETIC_UNCALIBRATED: szErrorVal = "SENSOR_GEOMAGNETIC_UNCALIBRATED"; break; /**< Uncalibrated Geomagnetic sensor (Since Tizen 2.4) */ - case SENSOR_GYROSCOPE_ROTATION_VECTOR: szErrorVal = "SENSOR_GYROSCOPE_ROTATION_VECTOR"; break; /**< Gyroscope-based rotation vector sensor (Since Tizen 2.4) */ - case SENSOR_GEOMAGNETIC_ROTATION_VECTOR: szErrorVal = "SENSOR_GEOMAGNETIC_ROTATION_VECTOR"; break; /**< Geomagnetic-based rotation vector sensor (Since Tizen 2.4) */ - case SENSOR_SIGNIFICANT_MOTION: szErrorVal = "SENSOR_SIGNIFICANT_MOTION"; break; - case SENSOR_HUMAN_PEDOMETER: szErrorVal = "SENSOR_HUMAN_PEDOMETER"; break; - case SENSOR_HUMAN_SLEEP_MONITOR : szErrorVal = "SENSOR_HUMAN_SLEEP_MONITOR"; break; - case SENSOR_HUMAN_SLEEP_DETECTOR : szErrorVal = "SENSOR_HUMAN_SLEEP_DETECTOR"; break; - case SENSOR_HUMAN_STRESS_MONITOR : szErrorVal = "SENSOR_HUMAN_STRESS_MONITOR"; break; - default : szErrorVal = "Unknown Error"; break; + case SENSOR_ACCELEROMETER: szErrorVal = "SENSOR_ACCELEROMETER"; break; + case SENSOR_GRAVITY: szErrorVal = "SENSOR_GRAVITY"; break; + case SENSOR_LINEAR_ACCELERATION: szErrorVal = "SENSOR_LINEAR_ACCELERATION"; break; + case SENSOR_MAGNETIC: szErrorVal = "SENSOR_MAGNETIC"; break; + case SENSOR_ROTATION_VECTOR: szErrorVal = "SENSOR_ROTATION_VECTOR"; break; + case SENSOR_ORIENTATION: szErrorVal = "SENSOR_ORIENTATION"; break; + case SENSOR_GYROSCOPE: szErrorVal = "SENSOR_GYROSCOPE"; break; + case SENSOR_LIGHT: szErrorVal = "SENSOR_LIGHT"; break; + case SENSOR_PROXIMITY: szErrorVal = "SENSOR_PROXIMITY"; break; + case SENSOR_PRESSURE: szErrorVal = "SENSOR_PRESSURE"; break; + case SENSOR_ULTRAVIOLET: szErrorVal = "SENSOR_ULTRAVIOLET"; break; + case SENSOR_TEMPERATURE: szErrorVal = "SENSOR_TEMPERATURE"; break; + case SENSOR_HUMIDITY: szErrorVal = "SENSOR_HUMIDITY"; break; + case SENSOR_HRM: szErrorVal = "SENSOR_HRM"; break; /**< Heart Rate Monitor sensor */ + case SENSOR_HRM_LED_GREEN: szErrorVal = "SENSOR_HRM_LED_GREEN"; break; /**< HRM (LED Green) sensor */ + case SENSOR_HRM_LED_IR: szErrorVal = "SENSOR_HRM_LED_IR"; break; /**< HRM (LED IR) sensor */ + case SENSOR_HRM_LED_RED: szErrorVal = "SENSOR_HRM_LED_RED"; break; /**< HRM (LED RED) sensor */ + case SENSOR_GYROSCOPE_UNCALIBRATED: szErrorVal = "SENSOR_GYROSCOPE_UNCALIBRATED"; break; /**< Uncalibrated Gyroscope sensor (Since Tizen 2.4) */ + case SENSOR_GEOMAGNETIC_UNCALIBRATED: szErrorVal = "SENSOR_GEOMAGNETIC_UNCALIBRATED"; break; /**< Uncalibrated Geomagnetic sensor (Since Tizen 2.4) */ + case SENSOR_GYROSCOPE_ROTATION_VECTOR: szErrorVal = "SENSOR_GYROSCOPE_ROTATION_VECTOR"; break; /**< Gyroscope-based rotation vector sensor (Since Tizen 2.4) */ + case SENSOR_GEOMAGNETIC_ROTATION_VECTOR: szErrorVal = "SENSOR_GEOMAGNETIC_ROTATION_VECTOR"; break; /**< Geomagnetic-based rotation vector sensor (Since Tizen 2.4) */ + case SENSOR_SIGNIFICANT_MOTION: szErrorVal = "SENSOR_SIGNIFICANT_MOTION"; break; + case SENSOR_HUMAN_PEDOMETER: szErrorVal = "SENSOR_HUMAN_PEDOMETER"; break; + case SENSOR_HUMAN_SLEEP_MONITOR : szErrorVal = "SENSOR_HUMAN_SLEEP_MONITOR"; break; + case SENSOR_HUMAN_SLEEP_DETECTOR : szErrorVal = "SENSOR_HUMAN_SLEEP_DETECTOR"; break; + case SENSOR_HUMAN_STRESS_MONITOR : szErrorVal = "SENSOR_HUMAN_STRESS_MONITOR"; break; + case SENSOR_HRM_BATCH : szErrorVal = "SENSOR_HRM_BATCH"; break; + case SENSOR_HRM_LED_GREEN_BATCH : szErrorVal = "SENSOR_HRM_LED_GREEN_BATCH"; break; } return szErrorVal; } diff --git a/src/itc/sensor/ITs-sensor-common.h b/src/itc/sensor/ITs-sensor-common.h index f678c7a56..09ac34111 100755 --- a/src/itc/sensor/ITs-sensor-common.h +++ b/src/itc/sensor/ITs-sensor-common.h @@ -28,7 +28,6 @@ */ #define API_NAMESPACE "SENSOR_ITC" #define PATH_LEN 1024 -#define TIMEOUT_CB 2000 #define MICROSECONDS_PER_SECOND 1000000 #define TIME_1_HOUR_SEC 3600 #define TIME_1_DAY_SEC (TIME_1_HOUR_SEC * 24) @@ -57,7 +56,7 @@ typedef enum FeatureCheck { #define RUN_POLLING_LOOP {\ g_pSensorMainLoop = g_main_loop_new(NULL, false);\ - nSensorTimeoutId = g_timeout_add(TIMEOUT_CB, SensorTimeout, g_pSensorMainLoop);\ + nSensorTimeoutId = g_timeout_add(nTimeOutCB, SensorTimeout, g_pSensorMainLoop);\ g_main_loop_run(g_pSensorMainLoop);\ g_source_remove(nSensorTimeoutId);\ g_pSensorMainLoop = NULL;\ diff --git a/src/itc/sensor/ITs-sensor-provider.c b/src/itc/sensor/ITs-sensor-provider.c index d58cdbc19..8b99361b1 100755 --- a/src/itc/sensor/ITs-sensor-provider.c +++ b/src/itc/sensor/ITs-sensor-provider.c @@ -564,6 +564,7 @@ int ITc_sensor_add_remove_sensor_added_cb_p(void) START_TEST; sensor_provider_h hSensorProvider; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); @@ -622,6 +623,7 @@ int ITc_sensor_add_remove_sensor_removed_cb_p(void) START_TEST; sensor_provider_h hSensorProvider; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); @@ -681,6 +683,7 @@ int ITc_sensor_provider_set_start_cb_p(void) sensor_provider_h hSensorProvider; sensor_listener_h hlistener; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); @@ -740,6 +743,7 @@ int ITc_sensor_provider_set_stop_cb_p(void) sensor_provider_h hSensorProvider; sensor_listener_h hlistener; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); @@ -800,6 +804,7 @@ int ITc_sensor_provider_set_interval_changed_cb_p(void) sensor_provider_h hSensorProvider; sensor_listener_h hlistener; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); @@ -860,6 +865,7 @@ int ITc_sensor_provider_publish_events_p(void) sensor_provider_h hSensorProvider; sensor_listener_h hlistener; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; g_bSensorAddCallback = false; int nRet = sensor_create_provider(TEST_SENSOR_URI, &hSensorProvider); diff --git a/src/itc/sensor/ITs-sensor-recorder.c b/src/itc/sensor/ITs-sensor-recorder.c index 5811e757f..7676b2777 100755 --- a/src/itc/sensor/ITs-sensor-recorder.c +++ b/src/itc/sensor/ITs-sensor-recorder.c @@ -15,8 +15,7 @@ // #include "ITs-sensor-common.h" - -static bool sensor_recorder_supported[24]; +static bool sensor_recorder_supported[30]; //This needs to be increased, with addition of new sensors in "Sensor[]". static bool g_bCallbackHit = false; static int g_nRet; static bool g_bStatus; @@ -47,8 +46,9 @@ SensorFeature Sensor[] = { {SENSOR_GEOMAGNETIC_ROTATION_VECTOR, "http://tizen.org/feature/sensor.geomagnetic_rotation_vector"}, {SENSOR_HUMAN_SLEEP_MONITOR, "http://tizen.org/feature/sensor.sleep_monitor"}, {SENSOR_HUMAN_SLEEP_DETECTOR, "http://tizen.org/feature/sensor.sleep_monitor"}, - {SENSOR_HUMAN_STRESS_MONITOR, "http://tizen.org/feature/sensor.stress_monitor"} - + {SENSOR_HUMAN_STRESS_MONITOR, "http://tizen.org/feature/sensor.stress_monitor"}, + {SENSOR_HRM_BATCH, "http://tizen.org/feature/sensor.heart_rate_monitor.batch"}, + {SENSOR_HRM_LED_GREEN_BATCH, "http://tizen.org/feature/sensor.heart_rate_monitor.led_green.batch"} }; @@ -779,7 +779,8 @@ int ITc_sensor_recorder_query_set_time_p(void) int ITc_sensor_recorder_read_p(void) { START_TEST; - int nSensorTimeoutId = 0; + int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; time_t now; time_t start, end; time_t anchor; @@ -820,7 +821,10 @@ int ITc_sensor_recorder_read_p(void) continue; g_bCallbackHit = false; - + if(Sensor[i].eSensorType == SENSOR_HRM_BATCH || Sensor[i].eSensorType == SENSOR_HRM_LED_GREEN_BATCH) + { + nTimeOutCB = 30000; + } //Target API nRet = sensor_recorder_read(Sensor[i].eSensorType, query, SensorRecorderDatacb, NULL); PRINT_RESULT_CLEANUP(SENSOR_ERROR_NONE, nRet, "sensor_recorder_read", SensorsGetError(nRet),sensor_recorder_destroy_query(query)); diff --git a/src/itc/sensor/ITs-sensor.c b/src/itc/sensor/ITs-sensor.c index f4d04417b..e9ab97f37 100755 --- a/src/itc/sensor/ITs-sensor.c +++ b/src/itc/sensor/ITs-sensor.c @@ -46,7 +46,8 @@ SensorFeature stSensor[] = { {SENSOR_GYROSCOPE_ROTATION_VECTOR, "http://tizen.org/feature/sensor.gyroscope_rotation_vector"}, {SENSOR_GEOMAGNETIC_ROTATION_VECTOR, "http://tizen.org/feature/sensor.geomagnetic_rotation_vector"}, {SENSOR_SIGNIFICANT_MOTION, "http://tizen.org/feature/sensor.significant_motion"}, - + {SENSOR_HRM_BATCH, "http://tizen.org/feature/sensor.heart_rate_monitor.batch"}, + {SENSOR_HRM_LED_GREEN_BATCH, "http://tizen.org/feature/sensor.heart_rate_monitor.led_green.batch"} }; const char *stUriTypes[] = { @@ -73,6 +74,8 @@ const char *stUriTypes[] = { "http://tizen.org/sensor/healthinfo/human_pedometer", /**< Pedometer @if MOBILE (Since 3.0) @elseif WEARABLE (Since 2.3.2) @endif @n Privilege : http://tizen.org/privilege/healthinfo */ + "http://tizen.org/sensor/healthinfo/heart_rate_monitor.batch", /**< Heart Rate Monitor Batch sensor */ + "http://tizen.org/sensor/healthinfo/heart_rate_monitor.led_green.batch" /**< HRM (LED Green) Batch sensor */ }; int enum_size = sizeof(stSensor) / sizeof(stSensor[0]); @@ -1212,6 +1215,7 @@ int ITc_sensor_listener_read_data_list_p(void) START_TEST; int nSensorTimeoutId = 0; + int nTimeOutCB = 2000; int nRet = -1; for ( enum_counter=0; enum_counter