qemu_command_builder/
audiodev.rs1use bon::Builder;
2use std::collections::HashMap;
3
4use crate::to_command::ToCommand;
5
6#[derive(Default, Builder)]
7pub struct AudioDev {
8 driver: String,
9 props: HashMap<String, String>,
10}
11
12impl ToCommand for AudioDev {
13 fn to_command(&self) -> Vec<String> {
14 let mut cmd = vec!["-audiodev".to_string()];
15
16 let mut args = vec![self.driver.clone()];
17
18 for (k, v) in &self.props {
19 args.push(format!("{}={}", k, v));
20 }
21 cmd.push(args.join(","));
22 cmd
23 }
24}