• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kde-runtime API Reference
  • KDE Home
  • Contact Us
 

PlasmaCore

  • sources
  • kde-4.12
  • kde-runtime
  • plasma
  • declarativeimports
  • core
dataengineconsumer_p.h
Go to the documentation of this file.
1 /*
2  * Copyright 2005 by Aaron Seigo <aseigo@kde.org>
3  * Copyright 2007 by Riccardo Iaconelli <riccardo@kde.org>
4  * Copyright 2008 by Ménard Alexis <darktears31@gmail.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU Library General Public License as
8  * published by the Free Software Foundation; either version 2, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details
15  *
16  * You should have received a copy of the GNU Library General Public
17  * License along with this program; if not, write to the
18  * Free Software Foundation, Inc.,
19  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  */
21 
22 #ifndef PLASMA_DATAENGINECONSUMER_H
23 #define PLASMA_DATAENGINECONSUMER_H
24 
25 #include <QtCore/QSet>
26 
27 #include <kdebug.h>
28 
29 #include "plasma/dataenginemanager.h"
30 #include <plasma/servicejob.h>
31 
32 namespace Plasma
33 {
34 
35 class DataEngineConsumer;
36 class RemoteDataEngine;
37 
38 class ServiceMonitor : public QObject
39 {
40  Q_OBJECT
41 public:
42  ServiceMonitor(DataEngineConsumer *consumer);
43  ~ServiceMonitor();
44 
45 public Q_SLOTS:
46  void slotJobFinished(Plasma::ServiceJob *job);
47  void slotServiceReady(Plasma::Service *service);
48 
49 private:
50  DataEngineConsumer *m_consumer;
51 };
52 
53 class DataEngineConsumer
54 {
55 public:
56  DataEngineConsumer();
57  ~DataEngineConsumer();
58  DataEngine *dataEngine(const QString &name);
59  DataEngine *remoteDataEngine(const KUrl &location, const QString &name);
60  void finishedWithEngine(const QString &name);
61 
62 private:
63  QSet<QString> m_loadedEngines;
64  QMap<QPair<QString, QString>, RemoteDataEngine*> m_remoteEngines;
65  QMap<Service*, QString> m_engineNameForService;
66  ServiceMonitor *m_monitor;
67 
68  friend class ServiceMonitor;
69 };
70 
71 } // namespace Plasma
72 
73 #endif
74 
75 
Plasma::ServiceMonitor::slotServiceReady
void slotServiceReady(Plasma::Service *service)
Definition: dataengineconsumer.cpp:60
Plasma::ServiceMonitor::ServiceMonitor
ServiceMonitor(DataEngineConsumer *consumer)
Definition: dataengineconsumer.cpp:34
Plasma::DataEngineConsumer::DataEngineConsumer
DataEngineConsumer()
Definition: dataengineconsumer.cpp:78
Plasma::ServiceMonitor::slotJobFinished
void slotJobFinished(Plasma::ServiceJob *job)
Definition: dataengineconsumer.cpp:43
Plasma::DataEngineConsumer::remoteDataEngine
DataEngine * remoteDataEngine(const KUrl &location, const QString &name)
Definition: dataengineconsumer.cpp:113
Plasma::ServiceMonitor
Definition: dataengineconsumer_p.h:38
QObject
Plasma::ServiceMonitor::~ServiceMonitor
~ServiceMonitor()
Definition: dataengineconsumer.cpp:39
Plasma::DataEngineConsumer::finishedWithEngine
void finishedWithEngine(const QString &name)
Definition: dataengineconsumer.cpp:92
Plasma::DataEngineConsumer::~DataEngineConsumer
~DataEngineConsumer()
Definition: dataengineconsumer.cpp:83
Plasma::DataEngineConsumer::dataEngine
DataEngine * dataEngine(const QString &name)
Definition: dataengineconsumer.cpp:99
Plasma::DataEngineConsumer
Definition: dataengineconsumer_p.h:53
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:02:42 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

PlasmaCore

Skip menu "PlasmaCore"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kde-runtime API Reference

Skip menu "kde-runtime API Reference"
  • KCMShell
  • KNotify
  • Plasma Runtime
  •     PlasmaCore
  •     DragAndDrop
  •     PlasmaComponents
  •     PlasmaExtraComponents
  •     QtExtraComponents

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal