summaryrefslogtreecommitdiff
path: root/libsowatch/watchplugininterface.h
blob: 804f7f5a2522d937f13b7b2637850e39229f06ed (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
#ifndef SOWATCH_WATCHPLUGININTERFACE_H
#define SOWATCH_WATCHPLUGININTERFACE_H

#include <QtPlugin>
#include <QtCore/QVariantMap>
#include <QtCore/QStringList>
#include "sowatch_global.h"

namespace sowatch
{

class Watch;
class WatchScanner;
class ConfigKey;

class SOWATCH_EXPORT WatchPluginInterface
{
public:
	virtual ~WatchPluginInterface();

	virtual QStringList drivers() = 0;
	virtual WatchScanner* getScanner(QObject *parent = 0) = 0;
	virtual Watch* getWatch(const QString& driver, ConfigKey* settings, QObject *parent = 0) = 0;
};

}

Q_DECLARE_INTERFACE(sowatch::WatchPluginInterface, "com.javispedro.sowatch.WatchPluginInterface")

#endif // SOWATCH_WATCHPLUGININTERFACE_H