comparison widgets/PluginParameterBox.h @ 1581:11660e0c896f audio-source-refactor

Use shared_ptr for plugin instances throughout; also descriptors are copyable
author Chris Cannam
date Fri, 20 Mar 2020 16:31:23 +0000
parents 05d614f6e46d
children 7eb595837eaa
comparison
equal deleted inserted replaced
1580:a2ff9c01889e 1581:11660e0c896f
30 class PluginParameterBox : public QFrame 30 class PluginParameterBox : public QFrame
31 { 31 {
32 Q_OBJECT 32 Q_OBJECT
33 33
34 public: 34 public:
35 PluginParameterBox(Vamp::PluginBase *, QWidget *parent = 0); 35 PluginParameterBox(std::shared_ptr<Vamp::PluginBase>,
36 QWidget *parent = 0);
36 ~PluginParameterBox(); 37 ~PluginParameterBox();
37 38
38 Vamp::PluginBase *getPlugin() { return m_plugin; } 39 std::shared_ptr<Vamp::PluginBase> getPlugin() { return m_plugin; }
39 40
40 signals: 41 signals:
41 void pluginConfigurationChanged(QString); 42 void pluginConfigurationChanged(QString);
42 43
43 protected slots: 44 protected slots:
49 protected: 50 protected:
50 void populate(); 51 void populate();
51 void updateProgramCombo(); 52 void updateProgramCombo();
52 53
53 QGridLayout *m_layout; 54 QGridLayout *m_layout;
54 Vamp::PluginBase *m_plugin; 55 std::shared_ptr<Vamp::PluginBase> m_plugin;
55 56
56 struct ParamRec { 57 struct ParamRec {
57 AudioDial *dial; 58 AudioDial *dial;
58 QDoubleSpinBox *spin; 59 QDoubleSpinBox *spin;
59 QCheckBox *check; 60 QCheckBox *check;