|
|
Home » Developing U++ » UppHub » [SysInfo - Improvement - Koldo] Better way to find distribution version & more
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more [message #41002 is a reply to message #41001] |
Sat, 19 October 2013 00:37 |
|
Klugier
Messages: 1076 Registered: September 2012 Location: Poland, Kraków
|
Senior Contributor |
|
|
Hello Koldo,
Moreover, I wrote better handling for measuring cpu temperature on GNU/Linux (POSIX?). Now, SysInfo should use "hwmon" when "acpi" fails. Let's look at code:
static double GetCpuTemperatureViaAcpi()
{
FindFile ff;
if(ff.Search("/proc/acpi/thermal_zone/*")) {
do {
if (ff.IsDirectory()) {
String name = ff.GetName();
if (name != "." && name != "..") {
StringParse str = LoadFile_Safe(AppendFileName(AppendFileName("/proc/acpi/thermal_zone", name), "temperature"));
str.GoAfter("temperature:");
return str.GetDouble();
}
}
} while(ff.Next());
}
return Null;
}
static double GetCpuTemperatureViaHwmon()
{
Vector <double> temps;
for (FindFile ff(AppendFileName("/sys/class/hwmon/hwmon0/device", "*input")); ff; ff.Next()) {
if (!ff.IsHidden()) {
String temp = LoadFile_Safe(ff.GetPath());
if (!temp.IsEmpty())
temps.Add((double)StrInt(temp) / 1000.0);
}
}
double sumTemps = 0.0;
for (int i = 0; i < temps.GetCount(); i++)
sumTemps += temps[i];
if (!temps.IsEmpty())
return sumTemps / (double)temps.GetCount();
else
return Null;
}
double GetCpuTemperature()
{
double temp = Null;
if (temp == (double)Null) temp = GetCpuTemperatureViaAcpi();
if (temp == (double)Null) temp = GetCpuTemperatureViaHwmon();
return temp;
}
* in this case "static" means that function should be use only in file where it was declared.
P.S.
Toomorow, I will enclose source file with above improvement.
Sincerely,
Klugier
U++ - one framework to rule them all.
[Updated on: Sat, 19 October 2013 00:50] Report message to a moderator
|
|
|
|
|
[SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sun, 13 October 2013 00:11
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Sun, 13 October 2013 00:38
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sun, 13 October 2013 01:22
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sun, 13 October 2013 01:58
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Sun, 13 October 2013 16:40
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Fri, 18 October 2013 22:32
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sat, 19 October 2013 00:37
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sat, 19 October 2013 22:29
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Sun, 20 October 2013 10:00
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Sun, 20 October 2013 10:04
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Zbych on Sun, 20 October 2013 12:36
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Tue, 22 October 2013 16:24
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Wed, 23 October 2013 22:13
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Wed, 23 October 2013 22:46
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Tue, 29 October 2013 18:52
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Tue, 29 October 2013 22:19
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Wed, 30 October 2013 09:17
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Wed, 30 October 2013 15:12
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Wed, 30 October 2013 21:37
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Wed, 30 October 2013 22:16
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Wed, 30 October 2013 23:15
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Thu, 31 October 2013 17:01
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Fri, 01 November 2013 22:51
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Fri, 01 November 2013 23:37
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Sat, 02 November 2013 22:26
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sun, 03 November 2013 01:09
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: kasome on Tue, 20 May 2014 12:59
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Tue, 20 May 2014 17:27
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: kasome on Mon, 14 July 2014 10:26
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: kasome on Mon, 14 July 2014 10:33
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Tue, 15 July 2014 12:05
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: Klugier on Sat, 19 July 2014 20:48
|
|
|
Re: [SysInfo - Improvement - Koldo] Better way to find distribution version & more
By: koldo on Mon, 21 July 2014 10:13
|
Goto Forum:
Current Time: Sun May 12 19:16:36 CEST 2024
Total time taken to generate the page: 0.02684 seconds
|
|
|