Skip to main content

MeasurementRead

Trait MeasurementRead 

Source
pub trait MeasurementRead: Sync {
    // Required methods
    fn frame_count(&self) -> usize;
    fn image_shape(&self) -> (usize, usize);
    fn frame_len(&self) -> usize;
    fn frame(&self, index: usize) -> Result<impl Deref<Target = [f64]> + '_>;
    fn frame_weight(&self, index: usize) -> Result<f64>;
    fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>;
    fn frame_metadata(&self) -> &[FrameMetadata];
    fn validate(&self) -> Result<()>;
}
Expand description

Read-only measurement access used by reconstruction algorithms.

Implementations retain responsibility for storage, caching, preprocessing, and mutation. The opaque frame view may borrow directly from the implementation or own a shared cache handle.

Required Methods§

Source

fn frame_count(&self) -> usize

Returns the number of acquisition frames.

Source

fn image_shape(&self) -> (usize, usize)

Returns low-resolution image shape as (height, width).

Source

fn frame_len(&self) -> usize

Returns height * width, the row-major element count of one frame.

Source

fn frame(&self, index: usize) -> Result<impl Deref<Target = [f64]> + '_>

Borrows or shares a row-major intensity frame by zero-based acquisition index.

Source

fn frame_weight(&self, index: usize) -> Result<f64>

Returns a frame’s non-negative reconstruction weight.

Source

fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>

Borrows an optional row-major binary validity mask for one frame.

Source

fn frame_metadata(&self) -> &[FrameMetadata]

Borrows metadata in acquisition-frame order.

Source

fn validate(&self) -> Result<()>

Checks shapes, counts, finite intensities, metadata, weights, and masks.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T: MeasurementRead + ?Sized> MeasurementRead for &T

Source§

fn frame_count(&self) -> usize

Source§

fn image_shape(&self) -> (usize, usize)

Source§

fn frame_len(&self) -> usize

Source§

fn frame(&self, index: usize) -> Result<impl Deref<Target = [f64]> + '_>

Source§

fn frame_weight(&self, index: usize) -> Result<f64>

Source§

fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>

Source§

fn frame_metadata(&self) -> &[FrameMetadata]

Source§

fn validate(&self) -> Result<()>

Implementors§