Files
ags/widget/modules/Cpu/helpers.ts
T
2025-03-11 17:51:22 +07:00

26 lines
728 B
TypeScript

import GTop from "gi://GTop";
let previousCpuData = new GTop.glibtop_cpu();
GTop.glibtop_get_cpu(previousCpuData);
const computeCPU = (): string => {
const currentCpuData = new GTop.glibtop_cpu();
GTop.glibtop_get_cpu(currentCpuData);
// Calculate the differences from the previous to current data
const totalDiff = currentCpuData.total - previousCpuData.total;
const idleDiff = currentCpuData.idle - previousCpuData.idle;
const cpuUsagePercentage =
totalDiff > 0 ? ((totalDiff - idleDiff) / totalDiff) * 100 : 0;
previousCpuData = currentCpuData;
const cpuUsagePercentageString =
" " + Math.floor(cpuUsagePercentage) + "%";
return cpuUsagePercentageString;
};
export default computeCPU;