public void SpeakSignalLevels(ISignalResponse response, TimeSpan requestTime) { lock (lockObject) { if (!ttsLoaded) return; if (!app.ActivityStarted) return; try { if (response != null && response.Signal != null && response.Signal.Snr >= 0 && !mTts.IsSpeaking) { Log.Debug(TAG,"Speaking signal"); mTts.Speak(response.Signal.Snr.ToString(), QueueMode.Add, null); Log.Debug(TAG,"Speak finished"); } } catch (Exception ex) { Log.Error(TAG, string.Format("SpeakSignalLevels failed with error {0}", ex.Message)); } } }
private void SetSignalLevels(ISignalResponse response, TimeSpan requestTime) { if (!fragmentVisible || this.View == null) return; try { if (response != null) { lblSNR.Text = string.Format("SNR: {0} %", response.Signal.Snr > 0 ? response.Signal.Snr : 0); lblAGC.Text = string.Format("ACG: {0} %", response.Signal.Acg > 0 ? response.Signal.Acg : 0); lblBER.Text = string.Format("BER: {0}", response.Signal.Ber > 0 ? response.Signal.Ber : 0); pbSNR.Progress = response.Signal.Snr; pbAGC.Progress = response.Signal.Acg; pbBER.Progress = response.Signal.Ber; lblrqTime.Text = string.Format("{0}: {1} ms", GetString(Resource.String.request_time), (int)requestTime.TotalMilliseconds); if (response.Signal is IE2Signal) { var db = ((IE2Signal)response.Signal).Db; db = db > 0 ? db : 0; lbldB.Text = string.Format("dB: {0}", db); db = db * 100 > 1500 ? 1500 : db * 100; pbdB.Progress = (int)db; } else { var locked = ((IE1Signal)response.Signal).Lock; var synced = ((IE1Signal)response.Signal).Sync; ceLOCK.Checked = locked; ceSYNC.Checked = synced; } } else { ResetControls(); } } catch (Exception ex) { Log.Error("SignalFragment", string.Format("SetSignalLevels failed with error {0}", ex.Message)); } }