Skip to main content

subtr_actor/stats/analysis_graph/nodes/
touch_state.rs

1use super::*;
2use crate::stats::calculators::*;
3use crate::*;
4
5pub struct TouchStateNode {
6    calculator: TouchStateCalculator,
7    state: TouchState,
8}
9
10impl TouchStateNode {
11    pub fn new() -> Self {
12        Self {
13            calculator: TouchStateCalculator::new(),
14            state: TouchState::default(),
15        }
16    }
17}
18
19impl_analysis_node! {
20    node = TouchStateNode,
21    state = TouchState,
22    name = "touch_state",
23    dependencies = [
24        frame_info_dependency() => FrameInfo,
25        ball_frame_state_dependency() => BallFrameState,
26        player_frame_state_dependency() => PlayerFrameState,
27        frame_events_state_dependency() => FrameEventsState,
28        live_play_dependency() => LivePlayState,
29    ],
30    update_state = calculator.update,
31}