// Copyright (c) Arlo Godfrey. All Rights Reserved. // Licensed under the GNU Lesser General Public License, Version 3.0 with additional terms. // See the LICENSE, LICENSE.LESSER and LICENSE.ADDITIONAL files in the project root for more information. using System; namespace StrixMusic.Sdk.Plugins.Model { /// /// Contains metadata for a plugin. Used to identify a plugin before instantiation. /// public sealed class ModelPluginMetadata { /// /// Creates a new instance of . /// /// A unique identifier for this plugin, including all instances. /// The user-friendly name of the plugin. /// Briefly describes this plugin. /// This plugin's version number. public ModelPluginMetadata(string id, string displayName, string description, Version pluginVersion) { Id = id; DisplayName = displayName; Description = description; SdkVersion = typeof(ModelPluginMetadata).Assembly.GetName().Version; PluginVersion = pluginVersion; } /// /// A unique identifier for this plugin, across all instances. /// public string Id { get; } /// /// A path pointing to an SVG file containing the logo for this plugin. /// public Uri? LogoUri { get; set; } /// /// The user-friendly name for the plugin. /// public string DisplayName { get; } /// /// Briefly describes this plugin. /// public string Description { get; } /// /// The version of the Strix Music SDK that this plugin was built against. /// public Version SdkVersion { get; } /// /// This plugin's version number. /// public Version PluginVersion { get; set; } } }