Sets up the console.
(
console_spec: Option<&str>,
signals_tx: Sender<Signal>,
)
| 97 | |
| 98 | /// Sets up the console. |
| 99 | pub fn setup_console( |
| 100 | console_spec: Option<&str>, |
| 101 | signals_tx: Sender<Signal>, |
| 102 | ) -> io::Result<ConsoleHandles> { |
| 103 | let mut console_spec = ConsoleSpec::init(console_spec.unwrap_or("text")); |
| 104 | let handles: ConsoleHandles = match console_spec.driver { |
| 105 | "sdl" => setup_sdl_console(&mut console_spec, signals_tx)?, |
| 106 | "st7735s" => setup_st7735s_console(&mut console_spec, signals_tx)?, |
| 107 | "text" => setup_text_console(signals_tx), |
| 108 | driver => { |
| 109 | return Err(io::Error::new( |
| 110 | io::ErrorKind::InvalidInput, |
| 111 | format!("Unknown console driver {}", driver), |
| 112 | )); |
| 113 | } |
| 114 | }; |
| 115 | console_spec.finish().map_err(|e| { |
| 116 | io::Error::new(io::ErrorKind::InvalidInput, format!("Invalid --console flag: {}", e)) |
| 117 | })?; |
| 118 | Ok(handles) |
| 119 | } |
no test coverage detected