Мы хотим добавить несколько экстракторов функций, фильтров и входов как плагин Qt, практически без функции, но почему-то я не могу сделать это правильно.
Базовый интерфейс, который позже каждый вход будет использовать: Мой «InputInterface.h»
#pragma once
#include <QString>class InputInterface{
public:
virtual QString name() const = 0;
virtual void doSomething() const = 0;
};Q_DECLARE_INTERFACE(InputInterface, "TestPlugin")
«Myinputtest.h»:
#pragma once
#include <QObject>
#include <QtPlugin>
#include <QDebug>
#include "InputInterface.h"
class MyInputTest : public QObject, InputInterface{
Q_OBJECT
Q_INTERFACES(InputInterface)
public:
MyInputTest();
QString name() const;
void doSomething() const;
};
«Myinputtest.cpp»
#include "myinputtest.h"
MyInputTest::MyInputTest()
{
}
Q_EXPORT_PLUGIN2(MyInputTest, MyInputTest)
QString MyInputTest::name() const{
return "My Plugin Version 1";
}
void MyInputTest::doSomething() const {
qDebug() << "Doing Something";
}
CMakeList.txt: (часть)
project(PluginTest)
cmake_minimum_required(VERSION 2.8)
set(PluginTest_MAJOR_VERSION 1)
set(PluginTest_MINOR_VERSION 0)
set(PluginTest_PATCH_VERSION 0)
set(PluginTest_VERSION ${Mutatio_MAJOR_VERSION}.${Mutatio_MINOR_VERSION}.${Mutatio_PATCH_VERSION})
set(TEMPLATE LIBRARY)
set(TARGET MyInputTest)
set(CONFIG plugin release)
Задача ещё не решена.
Других решений пока нет …