use super::ParamType;
use crate::prelude::*;
#[repr(u32)]
#[derive(Copy, Clone, Debug, PartialOrd, PartialEq)]
pub enum LofiFilterAttr {
Wet = 0,
Samplerate = 1,
BitDepth = 2,
}
#[derive(Debug)]
pub struct LofiFilter {
inner: *mut soloud_sys::soloud::LofiFilter,
}
crate::macros::filter::impl_filter_ext!(LofiFilter);
crate::macros::filter::impl_filter_type!(LofiFilterAttr);
impl LofiFilter {
pub fn set_params(&mut self, samplerate: f32, bit_depth: f32) -> Result<(), SoloudError> {
ffi_call!(soloud_sys::soloud::LofiFilter_setParams(
self.inner, samplerate, bit_depth
))
}
}