Example #1
0
        /// <summary>
        /// Initializes all plugin parameters (one component at a time).
        /// </summary>
        public PluginParameters(IVstPluginEvents pluginEvents)
        {
            // register the parameters of all plugin (sub) components
            DelayParameters = new DelayParameters(this);

            pluginEvents.Opened += Plugin_Opened;
        }
Example #2
0
        /// <summary>
        /// Constructs a new Midi Processor.
        /// </summary>
        /// <param name="plugin">Must not be null.</param>
        public MidiProcessor(IVstPluginEvents pluginEvents, PluginParameters parameters)
        {
            Gain      = new Gain(parameters.GainParameters);
            Transpose = new Transpose(parameters.TransposeParameters);

            // for most hosts, midi output is expected during the audio processing cycle.
            SyncWithAudioProcessor = true;

            pluginEvents.Opened += Plugin_Opened;
        }
Example #3
0
        /// <summary>
        /// Default constructor.
        /// </summary>
        public AudioProcessor(IVstPluginEvents pluginEvents, PluginParameters parameters)
            : base(AudioInputCount, AudioOutputCount, InitialTailSize, noSoundInStop: false)
        {
            Throw.IfArgumentIsNull(pluginEvents, nameof(pluginEvents));
            Throw.IfArgumentIsNull(parameters, nameof(parameters));

            // one set of parameters is shared for both channels.
            Left  = new Delay(parameters.DelayParameters);
            Right = new Delay(parameters.DelayParameters);

            pluginEvents.Opened += Plugin_Opened;
        }
Example #4
0
 /// <summary>
 /// Constructs a new instance.
 /// </summary>
 /// <param name="plugin">Must not be null.</param>
 public AudioProcessor(IVstPluginEvents pluginEvents)
     : base(0, 0, 0, noSoundInStop: true)
 {
     pluginEvents.Opened += Plugin_Opened;
 }