File indexing completed on 2024-05-12 17:00:14

0001 /*
0002     SPDX-FileCopyrightText: 2020 David Redondo <kde@david-redondo.de>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #include "cpuplugin.h"
0008 #include "cpuplugin_p.h"
0009 
0010 #include <KLocalizedString>
0011 #include <KPluginFactory>
0012 
0013 #include <systemstats/SensorContainer.h>
0014 
0015 #include "freebsdcpuplugin.h"
0016 #include "linuxcpuplugin.h"
0017 
0018 CpuPluginPrivate::CpuPluginPrivate(CpuPlugin *q)
0019     : m_container(new KSysGuard::SensorContainer(QStringLiteral("cpu"), i18n("CPUs"), q))
0020 {
0021 }
0022 
0023 CpuPlugin::CpuPlugin(QObject *parent, const QVariantList &args)
0024     : SensorPlugin(parent, args)
0025 #if defined Q_OS_LINUX
0026     , d(new LinuxCpuPluginPrivate(this))
0027 #elif defined Q_OS_FREEBSD
0028     , d(new FreeBsdCpuPluginPrivate(this))
0029 #else
0030     , d(new CpuPluginPrivate(this))
0031 #endif
0032 {
0033 }
0034 
0035 CpuPlugin::~CpuPlugin() = default;
0036 
0037 void CpuPlugin::update()
0038 {
0039     d->update();
0040 }
0041 
0042 K_PLUGIN_CLASS_WITH_JSON(CpuPlugin, "metadata.json")
0043 
0044 #include "cpuplugin.moc"