/// <summary> /// Listens to changes made to parameter values from the host and sends those changes to /// MssParameters. /// </summary> /// <param name="sender">The VstParameter that changed.</param> private void VstParameter_Changed(object sender, PropertyChangedEventArgs e) { VstParameter changedParam = (VstParameter)sender; MssParameterID paramID; //Gets the MssParameterID associated with the changed parameter. VstParameterManagerDict.TryGetLeftByRight(out paramID, changedParam.Info.ParameterManager); if (this.parametersBeingModified.Contains(paramID) == false) { if (e.PropertyName == VstParameter.ValuePropertyName) { this.parametersBeingModified.Add(paramID); //Notifies MssParameters of the change. this.mssParameters.SetParameterRelativeValue(paramID, changedParam.Value); this.parametersBeingModified.Remove(paramID); } } }