summaryrefslogtreecommitdiff
path: root/sowatchd/daemon.h
blob: 607e887384a128f58963af51e113070b4b51214c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef WATCHDAEMON_H
#define WATCHDAEMON_H

#include <QtCore/QObject>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QSettings>

#include <sowatch.h>

namespace sowatch
{

class Daemon : public QObject
{
    Q_OBJECT
public:
	explicit Daemon(QObject *parent = 0);

protected:
	QMap<QString, WatchPluginInterface*> _drivers;
	QMap<QString, NotificationPluginInterface*> _providers;
	QList<WatchServer*> _servers;

	void loadDrivers();
	void loadProviders();
	void loadWatchlets();

	void initWatches();
	void initWatch(Watch* watch, QSettings& settings);
};

}

#endif // WATCHDAEMON_H