PerfReportTool 4.51 - scrollable summary table improvements

- Add support for more than two sticky columns in collated summary tables
- Add format info for columns, replaces "lowIsBad" list. Allows specifying auto colorization rules and also numerical formatting
- Add support for multiple section boundaries, and minor (dashed line) section boundaries
- Section boundaries no longer require startToken or endToken (both are now optional)
- Section boundaries now can be specific to collated or full tables

#ROBOMERGE-OWNER: ben.woodhouse
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 16740162 via CL 16740164 via CL 16740166 via CL 16740221 via CL 16742906
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v835-16672529)

[CL 16742916 by ben woodhouse in ue5-main branch]
This commit is contained in:
ben woodhouse
2021-06-22 10:37:32 -04:00
parent cbe9ca22ea
commit 94a5cbe929
3 changed files with 329 additions and 167 deletions

View File

@@ -22,7 +22,7 @@ namespace PerfReportTool
{
class Version
{
private static string VersionString = "4.50";
private static string VersionString = "4.51";
public static string Get() { return VersionString; }
};
@@ -962,10 +962,10 @@ namespace PerfReportTool
void WriteSummaryTableReport(string outputDir, string filenameWithoutExtension, SummaryTable table, SummaryTableInfo tableInfo, bool bCollated, bool bToCSV, bool bSpreadsheetFriendlyStrings, string weightByColumnNameOverride)
{
string weightByColumnName = weightByColumnNameOverride != null ? weightByColumnNameOverride : tableInfo.weightByColumn;
WriteSummaryTableReport(outputDir, filenameWithoutExtension, table, tableInfo.columnFilterList, tableInfo.rowSortList, bCollated, bToCSV, bSpreadsheetFriendlyStrings, tableInfo.sectionBoundary, weightByColumnName);
WriteSummaryTableReport(outputDir, filenameWithoutExtension, table, tableInfo.columnFilterList, tableInfo.rowSortList, bCollated, bToCSV, bSpreadsheetFriendlyStrings, tableInfo.sectionBoundaries, weightByColumnName);
}
void WriteSummaryTableReport(string outputDir, string filenameWithoutExtension, SummaryTable table, List<string> columnFilterList, List<string> rowSortList, bool bCollated, bool bToCSV, bool bSpreadsheetFriendlyStrings, SummarySectionBoundaryInfo sectionBoundaryInfo, string weightByColumnName)
void WriteSummaryTableReport(string outputDir, string filenameWithoutExtension, SummaryTable table, List<string> columnFilterList, List<string> rowSortList, bool bCollated, bool bToCSV, bool bSpreadsheetFriendlyStrings, List<SummarySectionBoundaryInfo> sectionBoundaries, string weightByColumnName)
{
if (GetBoolArg("noWeightedAvg"))
{
@@ -991,7 +991,7 @@ namespace PerfReportTool
{
filteredTable.ApplyDisplayNameMapping(statDisplaynameMapping);
string VersionString = GetBoolArg("noWatermarks") ? "" : Version.Get();
filteredTable.WriteToHTML(filenameWithoutExtension+".html", VersionString, bSpreadsheetFriendlyStrings, sectionBoundaryInfo, bScrollableTable, addMinMaxColumns, GetIntArg("maxSummaryTableStringLength", -1), reportXML.summaryTableLowIsBadStatList, weightByColumnName);
filteredTable.WriteToHTML(filenameWithoutExtension+".html", VersionString, bSpreadsheetFriendlyStrings, sectionBoundaries, bScrollableTable, addMinMaxColumns, GetIntArg("maxSummaryTableStringLength", -1), reportXML.columnFormatInfoList, weightByColumnName);
}
}
@@ -2297,10 +2297,10 @@ namespace PerfReportTool
}
}
XElement summaryTableLowIsBadStatListEl = rootElement.Element("summaryTableLowIsBadStats");
if (summaryTableLowIsBadStatListEl != null)
XElement summaryTableColumnInfoListEl = rootElement.Element("summaryTableColumnFormatInfo");
if (summaryTableColumnInfoListEl != null)
{
summaryTableLowIsBadStatList = summaryTableLowIsBadStatListEl.Value.Split(',');
columnFormatInfoList = new SummaryTableColumnFormatInfoCollection(summaryTableColumnInfoListEl);
}
// Read the derived metadata mappings
@@ -2543,7 +2543,7 @@ namespace PerfReportTool
Dictionary<string,XElement> sharedSummaries;
Dictionary<string, GraphSettings> graphs;
Dictionary<string, string> statDisplayNameMapping;
public string [] summaryTableLowIsBadStatList;
public SummaryTableColumnFormatInfoCollection columnFormatInfoList;
string baseXmlDirectory;
List<CsvEventStripInfo> csvEventsToStrip;