From: kibak.yoon Date: Wed, 13 Jul 2016 12:09:43 +0000 (+0900) Subject: sensor: add queryRaw function for pedometer X-Git-Tag: submit/tizen/20160907.123648^2~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c9181f15166c65bc1f1fe9f01cb0a6ea3f04aa6d;p=platform%2Fcore%2Fcontext%2Fcontext-provider.git sensor: add queryRaw function for pedometer Signed-off-by: kibak.yoon Change-Id: Ie63d52845004d08a3bc57be448368cd65b60a991 --- 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); };