/// <summary>
        /// To be called from the default constructor of the derived plugin class
        /// to initialize the base class.
        /// </summary>
        /// <param name="name">The name of the plugin. Must not be null. <seealso cref="Name"/></param>
        /// <param name="productInfo">The product information of the plugin. Must not be null. <seealso cref="ProductInfo"/></param>
        /// <param name="category">The plugin category. <seealso cref="Category"/></param>
        /// <param name="capabilities">The plugin capabilities <seealso cref="Capabilities"/>.</param>
        /// <param name="initialDelay">The initial delay of the plugin. <seealso cref="InitialDelay"/></param>
        /// <param name="pluginID">The unique Id of the plugin. <seealso cref="PluginID"/></param>
        /// <exception cref="System.ArgumentNullException">Thrown when <paramref name="productInfo"/> or <paramref name="name"/> is not set to an instance of an object.</exception>
        /// <exception cref="System.ArgumentException">Thrown when <paramref name="name"/> is an empty string.</exception>
        protected VstPluginWithInterfaceManagerBase(string name, VstProductInfo productInfo, VstPluginCategory category, VstPluginCapabilities capabilities, int initialDelay, int pluginID)
        {
            Throw.IfArgumentIsNull(productInfo, "productInfo");
            Throw.IfArgumentIsNullOrEmpty(name, "name");

            ProductInfo = productInfo;
            Name = name;
            Category = category;
            Capabilities = capabilities;
            InitialDelay = initialDelay;
            PluginID = pluginID;
        }
예제 #2
0
        public void Test_VstProductInfoConstructor()
        {
            string product = "UnitTestProduct";
            string vendor  = "UnitTestVendor";
            int    version = 1200;

            VstProductInfo pi = new VstProductInfo(product, vendor, version);

            Assert.IsTrue(pi.IsValid, "VstProductInfo.IsValid");
            Assert.AreEqual(product, pi.Product, "VstProductInfo.Product");
            Assert.AreEqual(vendor, pi.Vendor, "VstProductInfo.Vendor");
            Assert.AreEqual(version, pi.Version, "VstProductInfo.Version");
            Assert.AreEqual("1.2.0.0", pi.FormattedVersion, "VstProductInfo.FormattedVersion");
        }
예제 #3
0
        /// <summary>
        /// To be called from the default constructor of the derived plugin class
        /// to initialize the base class.
        /// </summary>
        /// <param name="name">The name of the plugin. Must not be null. <seealso cref="Name"/></param>
        /// <param name="productInfo">The product information of the plugin. Must not be null. <seealso cref="ProductInfo"/></param>
        /// <param name="category">The plugin category. <seealso cref="Category"/></param>
        /// <param name="capabilities">The plugin capabilities <seealso cref="Capabilities"/>.</param>
        /// <param name="initialDelay">The initial delay of the plugin. <seealso cref="InitialDelay"/></param>
        /// <param name="pluginID">The unique Id of the plugin. <seealso cref="PluginID"/></param>
        /// <exception cref="System.ArgumentNullException">Thrown when <paramref name="productInfo"/> or <paramref name="name"/> is not set to an instance of an object.</exception>
        /// <exception cref="System.ArgumentException">Thrown when <paramref name="name"/> is an empty string.</exception>
        protected VstPlugin(string name, int pluginID,
                            VstProductInfo productInfo, VstPluginCategory category,
                            int initialDelay = 0, VstPluginCapabilities capabilities = VstPluginCapabilities.None)
        {
            Throw.IfArgumentIsNull(productInfo, nameof(productInfo));
            Throw.IfArgumentIsNullOrEmpty(name, nameof(name));

            ProductInfo  = productInfo;
            Name         = name;
            Category     = category;
            Capabilities = capabilities;
            InitialDelay = initialDelay;
            PluginID     = pluginID;
        }
예제 #4
0
        /// <summary>
        /// To be called from the default constructor of the derived plugin class
        /// to initialize the base class.
        /// </summary>
        /// <param name="name">The name of the plugin. Must not be null. <seealso cref="Name"/></param>
        /// <param name="productInfo">The product information of the plugin. Must not be null. <seealso cref="ProductInfo"/></param>
        /// <param name="category">The plugin category. <seealso cref="Category"/></param>
        /// <param name="capabilities">The plugin capabilities <seealso cref="Capabilities"/>.</param>
        /// <param name="initialDelay">The initial delay of the plugin. <seealso cref="InitialDelay"/></param>
        /// <param name="pluginID">The unique Id of the plugin. <seealso cref="PluginID"/></param>
        /// <exception cref="System.ArgumentNullException">Thrown when <paramref name="productInfo"/> or <paramref name="name"/> is not set to an instance of an object.</exception>
        /// <exception cref="System.ArgumentException">Thrown when <paramref name="name"/> is an empty string.</exception>
        protected VstPluginBase(string name, VstProductInfo productInfo,
                                VstPluginCategory category, VstPluginCapabilities capabilities,
                                int initialDelay, int pluginID)
        {
            Throw.IfArgumentIsNull(productInfo, "productInfo");
            Throw.IfArgumentIsNullOrEmpty(name, "name");

            ProductInfo  = productInfo;
            Name         = name;
            Category     = category;
            Capabilities = capabilities;
            InitialDelay = initialDelay;
            PluginID     = pluginID;
        }
예제 #5
0
        public void Test_VstProductInfoConstructor()
        {
            string product = "UnitTestProduct";
            string vendor  = "UnitTestVendor";
            int    version = 1200;

            var pi = new VstProductInfo(product, vendor, version);

            pi.IsValid.Should().BeTrue();
            pi.Product.Should().Be(product);
            pi.Vendor.Should().Be(vendor);
            pi.Version.Should().Be(version);
            pi.FormattedVersion.Should().Be("1.2.0.0");
        }
예제 #6
0
 /// <inheritdoc/>
 protected VstPluginWithServices(string name, int pluginID,
                                 VstProductInfo productInfo, VstPluginCategory category,
                                 int initialDelay = 0, VstPluginCapabilities capabilities = VstPluginCapabilities.None)
     : base(name, pluginID, productInfo, category, initialDelay, capabilities)
 {
 }
예제 #7
0
 protected SyntagePlugin(string name, VstProductInfo productInfo, VstPluginCategory category, VstPluginCapabilities capabilities,
                         int initialDelay, int pluginID) : base(name, productInfo, category, capabilities, initialDelay, pluginID)
 {
     ParametersManager = new ParametersManager();
 }