internal IStatSessionSummary SummariseSession(IStatSession session, IStatSessionSummary baseline) { // FIXME: Jankness var ret = (StatSessionSummary)baseline; var summarySection = new StatSessionSummarySection("Session summary"); summarySection.Add("Session type", session.SessionType); summarySection.Add("Commander", session.SessionCommanderName); summarySection.Add("Ship", session.SessionShipName); summarySection.Add("Start System", session.LocationStart.SystemName); summarySection.Add("Start System body", session.LocationStart.BodyName); summarySection.Add("End System", session.LocationEnd.SystemName); summarySection.Add("End System body", session.LocationEnd.SystemName); summarySection.Add("Session started", session.SessionStarted); summarySection.Add("Session finished", session.SessionEnded); summarySection.Add("Session consumed", session.SessionTimeConsumed); summarySection.Add("Session minutes", (int)session.SessionTimeConsumed.TotalMinutes); ret.Add(summarySection); var totalsSection = new StatSessionSummarySection("Session totals"); foreach (var item in session.SummaryStats) { totalsSection.Add(item.Key, item.Value); } ret.Add(totalsSection); var totalMinutes = session.SessionTimeConsumed.TotalMinutes; var averagesSection = new StatSessionSummarySection("Session averages"); foreach (var item in session.SummaryStats) { averagesSection.Add(item.Key + "(/m)", item.Value / totalMinutes); } ret.Add(averagesSection); return(ret); }
internal void Add(StatSessionSummarySection summarySection) { _sections.Add(summarySection); }