Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
Int32Aggregator.cs
Go to the documentation of this file.
2
4
6public struct Int32Aggregator
7{
8 private int _result;
9
10 private int _cnt;
11
12 public int SumResult => _result;
13
14 public int AverageResult => _result / _cnt;
15
16 public int MinimumResult => _result;
17
18 public int MaximumResult => _result;
19
20 public bool IsEmpty => _cnt == 0;
21
22 public void Create()
23 {
24 _cnt = 0;
25 }
26
27 public void Sum(int value)
28 {
29 if (_cnt == 0)
30 {
31 _result = value;
32 _cnt = 1;
33 }
34 else
35 {
36 _result += value;
37 }
38 }
39
40 public void Average(int value)
41 {
42 if (_cnt == 0)
43 {
44 _result = value;
45 }
46 else
47 {
48 _result += value;
49 }
50 _cnt++;
51 }
52
53 public void Minimum(int value)
54 {
55 if (_cnt == 0 || value < _result)
56 {
57 _result = value;
58 }
59 _cnt = 1;
60 }
61
62 public void Maximum(int value)
63 {
64 if (_cnt == 0 || value > _result)
65 {
66 _result = value;
67 }
68 _cnt = 1;
69 }
70}