private SlotSummary CreateSlotSummary(ICollection <SlotModel> slots, DateTime updateDateTime) { var slotSummary = new SlotSummary(); slotSummary.HfmVersion = Application.VersionWithRevision; slotSummary.NumberFormat = _prefs.GetPpdFormatString(); slotSummary.UpdateDateTime = updateDateTime; slotSummary.SlotTotals = slots.GetSlotTotals(); slotSummary.Slots = SortSlots(slots).Select(AutoMapper.Mapper.Map <SlotModel, SlotData>).ToList(); return(slotSummary); }
public void RefreshControlsWithTotalsData(SlotTotals totals) { SetNotifyIconText(String.Format("{0} Working Slots{3}{1} Non-Working Slots{3}{2:" + _prefs.GetPpdFormatString() + "} PPD", totals.WorkingSlots, totals.NonWorkingSlots, totals.PPD, Environment.NewLine)); string clientLabel = totals.WorkingSlots == 1 ? "Slot" : "Slots"; SetStatusLabelHostsText(String.Format(CultureInfo.CurrentCulture, "{0} {1}", totals.WorkingSlots, clientLabel)); SetStatusLabelPPDText(String.Format(CultureInfo.CurrentCulture, "{0:" + _prefs.GetPpdFormatString() + "} PPD", totals.PPD)); }
private void SetupDataGridView(IPreferenceSet prefs) { // Add Column Selector new DataGridViewColumnSelector(dataGridView1); string[] names = QueryField.GetColumnNames(); dataGridView1.AutoGenerateColumns = false; // ReSharper disable PossibleNullReferenceException dataGridView1.Columns.Add(QueryFieldName.ProjectID.ToString(), names[(int)QueryFieldName.ProjectID]); dataGridView1.Columns[QueryFieldName.ProjectID.ToString()].DataPropertyName = QueryFieldName.ProjectID.ToString(); dataGridView1.Columns.Add(QueryFieldName.WorkUnitName.ToString(), names[(int)QueryFieldName.WorkUnitName]); dataGridView1.Columns[QueryFieldName.WorkUnitName.ToString()].DataPropertyName = QueryFieldName.WorkUnitName.ToString(); dataGridView1.Columns.Add(QueryFieldName.Name.ToString(), names[(int)QueryFieldName.Name]); dataGridView1.Columns[QueryFieldName.Name.ToString()].DataPropertyName = QueryFieldName.Name.ToString(); dataGridView1.Columns.Add(QueryFieldName.Path.ToString(), names[(int)QueryFieldName.Path]); dataGridView1.Columns[QueryFieldName.Path.ToString()].DataPropertyName = QueryFieldName.Path.ToString(); dataGridView1.Columns.Add(QueryFieldName.Username.ToString(), names[(int)QueryFieldName.Username]); dataGridView1.Columns[QueryFieldName.Username.ToString()].DataPropertyName = QueryFieldName.Username.ToString(); dataGridView1.Columns.Add(QueryFieldName.Team.ToString(), names[(int)QueryFieldName.Team]); dataGridView1.Columns[QueryFieldName.Team.ToString()].DataPropertyName = QueryFieldName.Team.ToString(); dataGridView1.Columns.Add(QueryFieldName.SlotType.ToString(), names[(int)QueryFieldName.SlotType]); dataGridView1.Columns[QueryFieldName.SlotType.ToString()].DataPropertyName = QueryFieldName.SlotType.ToString(); dataGridView1.Columns.Add(QueryFieldName.Core.ToString(), names[(int)QueryFieldName.Core]); dataGridView1.Columns[QueryFieldName.Core.ToString()].DataPropertyName = QueryFieldName.Core.ToString(); dataGridView1.Columns.Add(QueryFieldName.CoreVersion.ToString(), names[(int)QueryFieldName.CoreVersion]); dataGridView1.Columns[QueryFieldName.CoreVersion.ToString()].DataPropertyName = QueryFieldName.CoreVersion.ToString(); dataGridView1.Columns.Add(QueryFieldName.FrameTime.ToString(), names[(int)QueryFieldName.FrameTime]); dataGridView1.Columns[QueryFieldName.FrameTime.ToString()].DataPropertyName = QueryFieldName.FrameTime.ToString(); dataGridView1.Columns.Add(QueryFieldName.KFactor.ToString(), names[(int)QueryFieldName.KFactor]); dataGridView1.Columns[QueryFieldName.KFactor.ToString()].DataPropertyName = QueryFieldName.KFactor.ToString(); dataGridView1.Columns.Add(QueryFieldName.PPD.ToString(), names[(int)QueryFieldName.PPD]); dataGridView1.Columns[QueryFieldName.PPD.ToString()].DataPropertyName = QueryFieldName.PPD.ToString(); dataGridView1.Columns[QueryFieldName.PPD.ToString()].DefaultCellStyle = new DataGridViewCellStyle { Format = prefs.GetPpdFormatString() }; dataGridView1.Columns.Add(QueryFieldName.DownloadDateTime.ToString(), names[(int)QueryFieldName.DownloadDateTime]); dataGridView1.Columns[QueryFieldName.DownloadDateTime.ToString()].DataPropertyName = QueryFieldName.DownloadDateTime.ToString(); dataGridView1.Columns.Add(QueryFieldName.CompletionDateTime.ToString(), names[(int)QueryFieldName.CompletionDateTime]); dataGridView1.Columns[QueryFieldName.CompletionDateTime.ToString()].DataPropertyName = QueryFieldName.CompletionDateTime.ToString(); dataGridView1.Columns.Add(QueryFieldName.Credit.ToString(), names[(int)QueryFieldName.Credit]); dataGridView1.Columns[QueryFieldName.Credit.ToString()].DataPropertyName = QueryFieldName.Credit.ToString(); dataGridView1.Columns[QueryFieldName.Credit.ToString()].DefaultCellStyle = new DataGridViewCellStyle { Format = prefs.GetPpdFormatString() }; dataGridView1.Columns.Add(QueryFieldName.Frames.ToString(), names[(int)QueryFieldName.Frames]); dataGridView1.Columns[QueryFieldName.Frames.ToString()].DataPropertyName = QueryFieldName.Frames.ToString(); dataGridView1.Columns.Add(QueryFieldName.FramesCompleted.ToString(), names[(int)QueryFieldName.FramesCompleted]); dataGridView1.Columns[QueryFieldName.FramesCompleted.ToString()].DataPropertyName = QueryFieldName.FramesCompleted.ToString(); dataGridView1.Columns.Add(QueryFieldName.Result.ToString(), names[(int)QueryFieldName.Result]); dataGridView1.Columns[QueryFieldName.Result.ToString()].DataPropertyName = QueryFieldName.Result.ToString(); dataGridView1.Columns.Add(QueryFieldName.Atoms.ToString(), names[(int)QueryFieldName.Atoms]); dataGridView1.Columns[QueryFieldName.Atoms.ToString()].DataPropertyName = QueryFieldName.Atoms.ToString(); dataGridView1.Columns.Add(QueryFieldName.ProjectRun.ToString(), names[(int)QueryFieldName.ProjectRun]); dataGridView1.Columns[QueryFieldName.ProjectRun.ToString()].DataPropertyName = QueryFieldName.ProjectRun.ToString(); dataGridView1.Columns.Add(QueryFieldName.ProjectClone.ToString(), names[(int)QueryFieldName.ProjectClone]); dataGridView1.Columns[QueryFieldName.ProjectClone.ToString()].DataPropertyName = QueryFieldName.ProjectClone.ToString(); dataGridView1.Columns.Add(QueryFieldName.ProjectGen.ToString(), names[(int)QueryFieldName.ProjectGen]); dataGridView1.Columns[QueryFieldName.ProjectGen.ToString()].DataPropertyName = QueryFieldName.ProjectGen.ToString(); // ReSharper restore PossibleNullReferenceException }
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { txtBenchmarks.Text = String.Empty; int projectId = (int)listBox1.SelectedItem; Protein protein = _proteinService.Get(projectId); if (protein == null) { Logger.WarnFormat("Could not find Project {0}.", projectId); } var projectInfoLines = new List <string>(); PopulateProteinInformation(protein, projectInfoLines); List <ProteinBenchmark> list = _benchmarkService.GetBenchmarks(_currentSlotIdentifier, projectId).ToList(); list.Sort((benchmark1, benchmark2) => benchmark1.OwningSlotName.CompareTo(benchmark2.OwningSlotName)); var benchmarkInfoLines = new List <string>(projectInfoLines); foreach (ProteinBenchmark benchmark in list) { UnitInfoModel unitInfoModel = null; SlotStatus status = SlotStatus.Unknown; var slotModel = _clientConfiguration.Slots.FirstOrDefault(x => x.Name == benchmark.OwningSlotName && x.Settings.DataPath() == benchmark.OwningClientPath && x.UnitInfoModel.UnitInfoData.ProjectID == benchmark.ProjectID); if (slotModel != null && slotModel.ProductionValuesOk) { unitInfoModel = slotModel.UnitInfoModel; status = slotModel.Status; } PopulateBenchmarkInformation(protein, benchmark, unitInfoModel, status, _prefs.GetPpdFormatString(), benchmarkInfoLines); } UpdateBenchmarkText(benchmarkInfoLines); tabControl1.SuspendLayout(); int clientsPerGraph = _prefs.Get <int>(Preference.BenchmarksClientsPerGraph); SetupGraphTabs(list.Count, clientsPerGraph); int tabIndex = 1; if (GraphLayoutType.Equals(GraphLayoutType.ClientsPerGraph)) { int lastDisplayed = 0; for (int i = 1; i < list.Count; i++) { if (i % clientsPerGraph == 0) { var benchmarks = new ProteinBenchmark[clientsPerGraph]; list.CopyTo(lastDisplayed, benchmarks, 0, clientsPerGraph); DrawGraphs(tabIndex, projectInfoLines, benchmarks, protein); tabIndex++; lastDisplayed = i; } } if (lastDisplayed < list.Count) { var benchmarks = new ProteinBenchmark[list.Count - lastDisplayed]; list.CopyTo(lastDisplayed, benchmarks, 0, list.Count - lastDisplayed); DrawGraphs(tabIndex, projectInfoLines, benchmarks, protein); } } else { DrawGraphs(tabIndex, projectInfoLines, list, protein); } tabControl1.ResumeLayout(true); }