use super::models::MicrophoneSimModel;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
pub struct MicrophoneSimConfig {
#[serde(default)]
pub enabled: bool,
#[serde(default)]
pub model: MicrophoneSimModel,
}
impl Default for MicrophoneSimConfig {
fn default() -> Self {
Self {
enabled: false,
model: MicrophoneSimModel::Off,
}
}
}
impl MicrophoneSimConfig {
pub fn active_model(&self) -> Option<MicrophoneSimModel> {
if self.enabled && self.model != MicrophoneSimModel::Off {
Some(self.model)
} else {
None
}
}
}