Material Clustering Benchmark
BenchmarkReportCollection.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
4using UnityEngine;
5
6/*
7 BenchmarkReportCollection {
8 reports : [
9
10 {
11 launchParameters,
12 logType
13 measurement : {
14 varianceByFrame: [
15 {
16 frame,
17 variance
18 },
19 ...
20 ]
21 },
22 },
23
24 {
25 launchParameters,
26 logType
27 measurement : {
28 peakFrameTime,
29 avgFrameTime
30 }
31 },
32
33 ...
34 ]
35 }
36*/
37
38[Serializable]
39public abstract class ABenchmarkMeasurement { }
40
41[Serializable]
43{
44 [Serializable]
46 {
47 public long frameIndex;
48 public float variance;
49
51 {
52 this.frameIndex = frameIndex;
53 this.variance = variance ?? -1;
54 }
55 }
56
57 public List<FrameVarianceRecord> frameVarianceRecords;
58
60 {
61 this.frameVarianceRecords = new List<FrameVarianceRecord>();
62 }
63}
64
65[Serializable]
67{
68 [Serializable]
69 public class FrameTimeRecord
70 {
71 public long frameIndex;
72 public float time;
73
74 public FrameTimeRecord(long frameIndex, float time)
75 {
76 this.frameIndex = frameIndex;
77 this.time = time;
78 }
79 }
80
81 public List<FrameTimeRecord> frameTimeRecords;
82
84 {
85 this.frameTimeRecords = new List<FrameTimeRecord>();
86 }
87}
88
89[Serializable]
90public class BenchmarkReport
91{
92 [SerializeReference]
94
95 [SerializeReference]
97
99
104 )
105 {
106 this.measurement = measurement;
107 this.serializableLaunchParameters = serializableLaunchParameters;
108 this.logType = logType;
109 }
110}
111
112[Serializable]
114{
115 public List<BenchmarkReport> reports;
116
118 {
119 this.reports = new List<BenchmarkReport>();
120 }
121}
List< FrameTimeRecord > frameTimeRecords
List< FrameVarianceRecord > frameVarianceRecords
ABenchmarkMeasurement measurement
ClusteringTest.LogType logType
LaunchParameters.SerializableLaunchParameters serializableLaunchParameters
BenchmarkReport(ABenchmarkMeasurement measurement, LaunchParameters.SerializableLaunchParameters serializableLaunchParameters, ClusteringTest.LogType logType)