essentia_core/lib.rs
1// ==============================================================================
2// NEW UNIFIED DATA SYSTEM - COMPILE-TIME TYPE SAFETY
3// ==============================================================================
4pub mod data;
5
6// ==============================================================================
7// CORE MODULES (updated to use new data system)
8// ==============================================================================
9pub mod algorithm;
10pub mod essentia;
11pub mod parameter_map;
12pub mod pool;
13
14// ==============================================================================
15// RE-EXPORTS - CLEAN API
16// ==============================================================================
17
18// Core data types with compile-time constraints
19pub use data::{ConversionError, GetFromDataContainer, IntoDataContainer, TryIntoDataContainer};
20pub use data::{DataContainer, DataType, phantom};
21pub use data::{InputOutputData, ParameterData, PoolData};
22
23// Algorithm and execution
24pub use algorithm::{Algorithm, Configured, Initialized, Introspection};
25pub use essentia::{CreateAlgorithmError, Essentia};
26pub use pool::{Pool, PoolError};
27
28// Error types
29pub use algorithm::{
30 ComputeError, ConfigurationError, InputError, OutputError, ParameterError, ResetError,
31};
32
33// Centralized error handling (to be enabled)
34// pub mod error;
35// pub use error::EssentiaError;