helena 0.1.0

Core types and component interfaces for helena, a latent data-to-waveform generation platform.
Documentation
use crate::error::Error;
use crate::latent::FrameSeq;

use super::{LatentNorm, NormFitter};

/// A rank-2 `[frames, dim]` continuous latent from row-major values.
///
/// Replaces the old `cont([frames, dim], data)` helper: there is no
/// `AudioLatent` wrapper to construct anymore, and the token / non-finite /
/// zero-width / non-rank-2 cases the old helper could smuggle in are all
/// unrepresentable — `FrameSeq::new` is the same gate the rest of the pipeline
/// uses, so a test can only build a *valid* continuous latent.
fn seq(frames: usize, dim: usize, data: Vec<f32>) -> FrameSeq {
    FrameSeq::new(frames, dim, data).unwrap()
}

mod builder;
mod fit;
mod properties;
mod serialization;
mod transform;
mod validation;