mtemp/src/mtemp.rs

40 lines
824 B
Rust

use crate::{lm_sensors::sensors_data, nvidia_smi::temperature};
pub struct Mtemp {}
impl Mtemp {
pub fn cpu() -> Option<f64> {
let sensors_data = sensors_data();
if sensors_data.is_err() {
return None;
}
if let Some(chip) = sensors_data.unwrap().cpu_chip() {
chip.temp()
} else {
None
}
}
pub fn disk() -> Option<f64> {
let sensors_data = sensors_data();
if sensors_data.is_err() {
return None;
}
if let Some(chip) = sensors_data.unwrap().disk_chip() {
chip.temp()
} else {
None
}
}
pub fn gpu() -> Option<f64> {
if let Ok(temp) = temperature() {
Some(temp)
} else {
None
}
}
}