Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WritePayload()

override void System.Diagnostics.Tracing.EventCounter.WritePayload ( float intervalSec,
int pollingIntervalMillisec )
inlinepackage

Definition at line 75 of file EventCounter.cs.

76 {
77 lock (this)
78 {
79 Flush();
80 CounterPayload counterPayload = new CounterPayload();
81 counterPayload.Count = _count;
82 counterPayload.IntervalSec = intervalSec;
83 if (0 < _count)
84 {
85 counterPayload.Mean = _sum / (double)_count;
86 counterPayload.StandardDeviation = Math.Sqrt(_sumSquared / (double)_count - _sum * _sum / (double)_count / (double)_count);
87 }
88 else
89 {
90 counterPayload.Mean = 0.0;
91 counterPayload.StandardDeviation = 0.0;
92 }
93 counterPayload.Min = _min;
94 counterPayload.Max = _max;
95 counterPayload.Series = $"Interval={pollingIntervalMillisec}";
96 counterPayload.CounterType = "Mean";
97 counterPayload.Metadata = GetMetadataString();
98 counterPayload.DisplayName = base.DisplayName ?? "";
99 counterPayload.DisplayUnits = base.DisplayUnits ?? "";
100 counterPayload.Name = base.Name;
102 base.EventSource.Write("EventCounters", new EventSourceOptions
103 {
104 Level = EventLevel.LogAlways
105 }, new CounterPayloadType(counterPayload));
106 }
107 }

References System.Diagnostics.Tracing.EventCounter._count, System.Diagnostics.Tracing.EventCounter._max, System.Diagnostics.Tracing.EventCounter._min, System.Diagnostics.Tracing.EventCounter._sum, System.Diagnostics.Tracing.EventCounter._sumSquared, System.Diagnostics.Tracing.EventCounter.Flush(), System.Diagnostics.Tracing.DiagnosticCounter.GetMetadataString(), System.Diagnostics.Tracing.EventCounter.ResetStatistics(), and System.Math.Sqrt().