subtr_actor/stats/analysis_graph/nodes/
rush.rs1use super::*;
2use crate::stats::calculators::*;
3use crate::*;
4
5pub struct RushNode {
6 calculator: RushCalculator,
7}
8
9impl RushNode {
10 pub fn new() -> Self {
11 Self::with_config(RushCalculatorConfig::default())
12 }
13
14 pub fn with_config(config: RushCalculatorConfig) -> Self {
15 Self {
16 calculator: RushCalculator::with_config(config),
17 }
18 }
19}
20
21impl_analysis_node! {
22 node = RushNode,
23 state = RushCalculator,
24 name = "rush",
25 dependencies = [
26 frame_info_dependency() => FrameInfo,
27 gameplay_state_dependency() => GameplayState,
28 ball_frame_state_dependency() => BallFrameState,
29 player_frame_state_dependency() => PlayerFrameState,
30 frame_events_state_dependency() => FrameEventsState,
31 possession_state_dependency() => PossessionState,
32 live_play_dependency() => LivePlayState,
33 ],
34 call = calculator.update_parts,
35 finish = calculator.finish_calculation,
36}