Files
Stacer/stacer-core/Info/network_info.cpp
Oğuzhan İnan 82247ac648 stacer native
2017-08-23 14:49:45 +03:00

44 lines
948 B
C++

#include "network_info.h"
NetworkInfo::NetworkInfo()
{
QStringList lines = FileUtil::readListFromFile(PROC_NET_ROUTE);
if(lines.count() > 2)
defaultNetworkInterface = lines
.at(2)
.split(QRegExp("\\s+"))
.first();
else
defaultNetworkInterface = "";
rxPath = QString("/sys/class/net/%1/statistics/rx_bytes")
.arg(defaultNetworkInterface);
txPath = QString("/sys/class/net/%1/statistics/tx_bytes")
.arg(defaultNetworkInterface);
}
QString NetworkInfo::getDefaultNetworkInterface() const
{
return defaultNetworkInterface;
}
quint64 NetworkInfo::getRXbytes()
{
quint64 rx = FileUtil::readStringFromFile(rxPath)
.trimmed()
.toLong();
return rx;
}
quint64 NetworkInfo::getTXbytes()
{
quint64 tx = FileUtil::readStringFromFile(txPath)
.trimmed()
.toLong();
return tx;
}