Warning: session_start(): open(/var/lib/php/sessions/sess_rj72f2377666uoqos42tm855ot, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
!7
cmodule ProcessCPUTrayIcon > DynBigNumber {
transient BufferedImage trayImage;
transient TrayIcon trayIcon;
switchable S color = "ADFF2F"; // green yellow
switchable S backgroundColor = "228B22"; // forest green
switchable int size = goodSystemTrayIconSize().x;
switchable double interval = 1;
transient double loadRelativeToAllCores, recentLoad;
transient RollingAverage avg = new(5); // =10 seconds
start {
setDescription("STEFAN'S OS CPU %");
setToolTip("Percentage is per core (total: " + numberOfCores()*100 + "%)");
doEvery(interval, r actualUpdate);
ownResource(tempTrayIcon(trayIcon = installTrayIcon(
trayImage = newBufferedImage(size, size, colorFromHex(backgroundColor)), "Stefan's OS CPU", rThread dm_activateOSAndModule)));
}
void actualUpdate {
recentLoad = processCPULoad();
avg.add(recentLoad);
loadRelativeToAllCores = avg!;
setValue(toIntPercent_ceil(loadRelativeToAllCores*numberOfCores()) + " %");
int w = trayImage.getWidth(), h = trayImage.getHeight();
copyImagePart(trayImage, 1, 0, trayImage, 0, 0, w-1, h);
int y = iround((h-1)*(1 - loadRelativeToAllCores));
fillRect(trayImage, w-1, 0, 1, y, colorFromHex(backgroundColor));
fillRect(trayImage, w-1, y, 1, h-y, colorFromHex(color));
setTrayIconImage(trayIcon, trayImage);
}
}