'GRAVITY' : {},
'GYROSCOPE' : {},
'GYROSCOPE_ROTATION_VECTOR' : {},
- 'LINEAR_ACCELERATION' : {}
+ 'LINEAR_ACCELERATION' : {},
+ 'MAGNETIC_UNCALIBRATED' : {},
+ 'GYROSCOPE_UNCALIBRATED' : {}
};
+ var errorWrapper = function (err) {
+ if(err.name === "UnknownError") {
+ err = new WebAPIException(WebAPIException.ABORT_ERR, err.message);
+ }
+
+ native_.callIfPossible(this.errorCallback, err);
+ };
+
var _listener = function(object) {
if (object.sensorType.startsWith('LED_')) {
object.sensorType = 'HRM_RAW';
}
]);
- function errorWrapper(err) {
- if (err.name === "UnknownError") {
- args.errorCallback(new WebAPIException(WebAPIException.ABORT_ERR, err.message));
- } else {
- args.errorCallback(err);
- }
- }
- _sensorListeners[this.sensorType].getData(args.successCallback, errorWrapper);
+ _sensorListeners[this.sensorType].getData(args.successCallback, errorWrapper.bind(args));
};
+//// MagneticUncalibratedSensor
+var MagneticUncalibratedSensor = function(data) {
+ Sensor.call(this, SensorType.MAGNETIC_UNCALIBRATED);
+};
+
+MagneticUncalibratedSensor.prototype = new Sensor();
+
+MagneticUncalibratedSensor.prototype.constructor = Sensor;
+
+MagneticUncalibratedSensor.prototype.getMagneticUncalibratedSensorData = function() {
+ var args = validator_.validateArgs(arguments, [
+ {
+ name : 'successCallback',
+ type : types_.FUNCTION
+ },
+ {
+ name : 'errorCallback',
+ type : types_.FUNCTION,
+ optional : true,
+ nullable : true
+ }
+ ]);
+
+ function errorWrapper(err) {
+ if (err.name === "UnknownError") {
+ args.errorCallback(new WebAPIException(WebAPIException.ABORT_ERR, err.message));
+ } else {
+ args.errorCallback(err);
+ }
+ }
+ _sensorListeners[this.sensorType].getData(args.successCallback, errorWrapper);
+}
+
+//// GyroscopeUncalibratedSensor
+var GyroscopeUncalibratedSensor = function(data) {
+ Sensor.call(this, SensorType.GYROSCOPE_UNCALIBRATED);
+};
+
+GyroscopeUncalibratedSensor.prototype = new Sensor();
+
+GyroscopeUncalibratedSensor.prototype.constructor = Sensor;
+
+GyroscopeUncalibratedSensor.prototype.getGyroscopeUncalibratedSensorData = function() {
+ var args = validator_.validateArgs(arguments, [
+ {
+ name : 'successCallback',
+ type : types_.FUNCTION
+ },
+ {
+ name : 'errorCallback',
+ type : types_.FUNCTION,
+ optional : true,
+ nullable : true
+ }
+ ]);
+
+ function errorWrapper(err) {
+ if (err.name === "UnknownError") {
+ args.errorCallback(new WebAPIException(WebAPIException.ABORT_ERR, err.message));
+ } else {
+ args.errorCallback(err);
+ }
+ }
+ _sensorListeners[this.sensorType].getData(args.successCallback, errorWrapper);
+}
////////////////////// Sensor Data classes/////////////////////////////////////////////////////
////Base SensorData class