Skip to main content

subtr_actor/stats/export/
territorial_pressure.rs

1use crate::*;
2
3use super::*;
4
5impl StatFieldProvider for TerritorialPressureStats {
6    fn visit_stat_fields(&self, visitor: &mut dyn FnMut(ExportedStat)) {
7        visitor(ExportedStat::float(
8            "territorial_pressure",
9            "tracked_time",
10            StatUnit::Seconds,
11            self.tracked_time,
12        ));
13        visitor(ExportedStat::unsigned(
14            "territorial_pressure",
15            "team_zero_session_count",
16            StatUnit::Count,
17            self.team_zero_session_count,
18        ));
19        visitor(ExportedStat::unsigned(
20            "territorial_pressure",
21            "team_one_session_count",
22            StatUnit::Count,
23            self.team_one_session_count,
24        ));
25        visitor(ExportedStat::float(
26            "territorial_pressure",
27            "team_zero_session_time",
28            StatUnit::Seconds,
29            self.team_zero_session_time,
30        ));
31        visitor(ExportedStat::float(
32            "territorial_pressure",
33            "team_one_session_time",
34            StatUnit::Seconds,
35            self.team_one_session_time,
36        ));
37        visitor(ExportedStat::float(
38            "territorial_pressure",
39            "team_zero_offensive_half_time",
40            StatUnit::Seconds,
41            self.team_zero_offensive_half_time,
42        ));
43        visitor(ExportedStat::float(
44            "territorial_pressure",
45            "team_one_offensive_half_time",
46            StatUnit::Seconds,
47            self.team_one_offensive_half_time,
48        ));
49        visitor(ExportedStat::float(
50            "territorial_pressure",
51            "team_zero_offensive_third_time",
52            StatUnit::Seconds,
53            self.team_zero_offensive_third_time,
54        ));
55        visitor(ExportedStat::float(
56            "territorial_pressure",
57            "team_one_offensive_third_time",
58            StatUnit::Seconds,
59            self.team_one_offensive_third_time,
60        ));
61        visitor(ExportedStat::float(
62            "territorial_pressure",
63            "team_zero_longest_session_time",
64            StatUnit::Seconds,
65            self.team_zero_longest_session_time,
66        ));
67        visitor(ExportedStat::float(
68            "territorial_pressure",
69            "team_one_longest_session_time",
70            StatUnit::Seconds,
71            self.team_one_longest_session_time,
72        ));
73        for entry in &self.labeled_session_counts.entries {
74            visitor(ExportedStat::unsigned_labeled(
75                "territorial_pressure",
76                "session_count",
77                StatUnit::Count,
78                entry.labels.clone(),
79                entry.count,
80            ));
81        }
82        for entry in &self.labeled_time.entries {
83            visitor(ExportedStat::float_labeled(
84                "territorial_pressure",
85                "session_time",
86                StatUnit::Seconds,
87                entry.labels.clone(),
88                entry.value,
89            ));
90        }
91    }
92}