oml-audio 0.8.4-alpha

Very basic, and thin abstraction of audio handling meant for games.
Documentation
use crate::FileLoader;

pub trait AudioBackend<F>
where
	F: FileLoader,
{
	fn start(&mut self) {}
	fn load_sound_bank(&mut self, _fileloader: &mut F, _filename: &str);
	fn update(&mut self) -> f64;
	fn play_music(&mut self);
	fn is_music_playing(&self) -> bool;
	fn pause_music(&mut self);
	fn play_sound(&mut self, _name: &str);
	fn load_music_native(&mut self, fileloader: &mut F, filename: &str) -> bool;
	fn is_any_sound_playing(&self) -> bool;
}

impl<F> core::fmt::Debug for dyn AudioBackend<F> {
	fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> Result<(), std::fmt::Error> {
		write!(f, "[dyn AudioBackend]")
	}
}