use rill_core::Transcendental;
#[derive(Debug, Clone)]
pub struct DspContext<T: Transcendental> {
pub sample_rate: f32,
pub block_size: usize,
pub block_position: usize,
pub _phantom: std::marker::PhantomData<T>,
}
impl<T: Transcendental> DspContext<T> {
pub fn new(sample_rate: f32, block_size: usize, block_position: usize) -> Self {
Self {
sample_rate,
block_size,
block_position,
_phantom: std::marker::PhantomData,
}
}
pub fn seconds(&self) -> f64 {
self.block_position as f64 / self.sample_rate as f64
}
}