### Get Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpServiceFileSystems.html Retrieves the interface of a specified file system command. ```APIDOC ## GET /fileSystemCommands/{commandType} ### Description Get the interface of specified command. ### Method GET ### Endpoint /fileSystemCommands/{commandType} ### Parameters #### Path Parameters - **commandType** (FileCommandType) - Required - The command type FileCommandType. #### Query Parameters - **fileUri** (string) - Required - The name of virtual file. ### Response #### Success Response (200) - **result** (IAimpFileSystemCommand) - The interface of the specified command. - **actionResult** (AimpActionResult) - Indicates the success or failure of the operation. ``` -------------------------------- ### Get Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Lyrics.IAimpServiceLyrics.html Retrieves the lyrics for a given file. ```APIDOC ## Get(IAimpFileInfo, LyricsFlags, Object) ### Description Gets a lyrics for file. ### Declaration ```csharp AimpActionResult Get(IAimpFileInfo fileInfo, LyricsFlags flags, object userData) ``` ### Parameters #### Path Parameters - **fileInfo** (IAimpFileInfo) - Required - The file info IAimpFileInfo. - **flags** (LyricsFlags) - Required - The lyrics flags LyricsFlags. - **userData** (System.Object) - Optional - A user data passed to function. ``` -------------------------------- ### Get(String, String, String, IAimpAlbumArtSearchOptions) Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtProvider.html Gets the album art image based on provided file URL, artist, and album information. ```APIDOC ## Method: Get ### Description Gets the album art image. ### Declaration ```csharp AimpActionResult Get(string fileUrl, string artist, string album, IAimpAlbumArtSearchOptions options) ``` ### Parameters #### Path Parameters - **fileUrl** (System.String) - Required - The file URL. - **artist** (System.String) - Optional - The artist. - **album** (System.String) - Optional - The album. - **options** (IAimpAlbumArtSearchOptions) - Required - The search options IAimpAlbumArtSearchOptions. ``` -------------------------------- ### Get Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Lyrics.IAimpServiceLyrics.html Retrieves lyrics for a specific file. ```csharp AimpActionResult Get(IAimpFileInfo fileInfo, LyricsFlags flags, object userData) ``` -------------------------------- ### AssemblyFileName Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginShortInfoForLoad.html Gets or sets the name of the assembly file. ```csharp public string AssemblyFileName { get; set; } ``` -------------------------------- ### AssemblyFullName Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginShortInfoForLoad.html Gets or sets the full name of the assembly. ```csharp public string AssemblyFullName { get; set; } ``` -------------------------------- ### GetDefault Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpServiceFileSystems.html Gets the default file system command for a given command type. ```APIDOC ## GET /fileSystemCommands/default/{commandType} ### Description Gets the default file system command. ### Method GET ### Endpoint /fileSystemCommands/default/{commandType} ### Parameters #### Path Parameters - **commandType** (FileCommandType) - Required - Type of the command. ### Response #### Success Response (200) - **result** (IAimpFileSystemCommand) - The default command interface. - **actionResult** (AimpActionResult) - Indicates the success or failure of the operation. ``` -------------------------------- ### AimpFileAttributes TimeCreation Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.AimpFileAttributes.html Gets or sets the creation time of the file. Represented as a double. ```csharp public double TimeCreation { get; set; } ``` -------------------------------- ### PluginLocInfo Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginShortInfoForLoad.html Gets or sets the plugin loc information. ```csharp public AimpPluginAttribute PluginLocInfo { get; set; } ``` -------------------------------- ### GetCapabilities Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.DataStorage.IAimpGroupingTreeDataProvider.html Gets the capabilities flags for the grouping tree data provider. ```APIDOC ## GetCapabilities() ### Description Gets the capabilities. ### Declaration ```csharp CapabilitiesFlags GetCapabilities() ``` ``` -------------------------------- ### Get Configuration Values Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.IAimpConfig.html Methods to retrieve configuration values as specific data types. ```csharp AimpActionResult GetValueAsFloat(string keyPath) ``` ```csharp AimpActionResult GetValueAsInt32(string keyPath) ``` ```csharp AimpActionResult GetValueAsInt64(string keyPath) ``` ```csharp AimpActionResult GetValueAsStream(string keyPath) ``` ```csharp AimpActionResult GetValueAsString(string keyPath) ``` -------------------------------- ### Get Menu Item Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MenuManager.IAimpServiceMenuManager.html Methods for retrieving menu items by type or identifier. ```csharp AimpActionResult GetBuiltIn(ParentMenuType menuType) ``` ```csharp AimpActionResult GetById(string id) ``` -------------------------------- ### Get Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtProvider2.html Retrieves the album art image based on the provided file information and search options. ```csharp AimpActionResult Get(IAimpFileInfo fileInfo, IAimpAlbumArtSearchOptions options) ``` -------------------------------- ### Initialize Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpPlugin.html Abstract declaration for the Initialize method, part of the IAimpPlugin interface. Implement this to perform all necessary plugin setup and initialization logic. ```csharp public abstract void Initialize() ``` -------------------------------- ### Get Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Lyrics.IAimpExtensionLyricsProvider.html Details for the Get method of the IAimpExtensionLyricsProvider interface, used to retrieve lyrics. ```APIDOC ### Methods #### Get(IAimpTaskOwner, IAimpFileInfo, LyricsFlags, IAimpLyrics) Gets the specified owner. ##### Declaration ```csharp AimpActionResult Get(IAimpTaskOwner owner, IAimpFileInfo fileInfo, LyricsFlags flags, IAimpLyrics lyrics) ``` ##### Parameters Type | Name | Description ---|---|--- IAimpTaskOwner | owner | The owner. IAimpFileInfo | fileInfo | The file information. LyricsFlags | flags | The flags. IAimpLyrics | lyrics | The lyrics. ``` -------------------------------- ### Initialize PluginInformation Instance Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginInformation.html Constructors for creating a new instance of the PluginInformation class using either FileInfo or string paths. ```csharp public PluginInformation(FileInfo assemblyPath, string assemblyName, string className, AimpPluginAttribute pluginAttribute) ``` ```csharp public PluginInformation(string assemblyPath, string assemblyName, string className, AimpPluginAttribute pluginAttribute) ``` -------------------------------- ### Get Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpServiceAlbumArt.html Initiates a request to retrieve album art based on file URL, artist, and album information. ```APIDOC ## POST /api/albumart/get ### Description Gets the album art image. ### Method POST ### Endpoint /api/albumart/get ### Parameters #### Query Parameters - **fileUrl** (String) - Required - The file URL. - **artist** (String) - Optional - The artist name. - **album** (String) - Optional - The album name. - **flags** (AimpFindCovertArtType) - Optional - Flags to control the search behavior. - **userData** (Object) - Required - User-defined data to be passed with the request. ### Request Example ```json { "fileUrl": "http://example.com/music.mp3", "artist": "Example Artist", "album": "Example Album", "flags": "FindInInternet", "userData": { "id": "user123" } } ``` ### Response #### Success Response (200) - **Result** (AimpActionResult) - Contains the task identifier for the asynchronous operation. #### Response Example ```json { "Result": { "Success": true, "Value": 456 } } ``` ``` -------------------------------- ### Manage Plugin Lifecycle and UI Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginInformation.html Methods for initializing, loading, unloading, and displaying settings for the plugin. ```csharp public void Dispose() ``` ```csharp public void Initialize(IAimpPlayer player) ``` ```csharp public bool Load() ``` ```csharp public void ShowSettingDialog(IntPtr parentWindow) ``` ```csharp public void Unload() ``` -------------------------------- ### Initialize(String) Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.CustomAssemblyResolver.html Initializes the assembly resolver with a specified path. ```APIDOC ## Initialize(String) ### Description Initializes the specified path for the assembly resolver. ### Parameters #### Parameters - **path** (System.String) - Required - The path to initialize. ``` -------------------------------- ### Notify Background Task Started - IAimpDataStorageManager Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpDataStorageManager.html Call this method to notify that a background task has started. Provide the task's identifier, a caption, and an event to handle cancellation. ```csharp AimpActionResult BackgroundTaskStarted(int id, string caption, IAimpActionEvent cancelEvent) ``` -------------------------------- ### IAimpVirtualFile Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpVirtualFile.html Methods for stream creation, file information retrieval, existence checks, and synchronization. ```csharp AimpActionResult CreateStream() ``` ```csharp AimpActionResult GetFileInfo() ``` ```csharp bool IsExists() ``` ```csharp AimpActionResult IsInSameStream(IAimpVirtualFile virtualFile) ``` ```csharp AimpActionResult Synchronize() ``` -------------------------------- ### Get File System Command by Type and URI Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpServiceFileSystems.html Retrieves an IAimpFileSystemCommand interface for a specified command type and file URI. Use this method to get a specific file system command implementation. ```csharp AimpActionResult Get(FileCommandType commandType, string fileUri) ``` -------------------------------- ### ClassName Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginShortInfoForLoad.html Gets or sets the name of the class. ```csharp public string ClassName { get; set; } ``` -------------------------------- ### Show Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtCatalog2.html This method will be called on menu item click. ```APIDOC ## Method: Show ### Description This method will be called on menu item click. ### Declaration ```csharp AimpActionResult Show(IAimpFileInfo fileInfo) ``` ### Parameters #### Path Parameters - **fileInfo** (IAimpFileInfo) - Required - The file information. ``` -------------------------------- ### Initialize AimpPluginAttribute Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpPluginAttribute.html Constructor for setting the basic plugin metadata. ```csharp public AimpPluginAttribute(string name, string author, string version) ``` -------------------------------- ### GetCategory() Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtProvider.html Gets the category of the album art provider. ```APIDOC ## Method: GetCategory ### Description Gets the category of provider. ### Declaration ```csharp AimpAlbumArtProviderCategory GetCategory() ``` ### Parameters This method does not take any parameters. ``` -------------------------------- ### IAimpExtensionFileSystem Interface Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.Extensions.html Interface for implementing file system commands. ```APIDOC ## IAimpExtensionFileSystem ### Description An extension for the IAIMPServiceFileSystems service. Implementations must provide one or more file system commands. ``` -------------------------------- ### Get System Path Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.IAimpCore.html Retrieves the file system path for a specific AIMP core folder type. ```csharp string GetPath(AimpCorePathType aimpCorePath) ``` -------------------------------- ### CreatePlaylistFromFile Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpServicePlaylistManager.html Creates a playlist from a specified file path. ```csharp AimpActionResult CreatePlaylistFromFile(string fileName, bool isActive) ``` -------------------------------- ### Get album art by file info Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpServiceAlbumArt.html Initiates an album art retrieval request using an IAimpFileInfo object. ```csharp AimpActionResult Get2(IAimpFileInfo fileInfo, AimpFindCovertArtType flags, object userData) ``` -------------------------------- ### CreatePlaylist Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpServicePlaylistManager.html Creates a new playlist with a specified name and activation status. ```csharp AimpActionResult CreatePlaylist(string name, bool isActive) ``` -------------------------------- ### Initialize Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.IAimpPlugin.html The method signature for initializing the plugin instance. ```csharp void Initialize() ``` -------------------------------- ### IAimpFileSystemCommand Interfaces Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.Commands.html This section lists and describes the core interfaces for file system commands within the AIMP SDK. ```APIDOC ## IAimpFileSystemCommand ### Description Represents a base interface for file system commands. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandCopyToClipboard ### Description Interface for file system commands that copy files to the clipboard. Implements IAimpFileSystemCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandDelete ### Description Interface for file system commands that delete files. Implements IAimpFileSystemCustomFileCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandDropSource ### Description Interface for file system commands related to drop sources. Implements IAimpFileSystemCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandFileInfo ### Description Interface for file system commands that retrieve file information. Implements IAimpFileSystemCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandOpenFileFolder ### Description Interface for file system commands that open files or folders. Implements IAimpFileSystemCustomFileCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCommandStreaming ### Description Interface for file system commands that support streaming operations. Implements IAimpFileSystemCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ## IAimpFileSystemCustomFileCommand ### Description Interface for custom file commands in the file system. Implements IAimpFileSystemCommand. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Example N/A ### Response N/A ``` -------------------------------- ### BackgroundTaskStarted Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpDataStorageManager.html Notifies the IAimpDataStorageManager that a background task has started. ```APIDOC ## POST /BackgroundTaskStarted ### Description Notifies about the background task that has been started. ### Method POST ### Endpoint /BackgroundTaskStarted ### Parameters #### Query Parameters - **id** (System.Int32) - Required - The identifier of the background task. - **caption** (System.String) - Required - The caption or title of the background task. - **cancelEvent** (IAimpActionEvent) - Required - The event that signals cancellation. ### Request Example ```json { "id": 123, "caption": "Processing files", "cancelEvent": null } ``` ### Response #### Success Response (200) - **AimpActionResult** (Enum) - Indicates the result of the operation. #### Response Example ```json { "result": 0 } ``` ``` -------------------------------- ### GetFlags Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.DataStorage.IAimpGroupingTreeDataProviderSelection.html Gets the tree node flags, such as AIMPML_GROUPINGTREENODE_FLAG_HASCHILDREN or AIMPML_GROUPINGTREENODE_FLAG_STANDALONE. ```csharp GroupingTreeNodeFlags GetFlags() ``` -------------------------------- ### AIMP.SDK.Options Namespace Overview Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Options.html Overview of the interfaces and enums available within the AIMP.SDK.Options namespace. ```APIDOC ## AIMP.SDK.Options Namespace ### Interfaces - **IAimpOptionsDialogFrame**: Interface for creating custom frames within the AIMP options dialog. Implements IAimpExtension. - **IAimpOptionsDialogFrameKeyboardHelper**: Interface for handling keyboard input within an options dialog frame. - **IAimpServiceOptionsDialog**: Interface for interacting with the AIMP options dialog service. Implements IAimpService. ### Enums - **OptionsDialogFrameNotificationType**: Enumeration defining notification types for options dialog frames. ``` -------------------------------- ### IAimpConfig Interface Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.IAimpConfig.html This section details the methods available in the IAimpConfig interface for interacting with AIMP's configuration system. ```APIDOC ## IAimpConfig Interface ### Description Provides methods for managing AIMP configuration settings. ### Namespace AIMP.SDK ### Assembly AIMP.SDK.dll ## Methods ### Delete(String) #### Description Deletes the value or section from config (section or section\value name). #### Method POST #### Endpoint /config/delete #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Request Body ```json { "keyPath": "string" } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` --- ### GetValueAsFloat(String) #### Description Gets the value as float. #### Method GET #### Endpoint /config/get/float #### Parameters ##### Query Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Response ##### Success Response (200) - **Value** (float) - The retrieved float value. - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Value": 123.45, "Success": true } ``` --- ### GetValueAsInt32(String) #### Description Gets the value as int32. #### Method GET #### Endpoint /config/get/int32 #### Parameters ##### Query Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Response ##### Success Response (200) - **Value** (integer) - The retrieved int32 value. - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Value": 123, "Success": true } ``` --- ### GetValueAsInt64(String) #### Description Gets the value as int64. #### Method GET #### Endpoint /config/get/int64 #### Parameters ##### Query Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Response ##### Success Response (200) - **Value** (long) - The retrieved int64 value. - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Value": 1234567890, "Success": true } ``` --- ### GetValueAsStream(String) #### Description Gets the value as binary stream. #### Method GET #### Endpoint /config/get/stream #### Parameters ##### Query Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Response ##### Success Response (200) - **Value** (IAimpStream) - The retrieved binary stream. - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Value": "binary_stream_data", "Success": true } ``` --- ### GetValueAsString(String) #### Description Gets the value as string. #### Method GET #### Endpoint /config/get/string #### Parameters ##### Query Parameters - **keyPath** (string) - Required - The key path (section\value name). #### Response ##### Success Response (200) - **Value** (string) - The retrieved string value. - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Value": "example string", "Success": true } ``` --- ### SetValueAsFloat(String, Single) #### Description Sets the value as float. #### Method POST #### Endpoint /config/set/float #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). - **value** (float) - Required - The float value to set. #### Request Body ```json { "keyPath": "string", "value": 123.45 } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` --- ### SetValueAsInt32(String, Int32) #### Description Sets the value as int32. #### Method POST #### Endpoint /config/set/int32 #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). - **value** (integer) - Required - The int32 value to set. #### Request Body ```json { "keyPath": "string", "value": 123 } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` --- ### SetValueAsInt64(String, Int64) #### Description Sets the value as int64. #### Method POST #### Endpoint /config/set/int64 #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). - **value** (long) - Required - The int64 value to set. #### Request Body ```json { "keyPath": "string", "value": 1234567890 } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` --- ### SetValueAsStream(String, IAimpStream) #### Description Sets the value as stream. #### Method POST #### Endpoint /config/set/stream #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). - **stream** (IAimpStream) - Required - The stream to set. #### Request Body ```json { "keyPath": "string", "stream": "binary_stream_data" } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` --- ### SetValueAsString(String, String) #### Description Sets the value as string. #### Method POST #### Endpoint /config/set/string #### Parameters ##### Path Parameters - **keyPath** (string) - Required - The key path (section\value name). - **value** (string) - Required - The string value to set. #### Request Body ```json { "keyPath": "string", "value": "example string" } ``` #### Response ##### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. #### Response Example ```json { "Success": true } ``` ``` -------------------------------- ### Access AimpPluginType Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpPluginAttribute.html Property to get or set the plugin type. ```csharp public AimpPluginType AimpPluginType { get; set; } ``` -------------------------------- ### AIMP.SDK.MusicLibrary.Extension.Command Interfaces Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.Extension.Command.html A list of interfaces defined in the AIMP.SDK.MusicLibrary.Extension.Command namespace for handling music library extensions. ```APIDOC ## AIMP.SDK.MusicLibrary.Extension.Command Interfaces ### Description The following interfaces are available for implementing music library commands within the AIMP SDK: - **IAimpDataStorageCommandAddFiles**: Interface for adding files to the data storage. - **IAimpDataStorageCommandAddFilesDialog**: Interface for handling the add files dialog. - **IAimpDataStorageCommandDeleteFiles**: Interface for deleting files from the data storage. - **IAimpDataStorageCommandDropData**: Interface for dropping data from the storage. - **IAimpDataStorageCommandReloadTags**: Interface for reloading file tags. - **IAimpDataStorageCommandReportDialog**: Interface for handling report dialogs. - **IAimpDataStorageCommandUserMark**: Interface for managing user marks. ``` -------------------------------- ### Get Playlist Item Count Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Returns the total number of items in the playlist. ```csharp int GetItemCount() ``` -------------------------------- ### Show Method - IAimpExtensionAlbumArtCatalog Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtCatalog.html This method is invoked when the context menu item is clicked. It handles displaying album art based on the provided file URL, artist, and album. ```csharp AimpActionResult Show(string fileUrl, string artist, string album) ``` -------------------------------- ### Get album art by metadata Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpServiceAlbumArt.html Initiates an album art retrieval request using file URL and album metadata. ```csharp AimpActionResult Get(string fileUrl, string artist, string album, AimpFindCovertArtType flags, object userData) ``` -------------------------------- ### AIMP.SDK.MusicLibrary.Presets Interfaces Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.Presets.html Overview of the interfaces available within the AIMP.SDK.MusicLibrary.Presets namespace. ```APIDOC ## AIMP.SDK.MusicLibrary.Presets Interfaces ### IAimpGroupingPreset - **Description**: Interface that allows access to a grouping preset. ### IAimpGroupingPresets - **Description**: Interface that allows access to presets for data storage. ### IAimpGroupingPresetStandard - **Description**: Represents the preset for standard grouping. Implements the IAimpGroupingPreset interface. ``` -------------------------------- ### Get Playlist Group Count Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Returns the total number of groups in the playlist. ```csharp int GetGroupCount() ``` -------------------------------- ### Version Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpDotNetPlugin.html Gets or sets the version of the plugin, typically in 'x.xx' format. This property is part of the AimpDotNetPlugin class. ```csharp public string Version { get; set; } ``` -------------------------------- ### Get Storage Count Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Returns the total number of available data storages. ```csharp int GetStorageCount() ``` -------------------------------- ### GetDescription Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.Extensions.IAimpExtensionFileFormat.html Retrieves the short description of the file format. ```csharp AimpActionResult GetDescription(string fileFormat) ``` -------------------------------- ### Get Active Data Storage Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves the currently active data storage. ```csharp AimpActionResult GetActiveStorage() ``` -------------------------------- ### Add List of IAimpFileInfo Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Adds multiple files to the playlist using a list of IAimpFileInfo. Requires PlaylistFlags and PlaylistFilePosition. ```csharp AimpActionResult AddList(IList fileUrlList, PlaylistFlags flags, PlaylistFilePosition filePosition) ``` -------------------------------- ### Get Active Grouping Presets Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves the currently active grouping preset. ```csharp AimpActionResult GetActiveGroupingPresets() ``` -------------------------------- ### Method Load(String) Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AssemblyScanPluginLoadStrategy.html Loads a plugin from the specified path. ```APIDOC ## Load(String) ### Description Loads the specified path to retrieve plugin information. ### Method Method Call ### Parameters #### Path Parameters - **path** (System.String) - Required - The path to the assembly to be loaded. ### Response - **PluginShortInfoForLoad** (Object) - Returns the short information for the loaded plugin. ``` -------------------------------- ### AIMP.SDK.AlbumArtManager Overview Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.html Overview of the classes, interfaces, and enums available within the AIMP.SDK.AlbumArtManager namespace. ```APIDOC ## AIMP.SDK.AlbumArtManager Namespace ### Classes - **AimpGetAlbumArtEventArgs**: Event arguments for album art retrieval operations. Inherits from System.EventArgs. ### Interfaces - **IAimpAlbumArtSearchOptions**: Defines search parameters for album art. - **IAimpExtensionAlbumArtCatalog**: Allows plugins to add menu items to the context menu for external album art catalogs. - **IAimpExtensionAlbumArtCatalog2**: Updated version of IAimpExtensionAlbumArtCatalog. - **IAimpExtensionAlbumArtProvider**: Interface for registering custom album art providers. - **IAimpExtensionAlbumArtProvider2**: Updated version of IAimpExtensionAlbumArtProvider. - **IAimpServiceAlbumArt**: Core service for retrieving album art for files or albums. Operations run in separate threads with callback notifications. - **IAimpServiceAlbumArtCache**: Provides access to the album art cache manager. ### Enums - **AimpAlbumArtProviderCategory**: Defines categories for album art providers. - **AimpFindCovertArtType**: Defines types for finding cover art. ``` -------------------------------- ### IAimpDataStorage Caption Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.DataStorage.IAimpDataStorage.html Gets the caption of the data storage. This property is read-only. ```csharp string Caption { get; } ``` -------------------------------- ### AimpPlugin Class Overview Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpPlugin.html Overview of the AimpPlugin class, its properties, and lifecycle methods. ```APIDOC ## Class AimpPlugin ### Description Base class for AIMP Plugin. Implements the IAimpPlugin interface. ### Namespace AIMP.SDK ### Assembly AIMP.SDK.dll ### Syntax ```csharp public abstract class AimpPlugin : IAimpPlugin, IDisposable ``` ### Properties - **AimpPlayer** (IAimpPlayer) - Gets or sets the aimp player. - **Player** (IAimpPlayer) - Gets the main player interface IAimpPlayer. - **PluginId** (int) - Gets or sets the plugin identifier. ### Methods - **Dispose()** - Inside this function, plugin should dispose all resources. - **Initialize()** - Inside this function, plugin should perform all initialization. ``` -------------------------------- ### URL Property Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpFileInfo.html Defines the property for getting or setting the URL string. ```csharp string URL { get; set; } ``` -------------------------------- ### IAimpServiceMUI Interface Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MUIManager.IAimpServiceMUI.html Documentation for the IAimpServiceMUI interface, including its methods and inheritance. ```APIDOC ## Interface IAimpServiceMUI MUI manager. Implements the IAimpService. ### Inherited Members IAimpService.IsExists **Namespace**: AIMP.SDK.MUIManager **Assembly**: AIMP.SDK.dll ### Syntax ```csharp public interface IAimpServiceMUI : IAimpService ``` ### Methods #### GetName() Gets the current locale name. ##### Declaration ```csharp string GetName() ``` #### GetValue(String) Gets the value. ##### Declaration ```csharp string GetValue(string key) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | key | The key. #### GetValuePart(String, Int32) Gets the value part. ##### Declaration ```csharp string GetValuePart(string key, int index) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | key | The key. System.Int32 | index | The index. ### See Also IAimpService ``` -------------------------------- ### PluginShortInfoForLoad Syntax Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginShortInfoForLoad.html Defines the structure for plugin loading information. ```csharp [Serializable] public struct PluginShortInfoForLoad : IEquatable ``` -------------------------------- ### Get VirtualFile Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.CeateStreamResult.html Retrieves the IAimpVirtualFile associated with this result. This property is read-only. ```csharp public IAimpVirtualFile VirtualFile { get; } ``` -------------------------------- ### Get Stream Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.CeateStreamResult.html Retrieves the IAimpStream associated with this result. This property is read-only. ```csharp public IAimpStream Stream { get; } ``` -------------------------------- ### Initialize CustomAssemblyResolver with Path Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.CustomAssemblyResolver.html Initializes the CustomAssemblyResolver with a specified directory path for assembly resolution. Provide a valid string path. ```csharp public static void Initialize(string path) ``` -------------------------------- ### Add File by IAimpFileInfo Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Adds a file to the playlist using IAimpFileInfo. Requires PlaylistFlags and PlaylistFilePosition. ```csharp AimpActionResult Add(IAimpFileInfo fileInfo, PlaylistFlags flags, PlaylistFilePosition filePosition) ``` -------------------------------- ### Access Item2 property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpActionResult-2.html Property to get or set the second generic object. ```csharp public TObject2 Item2 { get; set; } ``` -------------------------------- ### Get Available File Formats Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpServiceFileFormats.html Retrieves a list of available file formats based on the provided flags. Ensure the FileFormats enum is correctly defined and imported. ```csharp AimpActionResult GetFormats(FileFormats flags) ``` -------------------------------- ### Access Item1 property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpActionResult-2.html Property to get or set the first generic object. ```csharp public TObject1 Item1 { get; set; } ``` -------------------------------- ### Begin Playlist Update Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Blocks all notifications until EndUpdate is called. Recommended for multiple playlist modifications. ```csharp AimpActionResult BeginUpdate() ``` -------------------------------- ### Get Album Art Image Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AlbumArtManager.IAimpExtensionAlbumArtProvider.html Retrieves album art using file URL, artist, album, and search options. Ensure IAimpAlbumArtSearchOptions is properly configured. ```csharp AimpActionResult Get(string fileUrl, string artist, string album, IAimpAlbumArtSearchOptions options) ``` -------------------------------- ### Get Playlist Group by Index Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylist.html Retrieves a playlist group object at the specified index. ```csharp AimpActionResult GetGroup(int index) ``` -------------------------------- ### IAimpPlayer Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Player.IAimpPlayer.html This section details the methods available on the IAimpPlayer interface for controlling playback, such as navigating tracks, pausing, and playing specific items or playlists. ```APIDOC ## IAimpPlayer Methods ### Description Provides methods for controlling AIMP playback, including track navigation, pausing, and initiating playback of specific items or playlists. ### Methods #### GoToNext() Goes to next track. - **Method**: void - **Returns**: AimpActionResult #### GoToPrev() Goes to previous track. - **Method**: void - **Returns**: AimpActionResult #### Pause() Pauses player. - **Method**: void - **Returns**: AimpActionResult #### Play(IAimpPlaybackQueueItem) Plays the specified queue item. - **Method**: void - **Parameters**: - **queueItem** (IAimpPlaybackQueueItem) - Required - The queue item. - **Returns**: AimpActionResult #### Play(IAimpPlaylist) Plays the specified play list. - **Method**: void - **Parameters**: - **playList** (IAimpPlaylist) - Required - The play list. - **Returns**: AimpActionResult ``` -------------------------------- ### SetToAll Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.TagEditor.IAimpFileTagEditor.html Applies the provided file information to all tags. ```csharp AimpActionResult SetToAll(IAimpFileInfo fileInfo) ``` -------------------------------- ### Get Data Storage by ID Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves a data storage using its string identifier. ```csharp AimpActionResult GetStorageById(string id) ``` -------------------------------- ### Get Data Storage by Index Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves a data storage using its integer index. ```csharp AimpActionResult GetStorage(int index) ``` -------------------------------- ### IAimpFileSystemCommandFileInfo Interface Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.Commands.IAimpFileSystemCommandFileInfo.html This section details the methods available in the IAimpFileSystemCommandFileInfo interface for interacting with file system information. ```APIDOC ## IAimpFileSystemCommandFileInfo Interface ### Description Interface IAimpFileSystemCommandFileInfo Implements the IAimpFileSystemCommand. **Namespace**: AIMP.SDK.FileManager.Commands **Assembly**: AIMP.SDK.dll ### Methods #### GetFileAttrs(String) Gets the file attributes. ##### Declaration ```csharp AimpActionResult GetFileAttrs(string fileName) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | fileName | Name of the file. #### GetFileSize(String) Gets the size of the file. ##### Declaration ```csharp AimpActionResult GetFileSize(string file) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | file | The file. #### IsFileExists(String) Determines whether [is file exists] [the specified file]. ##### Declaration ```csharp AimpActionResult IsFileExists(string file) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | file | The file. ### See Also IAimpFileSystemCommand ``` -------------------------------- ### Get Grouping Presets by ID Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves a grouping preset using its string identifier. ```csharp AimpActionResult GetGroupingPresetsById(string id) ``` -------------------------------- ### IAimpServiceMusicLibraryUI Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibraryUI.html This section details the methods available in the IAimpServiceMusicLibraryUI interface. ```APIDOC ## IAimpServiceMusicLibraryUI Provides an access to data of UI elements for an active data storage that uses by the user. Implements the IAimpService. ### Methods #### GetFiles(FilesType) Gets the file list from table view. ##### Declaration ```csharp AimpActionResult GetFiles(FilesType flags) ``` ##### Parameters Type | Name | Description ---|---|--- FilesType | flags | The flags. #### GetGroupingFilter() Gets the grouping filter. ##### Declaration ```csharp AimpActionResult GetGroupingFilter() ``` #### GetGroupingFilterPath() Gets the grouping filter path. ##### Declaration ```csharp AimpActionResult GetGroupingFilterPath() ``` #### SetGroupingFilterPath(String) Sets the grouping filter path. ##### Declaration ```csharp AimpActionResult SetGroupingFilterPath(string path) ``` ##### Parameters Type | Name | Description ---|---|--- System.String | path | The path. ### See Also IAimpService ``` -------------------------------- ### GetExtList Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.Extensions.IAimpExtensionFileFormat.html Retrieves the list of supported file extensions. ```csharp AimpActionResult GetExtList(string extensions) ``` -------------------------------- ### Get Grouping Presets by Index Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpServiceMusicLibrary.html Retrieves a grouping preset using its integer index. ```csharp AimpActionResult GetGroupingPresets(int index) ``` -------------------------------- ### DotNetPluginInfo Class Overview Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.DotNetPluginInfo.html Provides an overview of the DotNetPluginInfo class, its inheritance, and implemented interfaces. ```APIDOC ## Class DotNetPluginInfo Plugins information collection. ### Inheritance System.Object DotNetPluginInfo ### Implements System.Collections.Generic.ICollection System.Collections.Generic.IEnumerable System.Collections.IEnumerable ### Namespace AIMP.SDK ### Assembly AIMP.SDK.dll ### Syntax ```csharp public class DotNetPluginInfo : ICollection, IEnumerable, IEnumerable ``` ``` -------------------------------- ### IAimpDataStorage Id Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.DataStorage.IAimpDataStorage.html Gets the unique identifier for the data storage. This property is read-only. ```csharp string Id { get; } ``` -------------------------------- ### Load Method Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.PluginLoadingStrategy.html Abstract method signature for loading plugins. Implementations must define how to load a plugin from a specified path and return its short information. ```csharp public abstract PluginShortInfoForLoad Load(string path) ``` -------------------------------- ### IAimpVirtualFile Interface Syntax Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpVirtualFile.html The base interface definition for virtual file objects. ```csharp public interface IAimpVirtualFile ``` -------------------------------- ### TrackTotal Property Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpFileInfo.html Defines the property for getting or setting the track total string. ```csharp string TrackTotal { get; set; } ``` -------------------------------- ### TrackPeak Property Declaration Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpFileInfo.html Defines the property for getting or setting the track peak value. ```csharp double TrackPeak { get; set; } ``` -------------------------------- ### IAimpPlaylistPreimage ConfigLoad Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylistPreimage.html Loads the preimage's configuration from the provided stream. Requires an IAimpStream object. ```csharp AimpActionResult ConfigLoad(IAimpStream stream) ``` -------------------------------- ### MakeHotkey Method Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.ActionManager.IAimpServiceActionManager.html Creates a hotkey combination using specified key modifiers and a key code. Returns an integer representing the hotkey. ```csharp int MakeHotkey(ModifierKeys modifiers, uint key) ``` -------------------------------- ### IAimpServiceFileSystems Interface Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpServiceFileSystems.html Provides the ability to work with files. Implements the IAimpService interface. ```APIDOC ## Interface IAimpServiceFileSystems ### Description Provide ability to work with files. Implements the IAimpService. ### Namespace AIMP.SDK.FileManager ### Assembly AIMP.SDK.dll ### Syntax ```csharp public interface IAimpServiceFileSystems : IAimpService ``` ``` -------------------------------- ### PluginInformation Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpDotNetPlugin.html Gets or sets the plugin information. This property is part of the AimpDotNetPlugin class. ```csharp public PluginInformation PluginInformation { get; set; } ``` -------------------------------- ### Name Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpDotNetPlugin.html Gets or sets the name of the plugin. This property is part of the AimpDotNetPlugin class. ```csharp public string Name { get; set; } ``` -------------------------------- ### Author Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpDotNetPlugin.html Gets or sets the author of the plugin. This property is part of the AimpDotNetPlugin class. ```csharp public string Author { get; set; } ``` -------------------------------- ### AIMP.SDK.Lyrics Namespace Overview Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Lyrics.html Overview of the interfaces, enums, and delegates available within the AIMP.SDK.Lyrics namespace. ```APIDOC ## AIMP.SDK.Lyrics Namespace ### Interfaces - **IAimpExtensionLyricsProvider**: Interface for lyrics providers, implements IAimpExtension. - **IAimpLyrics**: Interface for lyrics objects, implements IAimpObject. - **IAimpServiceLyrics**: Service interface for accessing song text, implements IAimpService. ### Enums - **LyricsFlags**: Enumeration for lyrics-related flags. - **LyricsFormat**: Enumeration for supported lyrics formats. - **LyricsProviderCategory**: Enumeration for categorizing lyrics providers. - **LyricsType**: Enumeration for different types of lyrics. ### Delegates - **AimpServiceLyricsReceive**: Delegate for handling received lyrics data. ``` -------------------------------- ### AimpPlugin Property Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpDotNetPlugin.html Gets or sets the plugins collection. This property is part of the AimpDotNetPlugin class. ```csharp public DotNetPluginInfo AimpPlugin { get; set; } ``` -------------------------------- ### IAimpPlaylistPreimageFolders Interface Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.Playlist.IAimpPlaylistPreimageFolders.html This section details the methods available in the IAimpPlaylistPreimageFolders interface for managing playlist preimage folders. ```APIDOC ## IAimpPlaylistPreimageFolders Interface Methods ### Description Provides methods to manage playlist preimage folders, including adding, deleting, and retrieving items. ### Methods #### ItemsAdd(String, Boolean) Adds an item to the playlist preimage. ##### Declaration ```csharp AimpActionResult ItemsAdd(string path, bool recursive) ``` ##### Parameters - **path** (System.String) - Required - The path to the item to add. - **recursive** (System.Boolean) - Required - If set to `true`, the operation will be recursive. #### ItemsDelete(Int32) Deletes an item from the playlist preimage by its index. ##### Declaration ```csharp AimpActionResult ItemsDelete(int index) ``` ##### Parameters - **index** (System.Int32) - Required - The index of the item to delete. #### ItemsDeleteAll() Deletes all items from the playlist preimage. ##### Declaration ```csharp AimpActionResult ItemsDeleteAll() ``` #### ItemsGet(Int32) Retrieves an item from the playlist preimage by its index. ##### Declaration ```csharp AimpActionResult ItemsGet(int index) ``` ##### Parameters - **index** (System.Int32) - Required - The index of the item to retrieve. #### ItemsGetCount() Gets the total number of items in the playlist preimage. ##### Declaration ```csharp int ItemsGetCount() ``` ### See Also - IAimpPlaylistPreimage ``` -------------------------------- ### Get AimpActionResult Type Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.AimpActionResult.html This property allows you to retrieve the type of the result from an AimpActionResult object. ```csharp public ActionResultType ResultType { get; } ``` -------------------------------- ### IAimpVirtualFile Interface Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.FileManager.IAimpVirtualFile.html Details the properties and methods available for the IAimpVirtualFile interface. ```APIDOC ## Interface IAimpVirtualFile ### Description Interface provides information about virtual file. ### Namespace AIMP.SDK.FileManager ### Assembly AIMP.SDK.dll ### Syntax ```csharp public interface IAimpVirtualFile ``` ### Properties #### AudioSourceFile Gets or sets the real source file. Property can be not set if real file name is not exists or file name is same to file name of file-container. ##### Declaration ```csharp string AudioSourceFile { get; set; } ``` #### ClipFinish The end of the passage to play (in seconds). ##### Declaration ```csharp double ClipFinish { get; set; } ``` #### ClipStart The beginning of the passage to play (in seconds). ##### Declaration ```csharp double ClipStart { get; set; } ``` #### FileFormat Gets the file format. Ex. mp3, ogg, cda. ##### Declaration ```csharp string FileFormat { get; } ``` #### FileUri Gets or sets the virtual file name. ##### Declaration ```csharp string FileUri { get; set; } ``` #### IndexInSet Gets or sets the index of virtual track in the set (if presented). ##### Declaration ```csharp int IndexInSet { get; set; } ``` ### Methods #### CreateStream() Create the instance of the IAimpStream. ##### Declaration ```csharp AimpActionResult CreateStream() ``` #### GetFileInfo() Gets the file info. ##### Declaration ```csharp AimpActionResult GetFileInfo() ``` #### IsExists() Check is the source exists. ##### Declaration ```csharp bool IsExists() ``` #### IsInSameStream(IAimpVirtualFile) Determines whether [is in same stream] [the specified virtual file]. ##### Declaration ```csharp AimpActionResult IsInSameStream(IAimpVirtualFile virtualFile) ``` ##### Parameters Type | Name | Description ---|---|--- IAimpVirtualFile | virtualFile | The virtual file. #### Synchronize() Plugin must validate state of all internal data that refer with source. If internal data is not valid, plugin must return any error code except ActionResultType.OK. In this case, the application will automatically reload virtual files for current file-container via one of the IAimpExtensionFileExpander extensions. The method called by the application before call the CreateStream method. ##### Declaration ```csharp AimpActionResult Synchronize() ``` ``` -------------------------------- ### IAimpFileList Methods Source: https://martin211.github.io/aimp_dotnet_docs/api/AIMP.SDK.MusicLibrary.IAimpFileList.html Documentation for the methods available within the IAimpFileList interface. ```APIDOC ## Add(Object, String) ### Description Adds a new file to the list. ### Parameters - **id** (System.Object) - Required - File identifier. - **fileName** (System.String) - Required - File name. ## Clear() ### Description Clears the list. ## Clone() ### Description Clones the list. ## Delete(Int32) ### Description Deletes the file by index. ### Parameters - **index** (System.Int32) - Required - The index. ## GetCount() ### Description Get the count of list. ## GetFileName(Int32) ### Description Gets the file name. ### Parameters - **index** (System.Int32) - Required - The index. ## GetId(Int32) ### Description Gets the file identifier. ### Parameters - **index** (System.Int32) - Required - The index. ## Insert(Int32, Object, String) ### Description Inserts a new file to the list at the specified index. ### Parameters - **index** (System.Int32) - Required - The index. - **id** (System.Object) - Required - The identifier. - **fileName** (System.String) - Required - The file name. ## SetFileName(Int32, String) ### Description Sets the new name for a file. ### Parameters - **index** (System.Int32) - Required - The index. - **fileName** (System.String) - Required - New file name. ## SetId(Int32, Object) ### Description Sets the new identifier for a file. ### Parameters - **index** (System.Int32) - Required - The index. - **id** (System.Object) - Required - New identifier. ```