pub struct TransitionWindow {
pub start_k: u32,
pub end_k: u32,
pub suppression_margin: u32,
pub kind: TransitionKind,
}Expand description
A single waveform transition window.
Suppresses grammar escalation to Violation during
[start_k, end_k + suppression_margin) observation indices.
The margin absorbs post-transition residual ringing; set to zero for transitions with fast recovery (e.g., scheduled slot boundaries).
Fields§
§start_k: u32Observation index at which the transition begins (inclusive).
end_k: u32Observation index at which the nominal waveform is expected to
resume (inclusive). Suppression continues through end_k + margin.
suppression_margin: u32Additional post-transition suppression window in observations.
For FrequencyHop / ModulationChange: typically 2–10 samples
(depending on receiver lock-time). For others: 0.
kind: TransitionKindSemantic classification of this transition.
Implementations§
Source§impl TransitionWindow
impl TransitionWindow
Sourcepub const fn suppression_start(&self) -> u32
pub const fn suppression_start(&self) -> u32
First observation index where suppression is active (= start_k).
Sourcepub const fn suppression_end(&self) -> u32
pub const fn suppression_end(&self) -> u32
Last observation index where suppression is active (inclusive).
Sourcepub fn is_active(&self, k: u32) -> bool
pub fn is_active(&self, k: u32) -> bool
Returns true if observation k falls within this suppression window.
Sourcepub const fn duration_k(&self) -> u32
pub const fn duration_k(&self) -> u32
Duration in observations (end_k − start_k + 1), excluding margin.
Trait Implementations§
Source§impl Clone for TransitionWindow
impl Clone for TransitionWindow
Source§fn clone(&self) -> TransitionWindow
fn clone(&self) -> TransitionWindow
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more