public BypassParameter(string name, string label, IVstPluginBypass bypassProvider, string shortLabel = "", bool canBeAutomated = true) : base(name, label, shortLabel, canBeAutomated) { _bypassProvider = bypassProvider; }
/// <summary> /// Called when an instance of the <see cref="IVstPluginBypass"/> interface is requested. /// </summary> /// <param name="instance">The default instance or null.</param> /// <returns>Returns <paramref name="instance"/>.</returns> /// <remarks>Override to create an instance of the <see cref="IVstPluginBypass"/> interface. /// When <paramref name="instance"/> is null, create the default instance. When the <paramref name="instance"/> /// is not null, create a Thread Safe instance, possibly wrapping the default <paramref name="instance"/>.</remarks> protected virtual IVstPluginBypass CreateBypass(IVstPluginBypass instance) { return(instance); }
/// <summary> /// Implement this when you support bypassing your audio processing. /// </summary> /// <param name="instance">A previous instance returned by this method. /// When non-null, return a thread-safe version (or wrapper) for the object.</param> /// <returns>Returns null when not supported by the plugin.</returns> protected override IVstPluginBypass CreateBypass(IVstPluginBypass instance) { // we implement the bypass interface on our audio processor object. return((IVstPluginBypass)AudioProcessor); }
protected override IVstPluginBypass CreateBypass(IVstPluginBypass instance) { return(AudioProcessor); }