internal GLResultsTable(List<PerformanceCubeResult> resultsArray, DeviceTable deviceTable) { foreach (PerformanceCubeResult result in resultsArray) { int indexOfDevice = deviceTable.Find(result.DeviceDatabaseId, result.IsMonoTouch); if (indexOfDevice > -1) { DeviceTable.DeviceForTable dft = deviceTable[indexOfDevice]; if (dft != null && dft.Checked) { bool insert = true; int insertIndex = 0; for (int i=0; i<this._resultRows.Count;i++) { if (_resultRows[i].NumTrangles == result.NumberOfTriangles) { insert = false; insertIndex = i; break; } else if (_resultRows[i].NumTrangles > result.NumberOfTriangles) { insertIndex = i; break; } else if (i+1==_resultRows.Count) { insertIndex = _resultRows.Count; } } ResultRow row; if (insert) { row = new ResultRow (result.NumberOfTriangles, deviceTable.NuberOfDevices); if (insertIndex < _resultRows.Count) _resultRows.Insert (insertIndex, row); else _resultRows.Add (row); } else row = _resultRows[insertIndex]; row[indexOfDevice] = result.FramesPerSecond; } } } }
internal FLOPResultsTable(List<MatrixTestResult> resultsArray, DeviceTable deviceTable) { foreach (MatrixTestResult result in resultsArray) { int indexOfDevice = deviceTable.Find (result.DeviceDatabaseId); if (indexOfDevice > -1) { ResultRow resultRow = _resultRows.Find ((e)=>{return e.DeviceId == result.DeviceDatabaseId;}); if (resultRow == null) { resultRow = new ResultRow (result.DeviceDatabaseId); _resultRows.Add (resultRow); } resultRow.AddResultInfo (result); } } }