Plasma
dataenginemanager.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef PLASMA_DATAENGINEMANAGER_H
00021 #define PLASMA_DATAENGINEMANAGER_H
00022
00023 #include <QtCore/QHash>
00024
00025 #include <kplugininfo.h>
00026
00027 #include <plasma/dataengine.h>
00028
00029 namespace Plasma
00030 {
00031
00032 class DataEngineManagerPrivate;
00033
00042 class PLASMA_EXPORT DataEngineManager: public QObject
00043 {
00044 Q_OBJECT
00045 public:
00049 static DataEngineManager *self();
00050
00058 Plasma::DataEngine *engine(const QString &name) const;
00059
00069 Plasma::DataEngine *loadEngine(const QString &name);
00070
00075 void unloadEngine(const QString &name);
00076
00086 static QStringList listAllEngines(const QString &parentApp = QString());
00087
00098 static KPluginInfo::List listEngineInfo(const QString &parentApp = QString());
00099
00100 private:
00105 DataEngineManager();
00106 ~DataEngineManager();
00107
00108 DataEngineManagerPrivate *const d;
00109
00110 friend class DataEngineManagerSingleton;
00111 };
00112
00113 }
00114
00115 #endif // multiple inclusion guard