use crate::track::TrackBuilder;
use super::backend::Backend;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub struct Capacities {
pub command_capacity: usize,
pub sound_capacity: usize,
pub sub_track_capacity: usize,
pub clock_capacity: usize,
}
impl Default for Capacities {
fn default() -> Self {
Self {
command_capacity: 128,
sound_capacity: 128,
sub_track_capacity: 128,
clock_capacity: 8,
}
}
}
pub struct AudioManagerSettings<B: Backend> {
pub capacities: Capacities,
pub main_track_builder: TrackBuilder,
pub backend_settings: B::Settings,
}
impl<B: Backend> Default for AudioManagerSettings<B>
where
B::Settings: Default,
{
fn default() -> Self {
Self {
capacities: Capacities::default(),
main_track_builder: TrackBuilder::default(),
backend_settings: B::Settings::default(),
}
}
}