Compare commits
4 Commits
2efdbe2d68
...
master
Author | SHA1 | Date | |
---|---|---|---|
4b38e2e46e | |||
9fa37d125d | |||
00dbf4485a | |||
88670c1079 |
@@ -7,6 +7,9 @@
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
|
||||
class UnifiedDCVMCInterface;
|
||||
|
||||
template <typename T>
|
||||
struct ATBAPPplugin {
|
||||
enum class PLUGIN_STATE : quint8 {
|
||||
NOT_INITIALIZED = 0,
|
||||
@@ -54,14 +57,14 @@ struct ATBAPPplugin {
|
||||
}
|
||||
};
|
||||
|
||||
using PLUGIN_STATE = ATBAPPplugin::PLUGIN_STATE;
|
||||
using RESULT_STATE = ATBAPPplugin::RESULT_STATE;
|
||||
using CASH_STATE = ATBAPPplugin::CASH_STATE;
|
||||
using TICKET_VARIANT = ATBAPPplugin::TICKET_VARIANT;
|
||||
using STEP = ATBAPPplugin::STEP;
|
||||
using TERMINAL_STATE = ATBAPPplugin::TERMINAL_STATE;
|
||||
using PLUGIN_STATE = ATBAPPplugin<UnifiedDCVMCInterface>::PLUGIN_STATE;
|
||||
using RESULT_STATE = ATBAPPplugin<UnifiedDCVMCInterface>::RESULT_STATE;
|
||||
using CASH_STATE = ATBAPPplugin<UnifiedDCVMCInterface>::CASH_STATE;
|
||||
using TICKET_VARIANT = ATBAPPplugin<UnifiedDCVMCInterface>::TICKET_VARIANT;
|
||||
using STEP = ATBAPPplugin<UnifiedDCVMCInterface>::STEP;
|
||||
using TERMINAL_STATE = ATBAPPplugin<UnifiedDCVMCInterface>::TERMINAL_STATE;
|
||||
|
||||
Q_DECLARE_INTERFACE(ATBAPPplugin,
|
||||
"eu.atb.ptu.plugin.ATBAPPplugin/0.9")
|
||||
//Q_DECLARE_INTERFACE(ATBAPPplugin,
|
||||
// "eu.atb.ptu.plugin.ATBAPPplugin/0.9")
|
||||
|
||||
#endif // ATBAPPPLUGIN_H
|
||||
|
@@ -181,6 +181,18 @@ void ATBVMCPlugin::reset() {
|
||||
|
||||
}
|
||||
|
||||
QStringList ATBVMCPlugin::interfaces() const {
|
||||
QStringList result;
|
||||
int const count = this->metaObject()->classInfoCount();
|
||||
for (int i = 0; i < count; ++i) {
|
||||
QString const name(QString::fromLatin1(this->metaObject()->classInfo(i).name()));
|
||||
QString const value(QString::fromLatin1(this->metaObject()->classInfo(i).value()));
|
||||
if (name == "Interface") {
|
||||
result << value;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
#if QT_VERSION < 0x050000
|
||||
Q_EXPORT_PLUGIN2(ATBVMCPlugin, ATBVMCPlugin)
|
||||
|
@@ -15,6 +15,7 @@ class ATBVMCPlugin : public VMCInterface {
|
||||
Q_OBJECT
|
||||
|
||||
Q_INTERFACES(VMCInterface)
|
||||
Q_CLASSINFO("Interface", "VMCInterface")
|
||||
|
||||
#if QT_VERSION >= 0x050000
|
||||
Q_PLUGIN_METADATA(IID "eu.atb.ptu.plugin.ATBVMCPlugin")
|
||||
@@ -42,6 +43,8 @@ public:
|
||||
// helpers e.g. for debug / log
|
||||
virtual QString const &getString(RESULT_STATE resultState) override;
|
||||
|
||||
QStringList interfaces() const;
|
||||
|
||||
public slots:
|
||||
virtual void onChangedProgramModeToSELL() override;
|
||||
virtual void onChangedProgramModeToSERVICE() override;
|
||||
|
@@ -12,8 +12,9 @@
|
||||
#include "ATBAPPplugin.h"
|
||||
|
||||
|
||||
class UnifiedDCVMCInterface : public ATBAPPplugin {
|
||||
Q_INTERFACES(ATBAPPplugin)
|
||||
class UnifiedDCVMCInterface : public ATBAPPplugin<UnifiedDCVMCInterface> {
|
||||
//Q_INTERFACES(ATBAPPplugin)
|
||||
//Q_CLASSINFO("Interface", "ATBAPPplugin")
|
||||
|
||||
public:
|
||||
explicit UnifiedDCVMCInterface() = default;
|
||||
@@ -44,7 +45,7 @@ public:
|
||||
|
||||
virtual QString const &getString(RESULT_STATE resultState) = 0;
|
||||
|
||||
public slots:
|
||||
//public slots:
|
||||
virtual void onChangedProgramModeToSELL() = 0;
|
||||
virtual void onChangedProgramModeToSERVICE() = 0;
|
||||
virtual void onChangedProgramModeToIDLE() = 0;
|
||||
@@ -56,7 +57,7 @@ public slots:
|
||||
virtual void reset() = 0;
|
||||
};
|
||||
|
||||
Q_DECLARE_INTERFACE(UnifiedDCVMCInterface,
|
||||
"eu.atb.ptu.plugin.UnifiedDCVMCInterface/1.0")
|
||||
//Q_DECLARE_INTERFACE(UnifiedDCVMCInterface,
|
||||
// "eu.atb.ptu.plugin.UnifiedDCVMCInterface/1.0")
|
||||
|
||||
#endif // UNIFIED_DCVMC_INTERFACE_H_INCLUDED
|
||||
|
@@ -20,8 +20,10 @@ namespace nsVMCInterface {
|
||||
class VMCInterface : public QObject, public UnifiedDCVMCInterface {
|
||||
|
||||
Q_OBJECT
|
||||
Q_INTERFACES(ATBAPPplugin UnifiedDCVMCInterface)
|
||||
|
||||
//Q_INTERFACES(ATBAPPplugin UnifiedDCVMCInterface)
|
||||
//Q_INTERFACES(UnifiedDCVMCInterface)
|
||||
//Q_CLASSINFO("Interface", "ATBAPPplugin")
|
||||
//Q_CLASSINFO("Interface", "UnifiedDCVMCInterface")
|
||||
public:
|
||||
|
||||
explicit VMCInterface(QObject *parent = nullptr) : QObject(parent) {}
|
||||
|
Reference in New Issue
Block a user