/// <summary> /// Sets the fastest girl time /// </summary> /// <param name="key">athlete's key</param> /// <param name="name">athlete's name</param> /// <param name="time">athlete's time</param> /// <param name="date">date of the time</param> public void SetFastestGirl( int key, string name, TimeType time, DateType date) { if (FastestGirls.Count > 0 && time < FastestGirls[FastestGirls.Count - 1].Time) { for (int index = 0; index < FastestGirls.Count; ++index) { if (time < FastestGirls[index].Time) { FastestGirls.Insert(index, new AthleteTime(key, name, time, date)); break; } } } else if (FastestGirls.Count < maxSize) { FastestGirls.Add(new AthleteTime(key, name, time, date)); } // Remove the last element if the list now exceeds the maximum size. if (FastestGirls.Count > maxSize) { FastestGirls.RemoveAt(FastestGirls.Count - 1); } this.FastestDataChangedEvent?.Invoke(this, new EventArgs()); }
/// <summary> /// Remove a record corresponding to the argument data if one exists. /// </summary> /// <param name="key">athlete key</param> /// <param name="name">athlete name</param> /// <param name="time">athlete time</param> public void RemoveFastestGirl( int key, string name, TimeType time) { if (FastestGirls.Count > 0) { for (int index = 0; index < FastestGirls.Count; ++index) { if (key == FastestGirls[index].Key && name == FastestGirls[index].Name && time == FastestGirls[index].Time) { FastestGirls.RemoveAt(index); this.FastestDataChangedEvent?.Invoke(this, new EventArgs()); return; } } } }