VMCPlugin/src/ATBAPP/ATBVMCPlugin.h

72 lines
2.0 KiB
C++

#ifndef ATBVMCPLUGIN_H
#define ATBVMCPLUGIN_H
#include <QObject>
#include <QSettings>
#include <QtPlugin>
#include "src/ATBAPP/ATBAPPplugin.h"
#include "src/ATBAPP/VMCInterface.h"
#include "src/ATBAPP/UnifiedDCVMCInterface.h"
#include "vmc.h"
class ATBVMCPlugin : public VMCInterface {
Q_OBJECT
Q_INTERFACES(VMCInterface)
#if QT_VERSION >= 0x050000
Q_PLUGIN_METADATA(IID "eu.atb.ptu.plugin.ATBVMCPlugin" FILE "plugins/metadata.json")
#endif
public:
explicit ATBVMCPlugin(QObject *parent = nullptr);
virtual ~ATBVMCPlugin();
virtual const QString & getPluginInfo() override;
virtual void setPluginInfo(QString const &info) override;
// ----------------------------------------------------------------------------
// interface:
virtual PLUGIN_STATE initVMCPlugin(QObject *eventReceiver,
QObject *atbSystem,
QObject *hmiConfig,
QSettings const &settings) override;
// mandantory ATBAPP plugin methods: ------------------------------------------
PLUGIN_STATE getState() override;
QString getLastError() override;
QString getLastErrorDescription() override;
#if 0
// helpers e.g. for debug / log
virtual QString getString(RESULT_STATE resultState) override;
public slots:
virtual void onChangedProgramModeToSELL() override;
virtual void onChangedProgramModeToSERVICE() override;
virtual void onChangedProgramModeToIDLE() override;
virtual void onChangedProgramModeToOOO() override;
virtual void startPhysicalLayer() override;
virtual void stopPhysicalLayer() override;
virtual void reboot() override;
virtual void reset() override;
#endif
private:
QString m_errorCode;
QString m_errorDescription;
QString m_pluginInfo;
QString m_serialPortName;
bool m_useDebug;
PLUGIN_STATE m_pluginState;
QObject* m_appControl;
VMC *m_vmc;
};
#endif // ATBDEVICECONTROLLERPLUGIN_H