pub struct TrackUpdate {
pub state: TrackState,
pub detection: Option<Detection>,
pub track_id: Option<u64>,
pub measured: bool,
pub needs_redesignation: bool,
pub operator_designated: bool,
}Expand description
What a single advance produced.
Fields§
§state: TrackStateThe lifecycle state after this frame.
detection: Option<Detection>The reported detection for the locked object this frame, with its
track_id, lock_state, and assoc_confidence filled, or None when
there is nothing live to report (idle, or tentative-not-yet-confirmed).
For a coasting / ambiguous frame this is the predicted box.
track_id: Option<u64>The track id the lock currently holds, if any.
measured: boolTrue when this update came from a measured (and accepted) detection, not a coast / ambiguous hold.
needs_redesignation: boolTrue when the tracker could not safely resolve the identity this frame (two appearance-ambiguous candidates) and is asking the operator layer to re-designate the target. A silent capture never happens; this flag is how the ambiguity surfaces.
operator_designated: boolTrue only when the reported track was seeded by an explicit operator
SingleObjectTracker::designate call. A consumer publish path gates the
wire lock_state on this: an auto-seeded track (false) is tracked and
carries an id, but is never presented as locked, mirroring the offload
publish path. false on a frame with nothing to report.