Interface IParameterEditSink
Bridge between the editor and the controller: VST3 edit protocol, MIDI learn and notes played on the editor (PluginUIController<TModel> implements it for you).
public interface IParameterEditSink
Properties
ControllerHandler
Host services (context menus...), null before the host connected the controller.
IAudioControllerHandler? ControllerHandler { get; }
Property Value
- IAudioControllerHandler
MidiLearn
MIDI learn service offered by the editor's context menus, or null (default) for none.
IMidiLearnService? MidiLearn { get; }
Property Value
Model
Controller-side model: its events drive the repaints of bound controls.
AudioProcessorModel Model { get; }
Property Value
- AudioProcessorModel
Methods
BeginEdit(AudioParameter)
Starts a gesture (the host records automation from here).
void BeginEdit(AudioParameter parameter)
Parameters
parameterAudioParameter
EndEdit(AudioParameter)
Ends the gesture.
void EndEdit(AudioParameter parameter)
Parameters
parameterAudioParameter
IsEditing(AudioParameter)
true while a gesture is open on parameter.
bool IsEditing(AudioParameter parameter)
Parameters
parameterAudioParameter
Returns
PerformEdit(AudioParameter, double)
Changes the value during a gesture (forwarded to the host, then to the processor).
void PerformEdit(AudioParameter parameter, double normalizedValue)
Parameters
parameterAudioParameternormalizedValuedouble
TrySendNote(UINoteEvent)
Sends a note played on the editor to the processor; the default does nothing and returns false.
bool TrySendNote(UINoteEvent note)
Parameters
noteUINoteEventThe note event.
Returns
- bool
trueif the note was sent.