score_plugin_vst3.hpp
1 #pragma once
2 #include <score/application/ApplicationContext.hpp>
3 #include <score/command/Command.hpp>
5 #include <score/plugins/InterfaceList.hpp>
6 #include <score/plugins/qt_interfaces/CommandFactory_QtInterface.hpp>
7 #include <score/plugins/qt_interfaces/FactoryFamily_QtInterface.hpp>
8 #include <score/plugins/qt_interfaces/FactoryInterface_QtInterface.hpp>
9 #include <score/plugins/qt_interfaces/GUIApplicationPlugin_QtInterface.hpp>
10 #include <score/plugins/qt_interfaces/PluginRequirements_QtInterface.hpp>
11 
12 #include <QObject>
13 
14 #include <utility>
15 #include <vector>
16 
17 class score_plugin_vst3 final
22 {
23  SCORE_PLUGIN_METADATA(1, "178f6c4f-7982-48c1-847f-ba676486d1ff")
24 
25 public:
27  ~score_plugin_vst3() override;
28 
29 private:
31  make_applicationPlugin(const score::ApplicationContext& app) override;
32 
33  std::vector<score::InterfaceBase*> factories(
34  const score::ApplicationContext& ctx,
35  const score::InterfaceKey& key) const override;
36 
37  std::pair<const CommandGroupKey, CommandGeneratorMap> make_commands() override;
38 };
Definition: UuidKey.hpp:343
Definition: GUIApplicationPlugin_QtInterface.hpp:12
Definition: GUIApplicationPlugin.hpp:31
Definition: CommandFactory_QtInterface.hpp:12
Definition: FactoryInterface_QtInterface.hpp:19
Definition: PluginRequirements_QtInterface.hpp:18
Definition: score_plugin_vst3.hpp:22
Used to access all the application-wide state and structures.
Definition: ApplicationContext.hpp:24