Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1597)

Unified Diff: device/generic_sensor/relative_orientation_fusion_algorithm.h

Issue 2929603003: Add RELATIVE_ORIENTATION sensor implementation on macOS to //device/generic_sensor (Closed)
Patch Set: updated IsSignificantlyDifferent() Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: device/generic_sensor/relative_orientation_fusion_algorithm.h
diff --git a/device/generic_sensor/relative_orientation_fusion_algorithm.h b/device/generic_sensor/relative_orientation_fusion_algorithm.h
new file mode 100644
index 0000000000000000000000000000000000000000..330cbe9c35d174f2127bde650e20166046c9d9d1
--- /dev/null
+++ b/device/generic_sensor/relative_orientation_fusion_algorithm.h
@@ -0,0 +1,55 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef DEVICE_GENERIC_SENSOR_RELATIVE_ORIENTATION_FUSION_ALGORITHM_H_
+#define DEVICE_GENERIC_SENSOR_RELATIVE_ORIENTATION_FUSION_ALGORITHM_H_
+
+#include "base/macros.h"
+
+namespace device {
+
+// Base class for relative orientation fusion algorithm.
+// Subclasses can use Accelerometer or Accelerometer + Gyroscope to create
+// a fusion algorithm.
+class RelativeOrientationFusionAlgorithm {
+ public:
+ RelativeOrientationFusionAlgorithm();
+ virtual ~RelativeOrientationFusionAlgorithm();
+
+ void set_acceleration(double acceleration_x,
timvolodine 2017/06/21 18:22:11 think would be good to document the units of accel
juncai 2017/07/20 00:22:16 I will update the sensor_reading.h to add units fo
+ double acceleration_y,
+ double acceleration_z) {
+ acceleration_x_ = acceleration_x;
+ acceleration_y_ = acceleration_y;
+ acceleration_z_ = acceleration_z;
+ }
+
+ void set_angular_speed(double angular_speed_x,
+ double angular_speed_y,
+ double angular_speed_z) {
timvolodine 2017/06/21 18:22:11 this is currently not used? any plans to provide f
juncai 2017/07/20 00:22:16 A new CL: https://chromium-review.googlesource.com
+ angular_speed_x_ = angular_speed_x;
+ angular_speed_y_ = angular_speed_y;
+ angular_speed_z_ = angular_speed_z;
+ }
+
+ virtual void GetRelativeOrientationData(double* x,
+ double* y,
+ double* z,
+ double* w) = 0;
+
+ protected:
+ double acceleration_x_;
+ double acceleration_y_;
+ double acceleration_z_;
+ double angular_speed_x_;
+ double angular_speed_y_;
+ double angular_speed_z_;
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(RelativeOrientationFusionAlgorithm);
+};
+
+} // namespace device
+
+#endif // DEVICE_GENERIC_SENSOR_RELATIVE_ORIENTATION_FUSION_ALGORITHM_H_

Powered by Google App Engine
This is Rietveld 408576698