Name: motion
Summary: Tizen Native Motion Recognition API
-Version: 1.2.0
+Version: 1.2.1
Release: 1
Group: Service/Context
License: Apache-2.0
ASSERT_SUPPORTED(FEATURE_ACTIVITY);
ASSERT_NOT_NULL(handle);
- handle->proxy->stop();
+ IF_FAIL_RETURN(handle->proxy->stop(), ACTIVITY_ERROR_NOT_STARTED);
return ERR_NONE;
}
ASSERT_NOT_NULL(callback);
IF_FAIL_RETURN(IS_VALID_GESTURE(gesture), ERR_INVALID_PARAMETER);
- if (!handle->proxy->setGesture(gesture)) {
- return ERR_INVALID_PARAMETER;
- }
-
if (option == GESTURE_OPTION_DEFAULT) {
handle->proxy->setPowerSave(true);
} else if (option == GESTURE_OPTION_ALWAYS_ON) {
return ERR_INVALID_PARAMETER;
}
+ if (!handle->proxy->setGesture(gesture)) {
+ return GESTURE_ERROR_NOT_SUPPORTED;
+ }
+
handle->proxy->setCb(callback);
handle->proxy->setUserData(user_data);
ASSERT_SUPPORTED(FEATURE_GESTURE);
ASSERT_NOT_NULL(handle);
- handle->proxy->stop();
+ IF_FAIL_RETURN(handle->proxy->stop(), GESTURE_ERROR_NOT_STARTED);
return ERR_NONE;
}
SensorProxy::~SensorProxy()
{
- stop();
+ stop(true);
}
void SensorProxy::setSensor(sensor_type_t type)
return true;
}
-void SensorProxy::stop()
+bool SensorProxy::stop(bool force)
{
- IF_FAIL_VOID(sensorHandle >= 0);
+ if (!force) {
+ IF_FAIL_RETURN(sensorHandle >= 0, false);
+ }
sensord_stop(sensorHandle);
sensord_unregister_event(sensorHandle, SENSOR_EVENT(sensorType));
sensord_disconnect(sensorHandle);
sensorHandle = -1;
+
+ return true;
}
double SensorProxy::getTime(unsigned long long monotonic)
void setPowerSave(bool ps);
void setUserData(void *data);
- void stop();
+ bool stop(bool force = false);
virtual bool start();