2 #include <State/Message.hpp>
4 #include <Process/ProcessMetadata.hpp>
6 #include <Curve/Process/CurveProcessModel.hpp>
8 #include <score_plugin_scenario_export.h>
15 , InterpState::ProcessModel,
"09fa6f72-55d5-4fee-8bc7-6f983c2e62d8",
"InterpState",
16 "State interpolation", Process::ProcessCategory::Automation,
"Automations",
17 "Interpolate between two states",
"ossia score",
18 (QStringList{
"Curve",
"Automation"}), {},
19 {std::vector<Process::PortType>{Process::PortType::Message}},
20 Process::ProcessFlags::SupportsTemporal)
25 SCORE_SERIALIZE_FRIENDS
26 PROCESS_METADATA_IMPL(InterpState::ProcessModel)
28 W_OBJECT(ProcessModel)
34 ~ProcessModel()
override;
36 template <
typename Impl>
37 ProcessModel(Impl& vis, QObject* parent)
38 : CurveProcessModel{vis, parent}
43 QString prettyName() const noexcept override;
44 QString prettyValue(
double x,
double y) const noexcept override;
46 State::MessageList startMessages() const;
47 State::MessageList endMessages() const;
51 void setDurationAndScale(const
TimeVal& newDuration) noexcept override;
52 void setDurationAndGrow(const
TimeVal& newDuration) noexcept override;
53 void setDurationAndShrink(const
TimeVal& newDuration) noexcept override;
Definition: CurveProcessModel.hpp:11
The id_base_t class.
Definition: Identifier.hpp:57
Utilities for OSSIA data structures.
Definition: DeviceInterface.hpp:33
Definition: TimeValue.hpp:21