From 3ef120f1e032d5a74fc1daaf2f25cffb23236132 Mon Sep 17 00:00:00 2001 From: Ankur Date: Wed, 18 Feb 2015 17:21:21 +0530 Subject: [PATCH] Removing redundant proximity events PROXIMITY_BASE_DATA_SET and PROXIMITY_EVENT_CHANGE_STATE were the same PROXIMITY_BASE_DATA_SET has been removed. PROXIMITY_BASE_DATA_SET was used for polling events and PROXIMITY_EVENT_CHANGE_STATE was used for event driven Since both these represent the same proximity event, DATA_SET type has been removed. And PROXIMITY_EVENT_CHANGE_STATE has been renamed to PROXIMITY_CHANGE_STATE_EVENT to make it simpler. The change has been tested on rd-pq device for all sensord API and all API were found to be working. Change-Id: Idb5a5213fdeecdeef0503b8f7388cdb2b0b36385 --- src/libsensord/client_common.cpp | 14 ++++++-------- src/libsensord/sensor_proxi.h | 11 +++-------- src/proxi/proxi_sensor.cpp | 16 ++++++++-------- test/src/tc-common.c | 4 ++-- 4 files changed, 19 insertions(+), 26 deletions(-) diff --git a/src/libsensord/client_common.cpp b/src/libsensord/client_common.cpp index f97e9b0..340f281 100755 --- a/src/libsensord/client_common.cpp +++ b/src/libsensord/client_common.cpp @@ -44,10 +44,10 @@ log_element g_log_elements[] = { FILL_LOG_ELEMENT(LOG_ID_SENSOR_TYPE, GEOMAGNETIC_RV_SENSOR, 0, 1), FILL_LOG_ELEMENT(LOG_ID_EVENT, GEOMAGNETIC_EVENT_CALIBRATION_NEEDED, 0, 1), - FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_EVENT_CHANGE_STATE, 0,1), + FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_CHANGE_STATE_EVENT, 0,1), FILL_LOG_ELEMENT(LOG_ID_EVENT, LIGHT_EVENT_CHANGE_LEVEL, 0, 1), - FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_EVENT_STATE_REPORT_ON_TIME, 0, 10), - FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME, 0, 10), + FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_STATE_EVENT, 0, 10), + FILL_LOG_ELEMENT(LOG_ID_EVENT, PROXIMITY_DISTANCE_DATA_EVENT, 0, 10), FILL_LOG_ELEMENT(LOG_ID_EVENT, CONTEXT_EVENT_REPORT, 0, 1), FILL_LOG_ELEMENT(LOG_ID_EVENT, AUTO_ROTATION_EVENT_CHANGE_STATE, 0, 1), FILL_LOG_ELEMENT(LOG_ID_EVENT, ACCELEROMETER_RAW_DATA_EVENT, 0, 10), @@ -64,8 +64,6 @@ log_element g_log_elements[] = { FILL_LOG_ELEMENT(LOG_ID_EVENT, ROTATION_VECTOR_EVENT_RAW_DATA_REPORT_ON_TIME, 0, 10), FILL_LOG_ELEMENT(LOG_ID_EVENT, GEOMAGNETIC_RV_EVENT_RAW_DATA_REPORT_ON_TIME, 0, 10), - FILL_LOG_ELEMENT(LOG_ID_DATA, PROXIMITY_BASE_DATA_SET, 0, 25), - FILL_LOG_ELEMENT(LOG_ID_DATA, PROXIMITY_DISTANCE_DATA_SET, 0, 25), FILL_LOG_ELEMENT(LOG_ID_DATA, PRESSURE_BASE_DATA_SET, 0, 25), FILL_LOG_ELEMENT(LOG_ID_DATA, GEOMAGNETIC_BASE_DATA_SET, 0, 25), FILL_LOG_ELEMENT(LOG_ID_DATA, LIGHT_BASE_DATA_SET, 0, 25), @@ -152,12 +150,12 @@ bool is_ontime_event(unsigned int event_type) { switch (event_type ) { case ACCELEROMETER_RAW_DATA_EVENT: - case PROXIMITY_EVENT_STATE_REPORT_ON_TIME: + case PROXIMITY_STATE_EVENT: case GYROSCOPE_RAW_DATA_EVENT: case LIGHT_EVENT_LEVEL_DATA_REPORT_ON_TIME: case GEOMAGNETIC_EVENT_RAW_DATA_REPORT_ON_TIME: case LIGHT_EVENT_LUX_DATA_REPORT_ON_TIME: - case PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME: + case PROXIMITY_DISTANCE_DATA_EVENT: case GRAVITY_EVENT_RAW_DATA_REPORT_ON_TIME: case LINEAR_ACCEL_EVENT_RAW_DATA_REPORT_ON_TIME: case ORIENTATION_EVENT_RAW_DATA_REPORT_ON_TIME: @@ -179,7 +177,7 @@ bool is_single_state_event(unsigned int event_type) switch (event_type) { case GEOMAGNETIC_EVENT_CALIBRATION_NEEDED: case LIGHT_EVENT_CHANGE_LEVEL: - case PROXIMITY_EVENT_CHANGE_STATE: + case PROXIMITY_CHANGE_STATE_EVENT: case AUTO_ROTATION_EVENT_CHANGE_STATE: return true; break; diff --git a/src/libsensord/sensor_proxi.h b/src/libsensord/sensor_proxi.h index e7e2270..22939d9 100755 --- a/src/libsensord/sensor_proxi.h +++ b/src/libsensord/sensor_proxi.h @@ -33,15 +33,10 @@ extern "C" * @{ */ -enum proxi_data_id { - PROXIMITY_BASE_DATA_SET = (PROXIMITY_SENSOR << 16) | 0x0001, - PROXIMITY_DISTANCE_DATA_SET = (PROXIMITY_SENSOR << 16) | 0x0002, -}; - enum proxi_event_type { - PROXIMITY_EVENT_CHANGE_STATE = (PROXIMITY_SENSOR << 16) | 0x0001, - PROXIMITY_EVENT_STATE_REPORT_ON_TIME = (PROXIMITY_SENSOR << 16) | 0x0002, - PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME = (PROXIMITY_SENSOR << 16) | 0x0004, + PROXIMITY_CHANGE_STATE_EVENT = (PROXIMITY_SENSOR << 16) | 0x0001, + PROXIMITY_STATE_EVENT = (PROXIMITY_SENSOR << 16) | 0x0002, + PROXIMITY_DISTANCE_DATA_EVENT = (PROXIMITY_SENSOR << 16) | 0x0004, }; enum proxi_change_state { diff --git a/src/proxi/proxi_sensor.cpp b/src/proxi/proxi_sensor.cpp index 31ef1d6..65809b9 100755 --- a/src/proxi/proxi_sensor.cpp +++ b/src/proxi/proxi_sensor.cpp @@ -30,9 +30,9 @@ proxi_sensor::proxi_sensor() { m_name = string(SENSOR_NAME); - register_supported_event(PROXIMITY_EVENT_CHANGE_STATE); - register_supported_event(PROXIMITY_EVENT_STATE_REPORT_ON_TIME); - register_supported_event(PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME); + register_supported_event(PROXIMITY_CHANGE_STATE_EVENT); + register_supported_event(PROXIMITY_STATE_EVENT); + register_supported_event(PROXIMITY_DISTANCE_DATA_EVENT); physical_sensor::set_poller(proxi_sensor::working, this); } @@ -80,8 +80,8 @@ bool proxi_sensor::process_event(void) AUTOLOCK(m_mutex); event.sensor_id = get_id(); - if (get_client_cnt(PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME)) { - event.event_type = PROXIMITY_EVENT_DISTANCE_DATA_REPORT_ON_TIME; + if (get_client_cnt(PROXIMITY_DISTANCE_DATA_EVENT)) { + event.event_type = PROXIMITY_DISTANCE_DATA_EVENT; raw_to_base(event.data); push(event); } @@ -92,8 +92,8 @@ bool proxi_sensor::process_event(void) AUTOLOCK(m_value_mutex); m_state = state; - if (get_client_cnt(PROXIMITY_EVENT_CHANGE_STATE)) { - event.event_type = PROXIMITY_EVENT_CHANGE_STATE; + if (get_client_cnt(PROXIMITY_CHANGE_STATE_EVENT)) { + event.event_type = PROXIMITY_CHANGE_STATE_EVENT; raw_to_base(event.data); push(event); } @@ -136,7 +136,7 @@ int proxi_sensor::get_sensor_data(unsigned int type, sensor_data_t &data) { int state; - if ((type != PROXIMITY_BASE_DATA_SET) && (type != PROXIMITY_DISTANCE_DATA_SET)) + if ((type != PROXIMITY_CHANGE_STATE_EVENT) && (type != PROXIMITY_STATE_EVENT)) return -1; state = m_sensor_hal->get_sensor_data(data); diff --git a/test/src/tc-common.c b/test/src/tc-common.c index 12dcde6..5913216 100644 --- a/test/src/tc-common.c +++ b/test/src/tc-common.c @@ -87,7 +87,7 @@ unsigned int get_event_driven(sensor_type_t sensor_type, char str[]) break; case PROXIMITY_SENSOR: if (strcmp(str, "EVENT_CHANGE_STATE") == 0) - return PROXIMITY_EVENT_CHANGE_STATE; + return PROXIMITY_CHANGE_STATE_EVENT; break; case ORIENTATION_SENSOR: if (strcmp(str, "RAW_DATA_REPORT_ON_TIME") == 0) @@ -221,7 +221,7 @@ int main(int argc, char **argv) } else if (strcmp(argv[1], "proximity") == 0) { sensor_type = PROXIMITY_SENSOR; - event = PROXIMITY_EVENT_CHANGE_STATE; + event = PROXIMITY_CHANGE_STATE_EVENT; } else { usage(); -- 2.7.4