pub struct LockDetector {
pub drop_cn0_dbhz: f64,
pub relock_cn0_dbhz: f64,
pub drop_confirm_epochs: usize,
pub relock_confirm_epochs: usize,
pub state: LockState,
pub streak: usize,
}Expand description
A two-threshold lock detector with confirmation dwells — the mechanism that makes
lock/unlock hysteretic rather than a single line a noisy C/N₀ estimate chatters
across. Lock is dropped after drop_confirm_epochs consecutive epochs below
drop_cn0_dbhz, and regained after relock_confirm_epochs consecutive epochs at or
above the strictly higher relock_cn0_dbhz.
Fields§
§drop_cn0_dbhz: f64C/N₀ (dB-Hz) below which the tracking-threshold rule is violated.
relock_cn0_dbhz: f64C/N₀ (dB-Hz) that must be cleared to re-declare lock — the pull-in threshold.
drop_confirm_epochs: usizeConsecutive epochs below drop_cn0_dbhz required before lock is dropped.
relock_confirm_epochs: usizeConsecutive epochs at or above relock_cn0_dbhz required before lock is regained.
state: LockStateThe current declared state.
streak: usizeHow many consecutive epochs the pending transition has been satisfied for.