40 lines
824 B
Rust
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
|
|
}
|
|
}
|
|
}
|