From c9181f15166c65bc1f1fe9f01cb0a6ea3f04aa6d Mon Sep 17 00:00:00 2001 From: "kibak.yoon" Date: Wed, 13 Jul 2016 21:09:43 +0900 Subject: [PATCH] sensor: add queryRaw function for pedometer Signed-off-by: kibak.yoon Change-Id: Ie63d52845004d08a3bc57be448368cd65b60a991 --- src/sensor/pedometer/PedometerQuerier.cpp | 24 +++++++++++++++++++++++ src/sensor/pedometer/PedometerQuerier.h | 1 + 2 files changed, 25 insertions(+) diff --git a/src/sensor/pedometer/PedometerQuerier.cpp b/src/sensor/pedometer/PedometerQuerier.cpp index c4bda95..3abf121 100644 --- a/src/sensor/pedometer/PedometerQuerier.cpp +++ b/src/sensor/pedometer/PedometerQuerier.cpp @@ -28,6 +28,15 @@ "MIN(" KEY_START_TIME ") AS " KEY_START_TIME ", " \ "MAX(" KEY_END_TIME ") AS " KEY_END_TIME +#define PROJECTION_RAW \ + KEY_WALK_STEPS " + " KEY_RUN_STEPS " AS " KEY_STEPS ", " \ + KEY_WALK_STEPS ", " \ + KEY_RUN_STEPS ", " \ + KEY_DISTANCE ", " \ + KEY_CALORIES ", " \ + KEY_START_TIME ", " \ + KEY_END_TIME + using namespace ctx; PedometerQuerier::PedometerQuerier(ContextProvider *provider, Json option) : @@ -39,6 +48,21 @@ PedometerQuerier::~PedometerQuerier() { } +int PedometerQuerier::queryRaw(int startTime, int endTime) +{ + char *sql = sqlite3_mprintf( + "SELECT " PROJECTION_RAW \ + " FROM " PEDOMETER_RECORD \ + " WHERE " KEY_END_TIME " > %llu AND " KEY_END_TIME " <= %llu" \ + " ORDER BY " KEY_END_TIME " ASC", + SEC_TO_MS(static_cast(startTime)), SEC_TO_MS(static_cast(endTime))); + + int ret = Querier::query(sql); + sqlite3_free(sql); + + return ret; +} + int PedometerQuerier::query(int startTime, int endTime) { char *sql = sqlite3_mprintf( diff --git a/src/sensor/pedometer/PedometerQuerier.h b/src/sensor/pedometer/PedometerQuerier.h index 0cce36b..21af1e1 100644 --- a/src/sensor/pedometer/PedometerQuerier.h +++ b/src/sensor/pedometer/PedometerQuerier.h @@ -26,6 +26,7 @@ namespace ctx { PedometerQuerier(ContextProvider *provider, Json option); ~PedometerQuerier(); + int queryRaw(int startTime, int endTime); int query(int startTime, int endTime); int query(int startTime, int endTime, int anchor, int interval); }; -- 2.34.1