12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- using System;
-
- namespace Unity.PerformanceTesting
- {
- /// <summary>
- /// Measurement unit used for sample groups.
- /// </summary>
- public enum SampleUnit
- {
- /// <summary>
- /// Nanoseconds.
- /// </summary>
- Nanosecond,
-
- /// <summary>
- /// Microseconds.
- /// </summary>
- Microsecond,
-
- /// <summary>
- /// Milliseconds.
- /// </summary>
- Millisecond,
-
- /// <summary>
- /// Seconds.
- /// </summary>
- Second,
-
- /// <summary>
- /// Bytes.
- /// </summary>
- Byte,
-
- /// <summary>
- /// Kilobytes.
- /// </summary>
- Kilobyte,
-
- /// <summary>
- /// Megabytes.
- /// </summary>
- Megabyte,
-
- /// <summary>
- /// Gigabytes.
- /// </summary>
- Gigabyte,
-
- /// <summary>
- /// Undefined, represents any other unit we don't have by default. When using it make sure your sample group name represents the measurement.
- /// </summary>
- Undefined
- }
-
- static class SampleUnitExtensions
- {
- public static string ShortName(this SampleUnit s)
- {
- switch (s)
- {
- case SampleUnit.Nanosecond:
- return "ns";
- case SampleUnit.Microsecond:
- return "μs";
- case SampleUnit.Millisecond:
- return "ms";
- case SampleUnit.Second:
- return "s";
- case SampleUnit.Byte:
- return "b";
- case SampleUnit.Kilobyte:
- return "kb";
- case SampleUnit.Megabyte:
- return "mb";
- case SampleUnit.Gigabyte:
- return "gb";
- case SampleUnit.Undefined:
- return "";
- default:
- throw new ArgumentOutOfRangeException(nameof(s), s, null);
- }
- }
- }
- }
|