/// <summary> /// Occurs each time the average speed changes. Allows for UI update by marshalling the call accordingly. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MetricsChangedEventHandler(object sender, NormalizedPower.MetricsChangedEventArgs e) { //if (!m_dispatcher.CheckAccess()) // are we currently on the UI thread? //{ // // We're not in the UI thread, ask the dispatcher to call this same method in the UI thread, then exit // m_dispatcher.BeginInvoke(new MetricsChangedEventHandlerDelegate(MetricsChangedEventHandler), new object[] { sender, e }); // return; //} lock (this.lvOverall) { SummaryListViewItem listViewItem = m_summaryHelper.SummaryListViewItem; SummaryItem summaryItem = listViewItem.SummaryItem; summaryItem.Average = e.OverallPower.ToString(); if (m_currentUser.WeightAsKgs > 0) { summaryItem.AverageWkg = Math.Round(e.OverallPower / m_currentUser.WeightAsKgs, 2).ToString("#.00"); } summaryItem.Speed = e.AverageMph.ToString("#.0"); summaryItem.SpeedKph = e.AverageKph.ToString("#.0"); } }
/// <summary> /// Occurs each time the normalized power changes. Allows for UI update by marshalling the call accordingly. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void NormalizedPowerChangedEventHandler(object sender, NormalizedPower.NormalizedPowerChangedEventArgs e) { //if (!m_dispatcher.CheckAccess()) // are we currently on the UI thread? //{ // // We're not in the UI thread, ask the dispatcher to call this same method in the UI thread, then exit // m_dispatcher.BeginInvoke(new NormalizedPowerChangedEventHandlerDelegate(NormalizedPowerChangedEventHandler), new object[] { sender, e }); // return; //} lock (this.lvOverall) { SummaryListViewItem listViewItem = m_summaryHelper.SummaryListViewItem; SummaryItem summaryItem = listViewItem.SummaryItem; if (m_currentUser.PowerThreshold > 0) { summaryItem.If = Math.Round(e.NormalizedPower / (double)m_currentUser.PowerThreshold, 2).ToString("#.00"); } else { summaryItem.If = ".00"; } summaryItem.Normalized = e.NormalizedPower.ToString(); if (m_currentUser.WeightAsKgs > 0) { summaryItem.NormalizedWkg = Math.Round(e.NormalizedPower / m_currentUser.WeightAsKgs, 2).ToString("#.00"); } } }
private void UpdateSummaryMetrics(string Average, string AverageWkg, string Speed, string SpeedKph) { lock (this.lvOverall) { SummaryListViewItem listViewItem = m_summaryHelper.SummaryListViewItem; SummaryItem summaryItem = listViewItem.SummaryItem; summaryItem.Average = Average; summaryItem.AverageWkg = AverageWkg; summaryItem.Speed = Speed; summaryItem.SpeedKph = SpeedKph; } }
private void UpdateSummaryNormalizedPower(string If, string Normalized, string NormalizedWkg, string Tss) { lock (this.lvOverall) { SummaryListViewItem listViewItem = m_summaryHelper.SummaryListViewItem; SummaryItem summaryItem = listViewItem.SummaryItem; summaryItem.If = If; summaryItem.Normalized = Normalized; summaryItem.NormalizedWkg = NormalizedWkg; summaryItem.Tss = Tss; } }
public SummaryHelper(SummaryListViewItem summaryListViewItem) { this.SummaryListViewItem = summaryListViewItem; }