/// <summary> /// Constructs a new instance. /// </summary> /// <param name="plugin">A reference to the plugin root object.</param> public PluginPrograms(Plugin plugin) { _plugin = plugin; ParameterCategories = new VstParameterCategoryCollection(); ParameterInfos = new VstParameterInfoCollection(); }
/// <summary> /// Constructs a new instance based on a collection of parameter <paramref name="categories"/>. /// </summary> /// <param name="categories">Must not be null.</param> public VstProgram(VstParameterCategoryCollection categories) { Throw.IfArgumentIsNull(categories, "categories"); Categories = categories; }
/// <summary> /// Constructs a new instance. /// </summary> /// <remarks>The <see cref="Categories"/> are automatically filled as <see cref="VstParameter"/> instances /// are added to the <see cref="Parameters"/> collection.</remarks> public VstProgram() { Categories = new VstParameterCategoryCollection(); Parameters.CollectionChanged += new NotifyCollectionChangedEventHandler(Parameters_CollectionChanged); }