private void offlineAnlyzeProcess() { try { //double[,] result = IVitalSignsService vitalSignsService = ServiceManager.getOneVitalSignsService(); FrequencyInfo frequency = vitalSignsService.offlineAnalyze(filename); ServiceManager.closeService(vitalSignsService); double[] heartbeat = frequency.heartbeat; double[] breath = frequency.breath; double[] t = frequency.t; double meanBreath = frequency.meanBreath; double meanHeartbeat = frequency.meanHeartbeat; this.BeginInvoke(method: new Action(() => { for (int i = 0; i < heartbeat.Length; i++) { chart1.Series[BREATH_RATE].Points.AddXY(t[i], breath[i]); chart1.Series[HEART_RATE].Points.AddXY(t[i], heartbeat[i]); } updateBreathAndHeartbeat(meanBreath, meanHeartbeat); updateGauge(); })); } catch (Exception ex) { Console.WriteLine("服务调用失败" + ex.ToString()); } }
public void realtimeAnalyze() { IVitalSignsService vitalSignsService = ServiceManager.getOneVitalSignsService(); FrequencyInfo fre = vitalSignsService.realtimeAnalyze(); ServiceManager.closeService(vitalSignsService); if (fre != null) { _vitalSignsForm.updateFail(fre.fail); if (fre.fail == 3 || fre.fail == 0) { _vitalSignsForm.updateBreathAndHeartbeat(fre.meanBreath, fre.meanHeartbeat); frequencyTable.add(fre.meanBreath, fre.meanHeartbeat, DateTime.Now.ToString("hh:mm:ss")); } } }
/// <summary> /// Sets the value of a frequency field. /// </summary> /// <param name="editableRoot"> /// The editable root. /// </param> /// <param name="frequencyFieldName"> /// The frequency field name. /// </param> /// <param name="value"> /// The value. /// </param> public static void SetFrequencyInfo(this IEditableRoot editableRoot, string frequencyFieldName, FrequencyInfo value) { editableRoot.SetValueByPropertyName(frequencyFieldName + "_Info", value); }