MemInfo constructor
MemInfo()
Empty constructor, this loads all the information from /proc/meminfo
Implementation
MemInfo() {
var lines = File('/proc/meminfo').readAsLinesSync();
for (var e in lines) {
var data = e.split(':');
if (data.length == 2) {
data[0] = data[0].trim();
switch (data[0]) {
case 'MemTotal':
{
data[1] = data[1].trim().substring(0, data[1].trim().length - 3);
mem_total = int.parse(data[1]);
mem_total_mb = (mem_total / 1024).round();
mem_total_gb = (mem_total_mb / 1024).round();
}
break;
case 'MemFree':
{
data[1] = data[1].trim().substring(0, data[1].trim().length - 3);
mem_free = int.parse(data[1]);
mem_free_mb = (mem_free / 1024).round();
mem_free_gb = (mem_free_mb / 1024).round();
}
break;
case 'SwapTotal':
{
data[1] = data[1].trim().substring(0, data[1].trim().length - 3);
swap_total = int.parse(data[1]);
swap_total_mb = (swap_total / 1024).round();
swap_total_gb = (swap_total_mb / 1024).round();
}
break;
case 'SwapFree':
{
data[1] = data[1].trim().substring(0, data[1].trim().length - 3);
swap_free = int.parse(data[1]);
swap_free_mb = (swap_free / 1024).round();
swap_free_gb = (swap_free_mb / 1024).round();
}
break;
}
}
}
}