17 class Plugin :
public QObject {
21 virtual const QString getName()
const = 0;
23 typedef enum { STANDARD, ADVANCED, DEVELOPER } grouping;
26 virtual grouping getGrouping()
const {
return STANDARD; }
29 virtual const QString getID()
const { assert(
false);
return UNKNOWN_PLUGIN_ID; }
31 virtual bool isSupported()
const;
33 void setContainer(PluginContainer* container);
39 virtual void deinit();
43 virtual bool activate() {
49 virtual void deactivate() {
53 virtual bool isActive() {
56 virtual bool startStandBySession() {
57 _sessionStatus =
true;
58 return _sessionStatus;
61 virtual void endSession() {
62 _sessionStatus =
false;
65 virtual bool isSessionActive() {
66 return _sessionStatus;
76 virtual void saveSettings()
const {}
77 virtual void loadSettings() {}
78 virtual bool isRunning()
const {
return _active; }
81 void deviceStatusChanged(
const QString& deviceName,
bool isRunning)
const;
86 void deviceConnected(QString pluginName)
const;
87 void subdeviceConnected(QString pluginName, QString subdeviceName)
const;
90 bool _active {
false };
91 bool _enabled {
false };
92 bool _sessionStatus {
false };
93 PluginContainer* _container {
nullptr };
94 static const char* UNKNOWN_PLUGIN_ID;