_I("gravity_sensor is destroyed!\n");
}
-bool gravity_sensor::init()
+bool gravity_sensor::init(void)
{
/* Acc (+ Gyro) fusion */
m_accel_sensor = sensor_loader::get_instance().get_sensor(ACCELEROMETER_SENSOR);
if (!m_accel_sensor) {
- _E("cannot load accelerometer sensor_hal[%s]", get_name());
+ _W("cannot load accelerometer sensor_hal[%s]", get_name());
return false;
}
int accuracy;
if (!m_fusion->get_rotation_vector(x, y, z, w, heading_accuracy, accuracy)) {
- _E("Failed to get rotation vector");
+ _W("Failed to get rotation vector");
return;
}
float rotation[4] = {x, y, z, w};
- rotation_to_gravity(rotation, gravity);
+ if (!rotation_to_gravity(rotation, gravity)) {
+ _D("Invalid rotation_vector: [%10f] [%10f] [%10f] [%10f]", x, y, z, w);
+ return;
+ }
gravity_event = (sensor_event_t *)malloc(sizeof(sensor_event_t));
if (!gravity_event) {
m_time_new = event.data->timestamp;
}
-void gravity_sensor::fusion_update_angle()
+void gravity_sensor::fusion_update_angle(void)
{
_D("AngleIn: (%f, %f, %f)", m_angle_n[0], m_angle_n[1], m_angle_n[2]);
_D("AngAccl: (%f, %f, %f)", m_velocity[0], m_velocity[1], m_velocity[2]);
_D("Angle' : (%f, %f, %f)", m_angle[0], m_angle[1], m_angle[2]);
}
-void gravity_sensor::fusion_get_gravity()
+void gravity_sensor::fusion_get_gravity(void)
{
double x = 0, y = 0, z = 0;
double norm;