not quite so much needs to be delayed to the init() function
[personal-kdebase.git] / workspace / plasma / dataengines / systemmonitor / systemmonitor.h
blob05bc024b8961e1be25af7849ba73ff763d80bbb8
1 /*
2 * Copyright (C) 2007 John Tapsell <tapsell@kde.org>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Library General Public License version 2 as
6 * published by the Free Software Foundation
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details
13 * You should have received a copy of the GNU Library General Public
14 * License along with this program; if not, write to the
15 * Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 #ifndef SYSTEMMONITORENGINE_H
20 #define SYSTEMMONITORENGINE_H
22 #include <Plasma/DataEngine>
24 #include "../../ksysguard/gui/ksgrd/SensorClient.h"
26 #include <QStringList>
28 class QTimer;
30 /**
31 * This class evaluates the basic expressions given in the interface.
33 class SystemMonitorEngine : public Plasma::DataEngine, public KSGRD::SensorClient
35 Q_OBJECT
37 public:
38 /** Inherited from Plasma::DataEngine. Returns a list of all the sensors that ksysguardd knows about. */
39 virtual QStringList sources() const;
40 SystemMonitorEngine( QObject* parent, const QVariantList& args );
41 ~SystemMonitorEngine();
43 protected:
44 bool sourceRequestEvent(const QString &name);
45 /** inherited from SensorClient */
46 virtual void answerReceived( int id, const QList<QByteArray>&answer );
47 virtual void sensorLost( int );
48 virtual bool updateSourceEvent(const QString &sensorName);
51 protected slots:
52 void updateSensors();
54 private:
55 QStringList m_sensors;
56 QTimer* m_timer;
57 int m_waitingFor;
60 K_EXPORT_PLASMA_DATAENGINE(systemmonitor, SystemMonitorEngine)
62 #endif