internal override void EventListenStart() { _callback = (IntPtr sensorHandle, IntPtr eventPtr, IntPtr data) => { Interop.SensorEventStruct sensorData = Interop.IntPtrToEventStruct(eventPtr); TimeSpan = new TimeSpan((Int64)sensorData.timestamp); Humidity = sensorData.values[0]; DataUpdated?.Invoke(this, new HumiditySensorDataUpdatedEventArgs(sensorData.values[0])); }; int error = Interop.SensorListener.SetEventCallback(ListenerHandle, Interval, _callback, IntPtr.Zero); if (error != (int)SensorError.None) { Log.Error(Globals.LogTag, "Error setting event callback for humidity sensor"); throw SensorErrorFactory.CheckAndThrowException(error, "Unable to set event callback for humidity"); } }
internal override void EventListenStart() { _callback = (IntPtr sensorHandle, IntPtr eventPtr, IntPtr data) => { Interop.SensorEventStruct sensorData = Interop.IntPtrToEventStruct(eventPtr); TimeSpan = new TimeSpan((Int64)sensorData.timestamp); InVehicle = (DetectorState)sensorData.values[0]; ActivityAccuracy = (SensorDataAccuracy)sensorData.accuracy; DataUpdated?.Invoke(this, new InVehicleActivityDetectorDataUpdatedEventArgs(sensorData.values[0])); }; int error = Interop.SensorListener.SetEventCallback(ListenerHandle, Interval, _callback, IntPtr.Zero); if (error != (int)SensorError.None) { Log.Error(Globals.LogTag, "Error setting event callback for invehicle activity detector"); throw SensorErrorFactory.CheckAndThrowException(error, "Unable to set event callback for invehicle activity detector"); } }
internal override void EventListenStart() { _callback = (IntPtr sensorHandle, IntPtr eventPtr, IntPtr data) => { Interop.SensorEventStruct sensorData = Interop.IntPtrToEventStruct(eventPtr); TimeSpan = new TimeSpan((Int64)sensorData.timestamp); X = sensorData.values[0]; Y = sensorData.values[1]; Z = sensorData.values[2]; BiasX = sensorData.values[3]; BiasY = sensorData.values[4]; BiasZ = sensorData.values[5]; DataUpdated?.Invoke(this, new UncalibratedGyroscopeDataUpdatedEventArgs(sensorData.values)); }; int error = Interop.SensorListener.SetEventCallback(ListenerHandle, Interval, _callback, IntPtr.Zero); if (error != (int)SensorError.None) { Log.Error(Globals.LogTag, "Error setting event callback for uncalibrated gyroscope sensor"); throw SensorErrorFactory.CheckAndThrowException(error, "Unable to set event callback for uncalibrated gyroscope"); } }
internal override void EventListenStart() { _callback = (IntPtr sensorHandle, IntPtr eventPtr, IntPtr data) => { Interop.SensorEventStruct sensorData = Interop.IntPtrToEventStruct(eventPtr); TimeSpan = new TimeSpan((Int64)sensorData.timestamp); X = sensorData.values[0]; Y = sensorData.values[1]; Z = sensorData.values[2]; W = sensorData.values[3]; Accuracy = sensorData.accuracy; DataUpdated?.Invoke(this, new MagnetometerRotationVectorSensorDataUpdatedEventArgs(sensorData.values, sensorData.accuracy)); }; int error = Interop.SensorListener.SetEventCallback(ListenerHandle, Interval, _callback, IntPtr.Zero); if (error != (int)SensorError.None) { Log.Error(Globals.LogTag, "Error setting event callback for magnetometer rotation vector sensor"); throw SensorErrorFactory.CheckAndThrowException(error, "Unable to set event callback for magnetometer rotation vector"); } }