mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-12 11:56:30 +00:00
Some more plugin stuff, lovely commit messages ikr
This commit is contained in:
1 parent
c761c880ed
commit
8760b7f838
16 files changed
+216
-108
No files matched your search
@@ -1,16 +1,44 @@
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Threading.Tasks;
|
||||
using Artemis.Core.Events;
|
||||
using Artemis.Core.Models;
|
||||
using Artemis.Plugins.Interfaces;
|
||||
|
||||
namespace Artemis.Core.Services.Interfaces
|
||||
{
|
||||
public interface IPluginService : IArtemisService, IDisposable
|
||||
{
|
||||
Task LoadModules();
|
||||
Task ReloadModule(IPlugin plugin);
|
||||
bool LoadingPlugins { get; }
|
||||
ReadOnlyCollection<PluginInfo> Plugins { get; }
|
||||
|
||||
event EventHandler<ModuleEventArgs> ModuleLoaded;
|
||||
event EventHandler<ModuleEventArgs> ModuleReloaded;
|
||||
/// <summary>
|
||||
/// Loads all installed plugins. If plugins already loaded this will reload them all
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task LoadPlugins();
|
||||
|
||||
Task ReloadPlugin(PluginInfo pluginInfo);
|
||||
Task<IPluginViewModel> GetPluginViewModel(PluginInfo pluginInfo);
|
||||
|
||||
/// <summary>
|
||||
/// Occurs when a single plugin has loaded
|
||||
/// </summary>
|
||||
event EventHandler<PluginEventArgs> PluginLoaded;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs when a single plugin has reloaded
|
||||
/// </summary>
|
||||
event EventHandler<PluginEventArgs> PluginReloaded;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs when loading all plugins has started
|
||||
/// </summary>
|
||||
event EventHandler StartedLoadingPlugins;
|
||||
|
||||
/// <summary>
|
||||
/// Occurs when loading all plugins has finished
|
||||
/// </summary>
|
||||
event EventHandler FinishedLoadedPlugins;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user