subtr_actor/stats/analysis_graph/nodes/
backboard_bounce.rs1use super::*;
2use crate::stats::calculators::*;
3use crate::*;
4
5pub struct BackboardBounceStateNode {
7 calculator: BackboardBounceCalculator,
8 state: BackboardBounceState,
9}
10
11impl BackboardBounceStateNode {
12 pub fn new() -> Self {
13 Self {
14 calculator: BackboardBounceCalculator::new(),
15 state: BackboardBounceState::default(),
16 }
17 }
18}
19
20impl_analysis_node! {
21 node = BackboardBounceStateNode,
22 state = BackboardBounceState,
23 name = "backboard_bounce_state",
24 emitted_events = crate::stats::calculators::BACKBOARD_BOUNCE_STATE_EMITTED_EVENTS,
25 dependencies = [
26 frame_info_dependency() => FrameInfo,
27 ball_frame_state_dependency() => BallFrameState,
28 player_frame_state_dependency() => PlayerFrameState,
29 touch_state_dependency() => TouchState,
30 live_play_dependency() => LivePlayState,
31 ],
32 update_state = calculator.update,
33}