45 SCORE_SERIALIZE_FRIENDS
46 friend class vst3::CreateVSTControl;
49 PROCESS_METADATA_IMPL(
Model)
54 template <
typename Impl>
55 Model(Impl& vis, QObject* parent)
56 : ProcessModel{vis, parent}
63 QString effect()
const noexcept override;
64 QString prettyName()
const noexcept override;
65 bool hasExternalUI()
const noexcept;
69 ossia::hash_map<Steinberg::Vst::ParamID, ControlInlet*> controls;
72 void removeControl(Steinberg::Vst::ParamID fxnum);
74 void addControlFromEditor(Steinberg::Vst::ParamID
id);
75 void on_addControl(
const Steinberg::Vst::ParameterInfo& v);
76 void on_addControl_impl(
ControlInlet* inl,
const Steinberg::Vst::ParameterInfo*);
77 void initControl(
ControlInlet* inl,
const Steinberg::Vst::ParameterInfo*);
79 void reloadControls();
80 Steinberg::tresult restartComponent(int32_t flags);
85 std::vector<Process::Preset> builtinPresets()
const noexcept override;
90 void mapAllControls(
int numParams);
91 QByteArray readProcessorState()
const;
92 QByteArray readControllerState()
const;
98 QByteArray m_savedProcessorState;
99 QByteArray m_savedControllerState;
101 ossia::hash_map<Steinberg::Vst::ParamID, int32_t> m_paramToIndex;