36 using Fs::operator()...;
69 return "step_sequence";
95 if (name ==
"envelope")
99 if (name ==
"step_sequence")
164constexpr std::optional<ModulationSourceKind>
166 if (name ==
"modulator")
183 constexpr bool valid() const noexcept {
222 constexpr bool valid() const noexcept {
ModulatorKind
The signal shape a modulator produces.
Definition modulation.hpp:51
constexpr std::size_t kModulationTargetAlternativeCount
Number of alternatives a route target may take.
Definition modulation.hpp:42
constexpr std::size_t kParameterTargetAlternativeCount
Number of alternatives in ParameterTarget.
Definition parameter_target.hpp:102
ModulationSourceKind
Which track-owned entity a route draws its signal from.
Definition modulation.hpp:146
ModulationTargetCases(Fs...) -> ModulationTargetCases< Fs... >
constexpr float kMaximumModulationDepth
Largest magnitude a route depth may carry.
Definition modulation.hpp:191
ParameterTarget ModulationTarget
Exhaustive authored target set for a modulation route.
Definition modulation.hpp:26
constexpr std::string_view modulator_kind_name(ModulatorKind value) noexcept
The canonical persisted spelling of a modulator kind, shared by the encoder, the decoder,...
Definition modulation.hpp:60
std::variant< DeviceParameterTarget, TrackMixerTarget > ParameterTarget
Exhaustive set of document parameters an authored control can address.
Definition parameter_target.hpp:92
constexpr std::optional< ModulatorKind > modulator_kind_from_name(std::string_view name) noexcept
Parses the canonical persisted modulator-kind spelling.
Definition modulation.hpp:92
constexpr bool known_modulator_kind(ModulatorKind value) noexcept
Returns whether value names a declared modulator kind.
Definition modulation.hpp:79
constexpr std::string_view modulation_source_kind_name(ModulationSourceKind value) noexcept
The canonical persisted spelling of a modulation source kind.
Definition modulation.hpp:152
constexpr std::optional< ModulationSourceKind > modulation_source_kind_from_name(std::string_view name) noexcept
Parses the canonical persisted modulation-source-kind spelling.
Definition modulation.hpp:165
@ Lfo
Definition modulation.hpp:52
@ Envelope
Definition modulation.hpp:53
@ Random
Definition modulation.hpp:54
@ StepSequence
Definition modulation.hpp:55
@ Modulator
Definition modulation.hpp:147
@ Macro
Definition modulation.hpp:148
Definition program_compiler.hpp:18
Nonzero monotonic identity for a Timeline-owned object.
Definition item_id.hpp:19
A track-owned named control that a performer sets and that drives parameters through ordinary modulat...
Definition modulation.hpp:129
bool operator==(const MacroControl &) const =default
ItemId id
Definition modulation.hpp:130
std::string name
Definition modulation.hpp:131
bool valid() const noexcept
Returns whether id is a usable, non-sentinel document identity.
Definition modulation.hpp:138
float value
Definition modulation.hpp:135
One authored source-to-parameter connection.
Definition modulation.hpp:209
float depth
Definition modulation.hpp:216
ModulationSourceRef source
Definition modulation.hpp:211
constexpr bool valid() const noexcept
Returns whether id is a usable, non-sentinel document identity.
Definition modulation.hpp:222
bool enabled
Definition modulation.hpp:219
ModulationTarget target
Definition modulation.hpp:212
ItemId id
Definition modulation.hpp:210
bool operator==(const ModulationRoute &) const =default
Reference to the track-owned source a route reads.
Definition modulation.hpp:178
ModulationSourceKind kind
Definition modulation.hpp:180
ItemId id
Definition modulation.hpp:179
constexpr bool operator==(const ModulationSourceRef &) const =default
constexpr bool valid() const noexcept
Returns whether the referenced source identity is nonzero.
Definition modulation.hpp:183
Overload set for visiting a ModulationTarget with no generic fallback.
Definition modulation.hpp:35
A track-owned generator of modulation signal.
Definition modulation.hpp:109
bool operator==(const Modulator &) const =default
bool valid() const noexcept
Returns whether id is a usable, non-sentinel document identity.
Definition modulation.hpp:115
ModulatorKind kind
Definition modulation.hpp:111
std::string name
Definition modulation.hpp:112
ItemId id
Definition modulation.hpp:110