pub struct PlayerPossessionCalculator { /* private fields */ }Expand description
Builds per-player possession spans from the shared possession tracker state.
The raw possession stream slices spans whenever the labeled state changes
(including field-third moves) and drops the player during pending-turnover
windows. This calculator instead emits one event per continuous stretch of
player control, bridging contested interruptions shorter than
PLAYER_POSSESSION_MERGE_GAP_SECONDS, so consumers get a stable
“possession” unit for duration, touch, and ball-progress stats.
Implementations§
Source§impl PlayerPossessionCalculator
impl PlayerPossessionCalculator
pub fn new() -> Self
pub fn events(&self) -> &[PlayerPossessionEvent]
pub fn new_events(&self) -> &[PlayerPossessionEvent]
pub fn update( &mut self, frame: &FrameInfo, ball: &BallFrameState, players: &PlayerFrameState, possession_state: &PossessionState, touch_state: &TouchState, live_play_state: &LivePlayState, ) -> SubtrActorResult<()>
pub fn finish(&mut self)
Trait Implementations§
Source§impl Clone for PlayerPossessionCalculator
impl Clone for PlayerPossessionCalculator
Source§impl Debug for PlayerPossessionCalculator
impl Debug for PlayerPossessionCalculator
Source§impl Default for PlayerPossessionCalculator
impl Default for PlayerPossessionCalculator
impl StructuralPartialEq for PlayerPossessionCalculator
Auto Trait Implementations§
impl Freeze for PlayerPossessionCalculator
impl RefUnwindSafe for PlayerPossessionCalculator
impl Send for PlayerPossessionCalculator
impl Sync for PlayerPossessionCalculator
impl Unpin for PlayerPossessionCalculator
impl UnsafeUnpin for PlayerPossessionCalculator
impl UnwindSafe for PlayerPossessionCalculator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more