private void UpdateInfo(Performance.Group group) { string[] details = { "Gesamtdauer: " + Units.FormatTime(group.Time(true, true)), "Größe: " + Units.FormatSize(group.TotalSize) + " (" + group.FileCount + " Dateien mit je " + Units.FormatSize(group.FileSize) + ")", "", "Übertragungsrate: " + Units.FormatRate(group.TransmissionRate(true, true)), "... ohne Verzögerung vor Stream: " + Units.FormatRate(group.TransmissionRate(false, true)), "... ohne Verzögerung nach Stream: " + Units.FormatRate(group.TransmissionRate(true, false)), "... ohne Verzögerungen: " + Units.FormatRate(group.TransmissionRate(false, false)) }; detailsTextBox.Text = string.Join("\r\n", details); performanceGraphView.CreateGraph(group); }
public void CreateGraph(Performance.Group group) { ulong totalTime = group.Time(true, true); ulong totalSize = group.TotalSize; ulong currentTime = 0; ulong currentSize = 0; PointF[] points = new PointF[group.FileCount + 1]; int pointIndex = 0; points[pointIndex++] = new PointF(0, 0); foreach (Performance.File file in group.Files) { currentTime += file.Time(true, true); currentSize += file.FileSize; points[pointIndex++] = new PointF(currentTime, currentSize); } Axis axisX = new Axis() { Range = new Range(0, totalTime), Label = "Zeit", Format = (f) => "" + Units.FormatTime((ulong)f) }; Axis axisY = new Axis() { Range = new Range(0, totalSize), Label = "Größe", Format = (f) => Units.FormatSize(f) }; graph = new Graph() { Points = points, AxisX = axisX, AxisY = axisY }; Refresh(); }