From df2a76fd31b02912ddb4abdb22ea183967c1d734 Mon Sep 17 00:00:00 2001 From: "taemin.yeom" Date: Fri, 17 Dec 2021 19:22:46 +0900 Subject: [PATCH] Change "get_attribute" to get the value directly in HAL Change-Id: Ia013be56ba7bcd1feffcf24cd44d06ffffbfdfd3 Signed-off-by: taemin.yeom --- src/server/physical_sensor_handler.cpp | 22 ++++++++++++++++++++++ src/server/physical_sensor_handler.h | 2 ++ 2 files changed, 24 insertions(+) diff --git a/src/server/physical_sensor_handler.cpp b/src/server/physical_sensor_handler.cpp index d32efe8..6808c6b 100644 --- a/src/server/physical_sensor_handler.cpp +++ b/src/server/physical_sensor_handler.cpp @@ -314,6 +314,28 @@ int physical_sensor_handler::set_attribute(sensor_observer *ob, int32_t attr, co return (ret ? OP_SUCCESS : OP_ERROR); } +int physical_sensor_handler::get_attribute(int32_t attr, int32_t *value) +{ + retv_if(!m_device, -EINVAL); + + bool ret = false; + int policy = OP_DEFAULT; + + ret = m_device->get_attribute_int(m_hal_id, attr, value); + return (ret ? OP_SUCCESS : OP_ERROR); +} + +int physical_sensor_handler::get_attribute(int32_t attr, char **value, int *len) +{ + retv_if(!m_device, -EINVAL); + + bool ret = false; + int policy = OP_DEFAULT; + + ret = m_device->get_attribute_str(m_hal_id, attr, value, len); + return (ret ? OP_SUCCESS : OP_ERROR); +} + int physical_sensor_handler::flush(sensor_observer *ob) { retv_if(!m_device, -EINVAL); diff --git a/src/server/physical_sensor_handler.h b/src/server/physical_sensor_handler.h index 0fca0fe..6743604 100644 --- a/src/server/physical_sensor_handler.h +++ b/src/server/physical_sensor_handler.h @@ -57,6 +57,8 @@ public: int delete_batch_latency(sensor_observer *ob); int set_attribute(sensor_observer *ob, int32_t attr, int32_t value); int set_attribute(sensor_observer *ob, int32_t attr, const char *value, int len); + int get_attribute(int32_t attr, int32_t *value); + int get_attribute(int32_t attr, char **value, int *len); int flush(sensor_observer *ob); int get_data(sensor_data_t **data, int *len); -- 2.7.4