From 020fb83645d698101e3718a3404fe8c3df4d9250 Mon Sep 17 00:00:00 2001 From: ClementTsang Date: Fri, 6 Sep 2019 22:46:44 -0400 Subject: [PATCH] Mostly gotten cpu widget done. --- src/widgets/cpu.rs | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/widgets/cpu.rs b/src/widgets/cpu.rs index 60e89e69..ef83d29f 100644 --- a/src/widgets/cpu.rs +++ b/src/widgets/cpu.rs @@ -1,9 +1,22 @@ -struct TimedCPUData<'a> { - cpu_name: &'a str, - cpu_usage: f32, - time: std::time::Duration, +use sysinfo::{ProcessorExt, System, SystemExt}; + +pub struct TimedCPUData { + pub cpu_name : Box, + pub cpu_usage : u32, + pub time : std::time::SystemTime, } -fn get_timestamped_cpu_data() {} +pub fn get_cpu_data_list(sys : &System) -> Vec { + let cpu_data = sys.get_processor_list(); + let mut cpu_vec = Vec::new(); -pub fn get_cpu_data_list() {} + for cpu in cpu_data { + cpu_vec.push(TimedCPUData { + cpu_name : Box::from(cpu.get_name()), + cpu_usage : (cpu.get_cpu_usage() * 100_f32).ceil() as u32, + time : std::time::SystemTime::now(), + }) + } + + cpu_vec +}