score-addon-hardware/score_addon_hardware.hpp

36 lines
1.2 KiB
C++
Raw Permalink Normal View History

2024-10-03 23:50:15 +01:00
#pragma once
#include <score/application/ApplicationContext.hpp>
#include <score/plugins/Interface.hpp>
2024-10-03 23:50:15 +01:00
#include <score/plugins/qt_interfaces/FactoryFamily_QtInterface.hpp>
#include <score/plugins/qt_interfaces/FactoryInterface_QtInterface.hpp>
#include <score/plugins/qt_interfaces/GUIApplicationPlugin_QtInterface.hpp>
#include <score/plugins/qt_interfaces/PluginRequirements_QtInterface.hpp>
2024-10-03 23:50:15 +01:00
#include <QObject>
#include <vector>
2024-10-03 23:50:15 +01:00
class score_addon_hardware final
: public score::Plugin_QtInterface
, public score::FactoryList_QtInterface
, public score::FactoryInterface_QtInterface
, public score::ApplicationPlugin_QtInterface
{
SCORE_PLUGIN_METADATA(1, "5cf3c2d1-b8bd-4975-b165-8dc2e547e64c")
public:
score_addon_hardware();
virtual ~score_addon_hardware();
private:
score::GUIApplicationPlugin*
make_guiApplicationPlugin(const score::GUIApplicationContext& app) override;
2024-10-03 23:50:15 +01:00
std::vector<std::unique_ptr<score::InterfaceListBase>> factoryFamilies() override;
2024-10-03 23:50:15 +01:00
std::vector<score::InterfaceBase*> factories(
const score::ApplicationContext& ctx,
const score::InterfaceKey& key) const override;
std::vector<score::PluginKey> required() const override;
};