score_plugin_curve.hpp
1 #pragma once
2 #include <score/application/ApplicationContext.hpp>
3 #include <score/command/Command.hpp>
5 #include <score/plugins/Interface.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 <utility>
13 #include <vector>
14 #include <verdigris>
34 class score_plugin_curve final
40 {
41  SCORE_PLUGIN_METADATA(1, "49837ed7-dbc5-4330-9890-a130a2718b5e")
42 public:
44  ~score_plugin_curve() override;
45 
46 private:
47  std::vector<score::InterfaceBase*> factories(
48  const score::ApplicationContext& ctx,
49  const score::InterfaceKey& factoryName) const override;
50 
51  std::vector<std::unique_ptr<score::InterfaceListBase>> factoryFamilies() override;
52 
53  std::pair<const CommandGroupKey, CommandGeneratorMap> make_commands() override;
54 
56  make_guiApplicationPlugin(const score::GUIApplicationContext& app) override;
57 };
Definition: UuidKey.hpp:343
Definition: GUIApplicationPlugin_QtInterface.hpp:12
Definition: CommandFactory_QtInterface.hpp:12
Definition: FactoryInterface_QtInterface.hpp:19
Definition: FactoryFamily_QtInterface.hpp:14
Used to extend the software with application-wide data.
Definition: GUIApplicationPlugin.hpp:89
Definition: PluginRequirements_QtInterface.hpp:18
Definition: score_plugin_curve.hpp:40
Used to access all the application-wide state and structures.
Definition: ApplicationContext.hpp:24
Specializes ApplicationContext with the QMainWindow.
Definition: GUIApplicationContext.hpp:15