small refactoring in matchers

This commit is contained in:
Evgenii Alekseev 2024-04-30 17:20:29 +03:00
parent 985737564e
commit 54a29e8cb3
12 changed files with 26 additions and 35 deletions

View File

@ -53,6 +53,12 @@ public:
[[nodiscard]] static QString device(const QString &_source) { return _source.split('/')[1]; }; [[nodiscard]] static QString device(const QString &_source) { return _source.split('/')[1]; };
[[nodiscard]] static qsizetype index(const QString &_source, const QStringList &_devices)
{
auto device = AWPluginMatcher::device(_source);
return _devices.indexOf(device);
}
protected: protected:
AWPluginMatcher() = default; AWPluginMatcher() = default;
}; };

View File

@ -25,12 +25,10 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherGPUCore::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherGPUCore::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = _source; auto index = AWPluginMatcher::index(_source, _settings.gpu);
device.remove("gpu/").remove("/usage");
auto index = _settings.gpu.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return {{QString("gpu%1").arg(index), AWPluginFormatterFloat::instance()}}; return {{QString("gpu%1").arg(index), AWPluginFormatterFloat::instance()}};
} }

View File

@ -26,12 +26,10 @@ QHash<QString, AWPluginFormaterInterface *>
AWPluginMatcherGPUTemperature::keys(const QString &_source, const KSysGuard::Unit, AWPluginMatcherGPUTemperature::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = _source; auto index = AWPluginMatcher::index(_source, _settings.gpu);
device.remove("gpu/").remove("/temperature");
auto index = _settings.gpu.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return {{QString("gputemp%1").arg(index), AWPluginFormatterTemperature::instance()}}; return {{QString("gputemp%1").arg(index), AWPluginFormatterTemperature::instance()}};
} }

View File

@ -25,11 +25,10 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDD::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDD::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return {{QString("hdd%1").arg(index), AWPluginFormatterFloat::instance()}}; return {{QString("hdd%1").arg(index), AWPluginFormatterFloat::instance()}};
} }

View File

@ -25,11 +25,10 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDFree::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDFree::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return { return {
{QString("hddfreemb%1").arg(index), AWPluginFormatterMemoryMB::instance()}, {QString("hddfreemb%1").arg(index), AWPluginFormatterMemoryMB::instance()},
{QString("hddfreegb%1").arg(index), AWPluginFormatterMemoryGB::instance()}, {QString("hddfreegb%1").arg(index), AWPluginFormatterMemoryGB::instance()},

View File

@ -25,11 +25,10 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDRead::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDRead::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return {{QString("hddr%1").arg(index), AWPluginFormatterMemory::instance()}}; return {{QString("hddr%1").arg(index), AWPluginFormatterMemory::instance()}};
} }

View File

@ -26,11 +26,10 @@ QHash<QString, AWPluginFormaterInterface *>
AWPluginMatcherHDDTotal::keys(const QString &_source, const KSysGuard::Unit, AWPluginMatcherHDDTotal::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return { return {
{QString("hddtotmb%1").arg(index), AWPluginFormatterMemoryMB::instance()}, {QString("hddtotmb%1").arg(index), AWPluginFormatterMemoryMB::instance()},
{QString("hddtotgb%1").arg(index), AWPluginFormatterMemoryGB::instance()}, {QString("hddtotgb%1").arg(index), AWPluginFormatterMemoryGB::instance()},

View File

@ -25,11 +25,10 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDUsed::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherHDDUsed::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return { return {
{QString("hddmb%1").arg(index), AWPluginFormatterMemoryMB::instance()}, {QString("hddmb%1").arg(index), AWPluginFormatterMemoryMB::instance()},
{QString("hddgb%1").arg(index), AWPluginFormatterMemoryGB::instance()}, {QString("hddgb%1").arg(index), AWPluginFormatterMemoryGB::instance()},

View File

@ -26,11 +26,10 @@ QHash<QString, AWPluginFormaterInterface *>
AWPluginMatcherHDDWrite::keys(const QString &_source, const KSysGuard::Unit, AWPluginMatcherHDDWrite::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto device = AWPluginMatcher::device(_source); auto index = AWPluginMatcher::index(_source, _settings.disk);
auto index = _settings.disk.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
return {{QString("hddw%1").arg(index), AWPluginFormatterMemory::instance()}}; return {{QString("hddw%1").arg(index), AWPluginFormatterMemory::instance()}};
} }

View File

@ -25,13 +25,11 @@
QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherNetwork::keys(const QString &_source, const KSysGuard::Unit, QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherNetwork::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto type = _source.endsWith("download") ? "down" : "up"; auto index = AWPluginMatcher::index(_source, _settings.network);
auto device = AWPluginMatcher::device(_source);
auto index = _settings.network.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
auto type = _source.endsWith("download") ? "down" : "up";
return { return {
{QString("%1%2").arg(type).arg(index), AWPluginFormatterNet::instance()}, {QString("%1%2").arg(type).arg(index), AWPluginFormatterNet::instance()},
{QString("%1kb%2").arg(type).arg(index), AWPluginFormatterMemory::instance()}, {QString("%1kb%2").arg(type).arg(index), AWPluginFormatterMemory::instance()},

View File

@ -26,13 +26,11 @@ QHash<QString, AWPluginFormaterInterface *>
AWPluginMatcherNetworkTotal::keys(const QString &_source, const KSysGuard::Unit, AWPluginMatcherNetworkTotal::keys(const QString &_source, const KSysGuard::Unit,
const AWPluginMatcherSettings &_settings) const const AWPluginMatcherSettings &_settings) const
{ {
auto type = _source.endsWith("Download") ? "down" : "up"; auto index = AWPluginMatcher::index(_source, _settings.network);
auto device = AWPluginMatcher::device(_source);
auto index = _settings.network.indexOf(device);
if (index == -1) if (index == -1)
return {}; return {};
auto type = _source.endsWith("Download") ? "down" : "up";
return { return {
{QString("%1tot%2").arg(type).arg(index), AWPluginFormatterMemoryMB::instance()}, {QString("%1tot%2").arg(type).arg(index), AWPluginFormatterMemoryMB::instance()},
{QString("%1totkb%2").arg(type).arg(index), AWPluginFormatterMemory::instance()}, {QString("%1totkb%2").arg(type).arg(index), AWPluginFormatterMemory::instance()},

View File

@ -28,7 +28,6 @@ QHash<QString, AWPluginFormaterInterface *> AWPluginMatcherSensors::keys(const Q
// temperature // temperature
auto index = _settings.sensors.indexOf(_source); auto index = _settings.sensors.indexOf(_source);
auto key = QString("temp%1").arg(index); auto key = QString("temp%1").arg(index);
if (index == -1) if (index == -1)
return {}; return {};