Skip to main content

DecoderPipeline

Struct DecoderPipeline 

Source
pub struct DecoderPipeline { /* private fields */ }
Expand description

End-to-end decoder pipeline that ensembles multiple decoding strategies.

Combines KNN, threshold, and transition decoders with configurable ensemble weights, and optionally includes clinical scoring.

Implementations§

Source§

impl DecoderPipeline

Source

pub fn new() -> Self

Create an empty pipeline with default ensemble weights.

Source

pub fn with_knn(self, k: usize) -> Self

Add a KNN decoder to the pipeline.

Source

pub fn with_thresholds(self) -> Self

Add a threshold decoder to the pipeline.

Source

pub fn with_transitions(self, window: usize) -> Self

Add a transition decoder to the pipeline.

Source

pub fn with_clinical( self, baseline: TopologyMetrics, std: TopologyMetrics, ) -> Self

Add a clinical scorer to the pipeline.

Source

pub fn with_weights(self, weights: [f64; 3]) -> Self

Set custom ensemble weights for [knn, threshold, transition].

Source

pub fn knn_mut(&mut self) -> Option<&mut KnnDecoder>

Get a mutable reference to the KNN decoder (for training).

Source

pub fn threshold_mut(&mut self) -> Option<&mut ThresholdDecoder>

Get a mutable reference to the threshold decoder (for configuring thresholds).

Source

pub fn transition_mut(&mut self) -> Option<&mut TransitionDecoder>

Get a mutable reference to the transition decoder (for registering patterns).

Source

pub fn clinical_mut(&mut self) -> Option<&mut ClinicalScorer>

Get a mutable reference to the clinical scorer.

Source

pub fn decode( &mut self, embedding: &NeuralEmbedding, metrics: &TopologyMetrics, ) -> DecoderOutput

Run the full decoding pipeline on an embedding and topology metrics.

Trait Implementations§

Source§

impl Default for DecoderPipeline

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V