split formatter into separated singleton classes

This commit is contained in:
2024-04-22 17:36:48 +03:00
parent 95572364c1
commit 3db85cb38f
54 changed files with 1538 additions and 292 deletions

View File

@ -22,7 +22,7 @@
#include <QMultiHash>
#include <QObject>
#include "awkeysaggregator.h"
#include "formatters/awpluginformatter.h"
class AWFormatterHelper;
@ -35,7 +35,7 @@ public:
explicit AWDataEngineMapper(QObject *_parent = nullptr, AWFormatterHelper *_custom = nullptr);
~AWDataEngineMapper() override = default;
// get methods
[[nodiscard]] AWKeysAggregator::FormatterType formatter(const QString &_key) const;
[[nodiscard]] AWPluginFormaterInterface *formatter(const QString &_key) const;
[[nodiscard]] QStringList keysFromSource(const QString &_source) const;
// set methods
QStringList registerSource(const QString &_source, KSysGuard::Unit _units, const QStringList &_keys);
@ -45,6 +45,6 @@ private:
AWFormatterHelper *m_customFormatters = nullptr;
// variables
QHash<QString, QStringList> m_devices;
QHash<QString, AWKeysAggregator::FormatterType> m_formatter;
QHash<QString, AWPluginFormaterInterface *> m_formatter;
QMultiHash<QString, QString> m_map;
};