public void ReceivePacket(byte[] packet) { try { lastPacket = protocol.ParsePacket(packet); } catch (Exception e) { Log.E(this, "Failed to parse packet: " + packet.ToByteString(), e); } }
private void HandleNewGaugePacket(IConnection connection, GaugePacket packet) { /* * if (!isTesting) { * // We are not currently testing, and can disregard any new values. * return; * } */ RecordConnectionMeasurement(connection, currentTargetPointIndex); }
private void HandlePacketInternal(byte[] packet) { if (packet == null) { return; } try { GaugePacket gp = __protocol.ParsePacket(packet); int oldBattery = battery; battery = gp.battery; var changed = oldBattery != battery; for (int i = 0; i < sensorCount; i++) { var reading = gp.gaugeReadings[i]; var sensor = this[i]; if (reading.sensorType != sensor.type) { return; } if (sensor.measurement != gp.gaugeReadings[i].reading) { sensor.SetMeasurement(gp.gaugeReadings[i].reading); changed = true; } sensor.removed = reading.removed; var removedChanged = sensor.removed != removedStates[i]; removedStates[i] = sensor.removed; if (removedChanged) { sensor.NotifyInvalidated(); } } if (changed || DateTime.Now - lastNotify > MAX_UPDATE_DELAY) { last = DateTime.Now; NotifyOfDeviceEvent(DeviceEvent.EType.NewData); lastNotify = DateTime.Now; } } catch (Exception) { NotifyOfDeviceEvent(DeviceEvent.EType.NewData); } }