sensor-hal: modify HAL interface for batching 57/58757/1
authorMu-Woong Lee <muwoong.lee@samsung.com>
Wed, 3 Feb 2016 07:49:21 +0000 (16:49 +0900)
committerMu-Woong Lee <muwoong.lee@samsung.com>
Wed, 3 Feb 2016 07:49:21 +0000 (16:49 +0900)
* int get_data(id, data, length)
  - return value: the remaining count of data

Change-Id: Ifa952443a115531b8ecd2c08b469a2ffe7dfb8cf
Signed-off-by: kibak.yoon <kibak.yoon@samsung.com>
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
src/accel/accel.cpp
src/accel/accel.h
src/sensor_hal.h

index 0f625d4..98a9850 100644 (file)
@@ -266,8 +266,9 @@ int accel_device::read_fd(uint16_t **ids)
        return size;
 }
 
-int accel_device::get_data(uint16_t id, sensor_data_t **data)
+int accel_device::get_data(uint16_t id, sensor_data_t **data, int *length)
 {
+       int remains = 1;
        sensor_data_t *sensor_data;
        sensor_data = (sensor_data_t *)malloc(sizeof(sensor_data_t));
 
@@ -281,8 +282,9 @@ int accel_device::get_data(uint16_t id, sensor_data_t **data)
        raw_to_base(sensor_data);
 
        *data = sensor_data;
+       *length = sizeof(sensor_data_t);
 
-       return sizeof(sensor_data_t);
+       return --remains;
 }
 
 bool accel_device::flush(uint16_t id)
index 1c7f737..05e8561 100644 (file)
@@ -40,7 +40,7 @@ public:
        bool set_attribute(uint16_t id, int32_t attribute, int32_t value);
 
        int read_fd(uint16_t **ids);
-       int get_data(uint16_t id, sensor_data_t **data);
+       int get_data(uint16_t id, sensor_data_t **data, int *length);
 
        bool flush(uint16_t id);
 
index 19681ed..ea3b795 100644 (file)
@@ -176,8 +176,7 @@ public:
        virtual bool set_attribute(uint16_t id, int32_t attribute, int32_t value) = 0;
 
        virtual int read_fd(uint16_t **ids) = 0;
-       virtual int get_data(uint16_t id, sensor_data_t **data) = 0;
-
+       virtual int get_data(uint16_t id, sensor_data_t **data, int *length) = 0;
        virtual bool flush(uint16_t id) = 0;
 };
 #endif /* __cplusplus */