pub struct DesignReplay { /* private fields */ }Expand description
What a design was made from. Sample buffers and prepared spectra are shared, never copied. Long-window spectra are computed on request, never cached.
Implementations§
Source§impl DesignReplay
impl DesignReplay
pub fn measurements(&self) -> &MeasurementSet
pub fn config(&self) -> &EngineConfig
pub fn base_s(&self) -> f64
Sourcepub fn export_view(&self, design: &Design) -> Result<ExportView, EngineError>
pub fn export_view(&self, design: &Design) -> Result<ExportView, EngineError>
Rebuilds the 2 s spectra used by SECS 2’s REW exports.
design must be the design that owns this replay.
Sourcepub fn export_ir(
&self,
design: &Design,
spectrum: &[C],
axis: ExportAxis,
) -> (Vec<f64>, f64)
pub fn export_ir( &self, design: &Design, spectrum: &[C], axis: ExportAxis, ) -> (Vec<f64>, f64)
Converts a design-grid export response to REW samples and its time origin.
The spectrum comes from this replay’s export view, stage responses, or
applied MIMO response. Keeping that view at the caller avoids rebuilding
the long window for every role and stage. design must own this replay.
Sourcepub fn mimo_responses(
&self,
design: &Design,
paths: &MimoPaths,
) -> Result<Vec<(String, Vec<C>)>, EngineError>
pub fn mimo_responses( &self, design: &Design, paths: &MimoPaths, ) -> Result<Vec<(String, Vec<C>)>, EngineError>
Applies cached IIR, full-rate FIR or low-rate FIR support paths to the
long-window responses. design must be the design that owns this replay.
Sourcepub fn matches(&self, set: &MeasurementSet, config: &EngineConfig) -> bool
pub fn matches(&self, set: &MeasurementSet, config: &EngineConfig) -> bool
Legacy callers may supply a different input. Comparing shared storage avoids scanning samples; independently loaded equivalent inputs safely take the fresh-preparation path.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DesignReplay
impl RefUnwindSafe for DesignReplay
impl Send for DesignReplay
impl Sync for DesignReplay
impl Unpin for DesignReplay
impl UnsafeUnpin for DesignReplay
impl UnwindSafe for DesignReplay
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
impl<T, U> Imply<T> for U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more