From a8c8c7990215800a448133822013443a39a03cfe Mon Sep 17 00:00:00 2001 From: Haselnussbomber Date: Sun, 19 Oct 2025 22:52:20 +0200 Subject: [PATCH] Add IDalamudService marker interface --- Dalamud/Plugin/Services/IAddonEventManager.cs | 4 ++-- Dalamud/Plugin/Services/IAddonLifecycle.cs | 4 ++-- Dalamud/Plugin/Services/IAetheryteList.cs | 4 ++-- Dalamud/Plugin/Services/IBuddyList.cs | 4 ++-- Dalamud/Plugin/Services/IChatGui.cs | 2 +- Dalamud/Plugin/Services/IClientState.cs | 2 +- Dalamud/Plugin/Services/ICommandManager.cs | 4 ++-- Dalamud/Plugin/Services/ICondition.cs | 4 ++-- Dalamud/Plugin/Services/IConsole.cs | 4 ++-- Dalamud/Plugin/Services/IContextMenu.cs | 2 +- Dalamud/Plugin/Services/IDalamudService.cs | 10 ++++++++++ Dalamud/Plugin/Services/IDataManager.cs | 2 +- Dalamud/Plugin/Services/IDtrBar.cs | 4 ++-- Dalamud/Plugin/Services/IDutyState.cs | 4 ++-- Dalamud/Plugin/Services/IFateTable.cs | 4 ++-- Dalamud/Plugin/Services/IFlyTextGui.cs | 4 ++-- Dalamud/Plugin/Services/IFramework.cs | 4 ++-- Dalamud/Plugin/Services/IGameConfig.cs | 4 ++-- Dalamud/Plugin/Services/IGameGui.cs | 2 +- Dalamud/Plugin/Services/IGameInteropProvider.cs | 4 ++-- Dalamud/Plugin/Services/IGameInventory.cs | 4 ++-- Dalamud/Plugin/Services/IGameLifecycle.cs | 4 ++-- Dalamud/Plugin/Services/IGameNetwork.cs | 4 ++-- Dalamud/Plugin/Services/IGamepadState.cs | 4 ++-- Dalamud/Plugin/Services/IJobGauges.cs | 4 ++-- Dalamud/Plugin/Services/IKeyState.cs | 4 ++-- Dalamud/Plugin/Services/IMarketBoard.cs | 4 ++-- Dalamud/Plugin/Services/INamePlateGui.cs | 2 +- Dalamud/Plugin/Services/INotificationManager.cs | 2 +- Dalamud/Plugin/Services/IObjectTable.cs | 4 ++-- Dalamud/Plugin/Services/IPartyFinderGui.cs | 4 ++-- Dalamud/Plugin/Services/IPartyList.cs | 4 ++-- Dalamud/Plugin/Services/IPluginLog.cs | 4 ++-- Dalamud/Plugin/Services/ISeStringEvaluator.cs | 2 +- Dalamud/Plugin/Services/ISigScanner.cs | 4 +++- Dalamud/Plugin/Services/ITargetManager.cs | 5 +++-- Dalamud/Plugin/Services/ITextureProvider.cs | 2 +- Dalamud/Plugin/Services/ITextureReadbackProvider.cs | 3 +-- .../Plugin/Services/ITextureSubstitutionProvider.cs | 4 ++-- Dalamud/Plugin/Services/ITitleScreenMenu.cs | 4 ++-- Dalamud/Plugin/Services/IToastGui.cs | 4 ++-- 41 files changed, 82 insertions(+), 70 deletions(-) create mode 100644 Dalamud/Plugin/Services/IDalamudService.cs diff --git a/Dalamud/Plugin/Services/IAddonEventManager.cs b/Dalamud/Plugin/Services/IAddonEventManager.cs index c6499e4e2..6b7b1166e 100644 --- a/Dalamud/Plugin/Services/IAddonEventManager.cs +++ b/Dalamud/Plugin/Services/IAddonEventManager.cs @@ -1,4 +1,4 @@ -using Dalamud.Game.Addon.Events; +using Dalamud.Game.Addon.Events; using Dalamud.Game.Addon.Events.EventDataTypes; namespace Dalamud.Plugin.Services; @@ -6,7 +6,7 @@ namespace Dalamud.Plugin.Services; /// /// Service provider for addon event management. /// -public interface IAddonEventManager +public interface IAddonEventManager : IDalamudService { /// /// Delegate to be called when an event is received. diff --git a/Dalamud/Plugin/Services/IAddonLifecycle.cs b/Dalamud/Plugin/Services/IAddonLifecycle.cs index ebf629b85..1269b13dc 100644 --- a/Dalamud/Plugin/Services/IAddonLifecycle.cs +++ b/Dalamud/Plugin/Services/IAddonLifecycle.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Runtime.InteropServices; using Dalamud.Game.Addon.Lifecycle; @@ -9,7 +9,7 @@ namespace Dalamud.Plugin.Services; /// /// This class provides events for in-game addon lifecycles. /// -public interface IAddonLifecycle +public interface IAddonLifecycle : IDalamudService { /// /// Delegate for receiving addon lifecycle event messages. diff --git a/Dalamud/Plugin/Services/IAetheryteList.cs b/Dalamud/Plugin/Services/IAetheryteList.cs index 88c2ff616..58b82ebf6 100644 --- a/Dalamud/Plugin/Services/IAetheryteList.cs +++ b/Dalamud/Plugin/Services/IAetheryteList.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Aetherytes; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// This collection represents the list of available Aetherytes in the Teleport window. /// -public interface IAetheryteList : IReadOnlyCollection +public interface IAetheryteList : IDalamudService, IReadOnlyCollection { /// /// Gets the amount of Aetherytes the local player has unlocked. diff --git a/Dalamud/Plugin/Services/IBuddyList.cs b/Dalamud/Plugin/Services/IBuddyList.cs index 77c0b9c17..8d3790b6d 100644 --- a/Dalamud/Plugin/Services/IBuddyList.cs +++ b/Dalamud/Plugin/Services/IBuddyList.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Buddy; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// This collection represents the buddies present in your squadron or trust party. /// It does not include the local player. /// -public interface IBuddyList : IReadOnlyCollection +public interface IBuddyList : IDalamudService, IReadOnlyCollection { /// /// Gets the amount of battle buddies the local player has. diff --git a/Dalamud/Plugin/Services/IChatGui.cs b/Dalamud/Plugin/Services/IChatGui.cs index c474ca386..572ac6c95 100644 --- a/Dalamud/Plugin/Services/IChatGui.cs +++ b/Dalamud/Plugin/Services/IChatGui.cs @@ -10,7 +10,7 @@ namespace Dalamud.Plugin.Services; /// /// This class handles interacting with the native chat UI. /// -public interface IChatGui +public interface IChatGui : IDalamudService { /// /// A delegate type used with the event. diff --git a/Dalamud/Plugin/Services/IClientState.cs b/Dalamud/Plugin/Services/IClientState.cs index 0342ea77c..7b6abc2bd 100644 --- a/Dalamud/Plugin/Services/IClientState.cs +++ b/Dalamud/Plugin/Services/IClientState.cs @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// This class represents the state of the game client at the time of access. /// -public interface IClientState +public interface IClientState : IDalamudService { /// /// A delegate type used for the event. diff --git a/Dalamud/Plugin/Services/ICommandManager.cs b/Dalamud/Plugin/Services/ICommandManager.cs index a6bc4763f..46138cd71 100644 --- a/Dalamud/Plugin/Services/ICommandManager.cs +++ b/Dalamud/Plugin/Services/ICommandManager.cs @@ -1,4 +1,4 @@ -using System.Collections.ObjectModel; +using System.Collections.ObjectModel; using Dalamud.Game.Command; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// This class manages registered in-game slash commands. /// -public interface ICommandManager +public interface ICommandManager : IDalamudService { /// /// Gets a read-only list of all registered commands. diff --git a/Dalamud/Plugin/Services/ICondition.cs b/Dalamud/Plugin/Services/ICondition.cs index 4ea9e7f76..c37117f3c 100644 --- a/Dalamud/Plugin/Services/ICondition.cs +++ b/Dalamud/Plugin/Services/ICondition.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Conditions; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// Provides access to conditions (generally player state). You can check whether a player is in combat, mounted, etc. /// -public interface ICondition +public interface ICondition : IDalamudService { /// /// A delegate type used with the event. diff --git a/Dalamud/Plugin/Services/IConsole.cs b/Dalamud/Plugin/Services/IConsole.cs index 0b6832efb..be920a5c9 100644 --- a/Dalamud/Plugin/Services/IConsole.cs +++ b/Dalamud/Plugin/Services/IConsole.cs @@ -1,4 +1,4 @@ -using System.Diagnostics.CodeAnalysis; +using System.Diagnostics.CodeAnalysis; using Dalamud.Console; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// Provides functions to register console commands and variables. /// [Experimental("Dalamud001")] -public interface IConsole +public interface IConsole : IDalamudService { /// /// Gets this plugin's namespace prefix, derived off its internal name. diff --git a/Dalamud/Plugin/Services/IContextMenu.cs b/Dalamud/Plugin/Services/IContextMenu.cs index 02f773441..ed99f595e 100644 --- a/Dalamud/Plugin/Services/IContextMenu.cs +++ b/Dalamud/Plugin/Services/IContextMenu.cs @@ -5,7 +5,7 @@ namespace Dalamud.Plugin.Services; /// /// This class provides methods for interacting with the game's context menu. /// -public interface IContextMenu +public interface IContextMenu : IDalamudService { /// /// A delegate type used for the event. diff --git a/Dalamud/Plugin/Services/IDalamudService.cs b/Dalamud/Plugin/Services/IDalamudService.cs new file mode 100644 index 000000000..1472b27da --- /dev/null +++ b/Dalamud/Plugin/Services/IDalamudService.cs @@ -0,0 +1,10 @@ +namespace Dalamud.Plugin.Services; + +/// +/// Marker interface for Dalamud services. +/// +/// +/// This interface is implemented by all services provided through Dalamud's +/// dependency injection system. +/// +public interface IDalamudService; diff --git a/Dalamud/Plugin/Services/IDataManager.cs b/Dalamud/Plugin/Services/IDataManager.cs index 65c51a9fb..474d34ecb 100644 --- a/Dalamud/Plugin/Services/IDataManager.cs +++ b/Dalamud/Plugin/Services/IDataManager.cs @@ -14,7 +14,7 @@ namespace Dalamud.Plugin.Services; /// /// This class provides data for Dalamud-internal features, but can also be used by plugins if needed. /// -public interface IDataManager +public interface IDataManager : IDalamudService { /// /// Gets the current game client language. diff --git a/Dalamud/Plugin/Services/IDtrBar.cs b/Dalamud/Plugin/Services/IDtrBar.cs index 8ab34c6f2..a24327e23 100644 --- a/Dalamud/Plugin/Services/IDtrBar.cs +++ b/Dalamud/Plugin/Services/IDtrBar.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.Gui.Dtr; using Dalamud.Game.Text.SeStringHandling; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// Class used to interface with the server info bar. /// -public interface IDtrBar +public interface IDtrBar : IDalamudService { /// /// Gets a read-only copy of the list of all DTR bar entries. diff --git a/Dalamud/Plugin/Services/IDutyState.cs b/Dalamud/Plugin/Services/IDutyState.cs index 3d49f68cb..9ad2e3c24 100644 --- a/Dalamud/Plugin/Services/IDutyState.cs +++ b/Dalamud/Plugin/Services/IDutyState.cs @@ -1,9 +1,9 @@ -namespace Dalamud.Plugin.Services; +namespace Dalamud.Plugin.Services; /// /// This class represents the state of the currently occupied duty. /// -public interface IDutyState +public interface IDutyState : IDalamudService { /// /// Event that gets fired when the duty starts. diff --git a/Dalamud/Plugin/Services/IFateTable.cs b/Dalamud/Plugin/Services/IFateTable.cs index d10141050..3392d8e23 100644 --- a/Dalamud/Plugin/Services/IFateTable.cs +++ b/Dalamud/Plugin/Services/IFateTable.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Fates; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// This collection represents the currently available Fate events. /// -public interface IFateTable : IReadOnlyCollection +public interface IFateTable : IDalamudService, IReadOnlyCollection { /// /// Gets the address of the Fate table. diff --git a/Dalamud/Plugin/Services/IFlyTextGui.cs b/Dalamud/Plugin/Services/IFlyTextGui.cs index 04fae351d..6c0e40fd6 100644 --- a/Dalamud/Plugin/Services/IFlyTextGui.cs +++ b/Dalamud/Plugin/Services/IFlyTextGui.cs @@ -1,4 +1,4 @@ -using Dalamud.Game.Gui.FlyText; +using Dalamud.Game.Gui.FlyText; using Dalamud.Game.Text.SeStringHandling; namespace Dalamud.Plugin.Services; @@ -6,7 +6,7 @@ namespace Dalamud.Plugin.Services; /// /// This class facilitates interacting with and creating native in-game "fly text". /// -public interface IFlyTextGui +public interface IFlyTextGui : IDalamudService { /// /// The delegate defining the type for the FlyText event. diff --git a/Dalamud/Plugin/Services/IFramework.cs b/Dalamud/Plugin/Services/IFramework.cs index f1a4b6906..3524ca668 100644 --- a/Dalamud/Plugin/Services/IFramework.cs +++ b/Dalamud/Plugin/Services/IFramework.cs @@ -1,4 +1,4 @@ -using System.Threading; +using System.Threading; using System.Threading.Tasks; using Dalamud.Interface.Internal.Windows.Data.Widgets; @@ -24,7 +24,7 @@ namespace Dalamud.Plugin.Services; /// See to see the difference in behaviors, and how would a misuse of these /// functions result in a deadlock. /// -public interface IFramework +public interface IFramework : IDalamudService { /// /// A delegate type used with the event. diff --git a/Dalamud/Plugin/Services/IGameConfig.cs b/Dalamud/Plugin/Services/IGameConfig.cs index 5d8378659..10883c6d1 100644 --- a/Dalamud/Plugin/Services/IGameConfig.cs +++ b/Dalamud/Plugin/Services/IGameConfig.cs @@ -1,4 +1,4 @@ -using System.Diagnostics; +using System.Diagnostics; using Dalamud.Game.Config; using Dalamud.Plugin.Internal.Types; @@ -17,7 +17,7 @@ namespace Dalamud.Plugin.Services; /// If property access from the plugin constructor is desired, do the value retrieval asynchronously via /// ; do not wait for the result right away. /// -public interface IGameConfig +public interface IGameConfig : IDalamudService { /// /// Event which is fired when any game config option is changed. diff --git a/Dalamud/Plugin/Services/IGameGui.cs b/Dalamud/Plugin/Services/IGameGui.cs index e2326328a..beffc131a 100644 --- a/Dalamud/Plugin/Services/IGameGui.cs +++ b/Dalamud/Plugin/Services/IGameGui.cs @@ -9,7 +9,7 @@ namespace Dalamud.Plugin.Services; /// /// A class handling many aspects of the in-game UI. /// -public unsafe interface IGameGui +public unsafe interface IGameGui : IDalamudService { /// /// Event which is fired when the game UI hiding is toggled. diff --git a/Dalamud/Plugin/Services/IGameInteropProvider.cs b/Dalamud/Plugin/Services/IGameInteropProvider.cs index 99e36c7ed..645d70ac6 100644 --- a/Dalamud/Plugin/Services/IGameInteropProvider.cs +++ b/Dalamud/Plugin/Services/IGameInteropProvider.cs @@ -1,4 +1,4 @@ -using System.Diagnostics; +using System.Diagnostics; using Dalamud.Hooking; using Dalamud.Utility.Signatures; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// Service responsible for the creation of hooks. /// -public interface IGameInteropProvider +public interface IGameInteropProvider : IDalamudService { /// /// Available hooking backends. diff --git a/Dalamud/Plugin/Services/IGameInventory.cs b/Dalamud/Plugin/Services/IGameInventory.cs index 0dff1ff03..cba1c9872 100644 --- a/Dalamud/Plugin/Services/IGameInventory.cs +++ b/Dalamud/Plugin/Services/IGameInventory.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.Inventory; using Dalamud.Game.Inventory.InventoryEventArgTypes; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// This class provides events for the in-game inventory. /// -public interface IGameInventory +public interface IGameInventory : IDalamudService { /// /// Delegate function to be called when inventories have been changed. diff --git a/Dalamud/Plugin/Services/IGameLifecycle.cs b/Dalamud/Plugin/Services/IGameLifecycle.cs index caa64ed23..8fae3fc0e 100644 --- a/Dalamud/Plugin/Services/IGameLifecycle.cs +++ b/Dalamud/Plugin/Services/IGameLifecycle.cs @@ -1,11 +1,11 @@ -using System.Threading; +using System.Threading; namespace Dalamud.Plugin.Services; /// /// Class offering cancellation tokens for common gameplay events. /// -public interface IGameLifecycle +public interface IGameLifecycle : IDalamudService { /// /// Gets a token that is cancelled when Dalamud is unloading. diff --git a/Dalamud/Plugin/Services/IGameNetwork.cs b/Dalamud/Plugin/Services/IGameNetwork.cs index 969176da7..4abf20834 100644 --- a/Dalamud/Plugin/Services/IGameNetwork.cs +++ b/Dalamud/Plugin/Services/IGameNetwork.cs @@ -1,4 +1,4 @@ -using Dalamud.Game.Network; +using Dalamud.Game.Network; namespace Dalamud.Plugin.Services; @@ -6,7 +6,7 @@ namespace Dalamud.Plugin.Services; /// This class handles interacting with game network events. /// [Obsolete("Will be removed in a future release. Use packet handler hooks instead.", true)] -public interface IGameNetwork +public interface IGameNetwork : IDalamudService { // TODO(v9): we shouldn't be passing pointers to the actual data here diff --git a/Dalamud/Plugin/Services/IGamepadState.cs b/Dalamud/Plugin/Services/IGamepadState.cs index 2816c927e..bdb07b91b 100644 --- a/Dalamud/Plugin/Services/IGamepadState.cs +++ b/Dalamud/Plugin/Services/IGamepadState.cs @@ -1,4 +1,4 @@ -using System.Numerics; +using System.Numerics; using Dalamud.Bindings.ImGui; using Dalamud.Game.ClientState.GamePad; @@ -10,7 +10,7 @@ namespace Dalamud.Plugin.Services; /// /// Will block game's gamepad input if is set. /// -public interface IGamepadState +public interface IGamepadState : IDalamudService { /// /// Gets the pointer to the current instance of the GamepadInput struct. diff --git a/Dalamud/Plugin/Services/IJobGauges.cs b/Dalamud/Plugin/Services/IJobGauges.cs index 4489a7be7..3313de7f6 100644 --- a/Dalamud/Plugin/Services/IJobGauges.cs +++ b/Dalamud/Plugin/Services/IJobGauges.cs @@ -1,11 +1,11 @@ -using Dalamud.Game.ClientState.JobGauge.Types; +using Dalamud.Game.ClientState.JobGauge.Types; namespace Dalamud.Plugin.Services; /// /// This class converts in-memory Job gauge data to structs. /// -public interface IJobGauges +public interface IJobGauges : IDalamudService { /// /// Gets the address of the JobGauge data. diff --git a/Dalamud/Plugin/Services/IKeyState.cs b/Dalamud/Plugin/Services/IKeyState.cs index de78978ca..06d6c9b49 100644 --- a/Dalamud/Plugin/Services/IKeyState.cs +++ b/Dalamud/Plugin/Services/IKeyState.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Keys; @@ -16,7 +16,7 @@ namespace Dalamud.Plugin.Services; /// index & 2 = key up (ephemeral). /// index & 3 = short key press (ephemeral). /// -public interface IKeyState +public interface IKeyState : IDalamudService { /// /// Get or set the key-pressed state for a given vkCode. diff --git a/Dalamud/Plugin/Services/IMarketBoard.cs b/Dalamud/Plugin/Services/IMarketBoard.cs index 3fded6987..0bdfad175 100644 --- a/Dalamud/Plugin/Services/IMarketBoard.cs +++ b/Dalamud/Plugin/Services/IMarketBoard.cs @@ -1,11 +1,11 @@ -using Dalamud.Game.Network.Structures; +using Dalamud.Game.Network.Structures; namespace Dalamud.Plugin.Services; /// /// Provides access to market board related events as the client receives/sends them. /// -public interface IMarketBoard +public interface IMarketBoard : IDalamudService { /// /// A delegate type used with the event. diff --git a/Dalamud/Plugin/Services/INamePlateGui.cs b/Dalamud/Plugin/Services/INamePlateGui.cs index eb2579bae..b58b5b7d0 100644 --- a/Dalamud/Plugin/Services/INamePlateGui.cs +++ b/Dalamud/Plugin/Services/INamePlateGui.cs @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// Class used to modify the data used when rendering nameplates. /// -public interface INamePlateGui +public interface INamePlateGui : IDalamudService { /// /// The delegate used for receiving nameplate update events. diff --git a/Dalamud/Plugin/Services/INotificationManager.cs b/Dalamud/Plugin/Services/INotificationManager.cs index 7d9ccd0b0..6d9dbf584 100644 --- a/Dalamud/Plugin/Services/INotificationManager.cs +++ b/Dalamud/Plugin/Services/INotificationManager.cs @@ -3,7 +3,7 @@ using Dalamud.Interface.ImGuiNotification; namespace Dalamud.Plugin.Services; /// Manager for notifications provided by Dalamud using ImGui. -public interface INotificationManager +public interface INotificationManager : IDalamudService { /// Adds a notification. /// The new notification. diff --git a/Dalamud/Plugin/Services/IObjectTable.cs b/Dalamud/Plugin/Services/IObjectTable.cs index 4c5305513..40dddb9ec 100644 --- a/Dalamud/Plugin/Services/IObjectTable.cs +++ b/Dalamud/Plugin/Services/IObjectTable.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Objects.Types; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// This collection represents the currently spawned FFXIV game objects. /// -public interface IObjectTable : IEnumerable +public interface IObjectTable : IDalamudService, IEnumerable { /// /// Gets the address of the object table. diff --git a/Dalamud/Plugin/Services/IPartyFinderGui.cs b/Dalamud/Plugin/Services/IPartyFinderGui.cs index fb7a49acd..d9b14baed 100644 --- a/Dalamud/Plugin/Services/IPartyFinderGui.cs +++ b/Dalamud/Plugin/Services/IPartyFinderGui.cs @@ -1,11 +1,11 @@ -using Dalamud.Game.Gui.PartyFinder.Types; +using Dalamud.Game.Gui.PartyFinder.Types; namespace Dalamud.Plugin.Services; /// /// This class handles interacting with the native PartyFinder window. /// -public interface IPartyFinderGui +public interface IPartyFinderGui : IDalamudService { /// /// Event type fired each time the game receives an individual Party Finder listing. diff --git a/Dalamud/Plugin/Services/IPartyList.cs b/Dalamud/Plugin/Services/IPartyList.cs index b046f36db..1af3fa962 100644 --- a/Dalamud/Plugin/Services/IPartyList.cs +++ b/Dalamud/Plugin/Services/IPartyList.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Game.ClientState.Party; @@ -7,7 +7,7 @@ namespace Dalamud.Plugin.Services; /// /// This collection represents the actors present in your party or alliance. /// -public interface IPartyList : IReadOnlyCollection +public interface IPartyList : IDalamudService, IReadOnlyCollection { /// /// Gets the amount of party members the local player has. diff --git a/Dalamud/Plugin/Services/IPluginLog.cs b/Dalamud/Plugin/Services/IPluginLog.cs index 38406fd91..38786f0d2 100644 --- a/Dalamud/Plugin/Services/IPluginLog.cs +++ b/Dalamud/Plugin/Services/IPluginLog.cs @@ -1,4 +1,4 @@ -using Serilog; +using Serilog; using Serilog.Events; #pragma warning disable CS1573 // See https://github.com/dotnet/roslyn/issues/40325 @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// An opinionated service to handle logging for plugins. /// -public interface IPluginLog +public interface IPluginLog : IDalamudService { /// /// Gets a Serilog ILogger instance for this plugin. This is the entrypoint for plugins that wish to use more diff --git a/Dalamud/Plugin/Services/ISeStringEvaluator.cs b/Dalamud/Plugin/Services/ISeStringEvaluator.cs index 4efc29e3e..8ab7adad1 100644 --- a/Dalamud/Plugin/Services/ISeStringEvaluator.cs +++ b/Dalamud/Plugin/Services/ISeStringEvaluator.cs @@ -9,7 +9,7 @@ namespace Dalamud.Plugin.Services; /// /// Defines a service for retrieving localized text for various in-game entities. /// -public interface ISeStringEvaluator +public interface ISeStringEvaluator : IDalamudService { /// /// Evaluates macros in a . diff --git a/Dalamud/Plugin/Services/ISigScanner.cs b/Dalamud/Plugin/Services/ISigScanner.cs index ac0f2c55f..fbbd8b05a 100644 --- a/Dalamud/Plugin/Services/ISigScanner.cs +++ b/Dalamud/Plugin/Services/ISigScanner.cs @@ -2,12 +2,14 @@ using System.Collections.Generic; using System.Diagnostics; using System.Threading; +using Dalamud.Plugin.Services; + namespace Dalamud.Game; /// /// A SigScanner facilitates searching for memory signatures in a given ProcessModule. /// -public interface ISigScanner +public interface ISigScanner : IDalamudService { /// /// Gets a value indicating whether the search on this module is performed on a copy. diff --git a/Dalamud/Plugin/Services/ITargetManager.cs b/Dalamud/Plugin/Services/ITargetManager.cs index 5ba9f390e..9c9fce550 100644 --- a/Dalamud/Plugin/Services/ITargetManager.cs +++ b/Dalamud/Plugin/Services/ITargetManager.cs @@ -1,11 +1,12 @@ -using Dalamud.Game.ClientState.Objects.Types; +using Dalamud.Game.ClientState.Objects.Types; +using Dalamud.Plugin.Services; namespace Dalamud.Game.ClientState.Objects; /// /// Get and set various kinds of targets for the player. /// -public interface ITargetManager +public interface ITargetManager : IDalamudService { /// /// Gets or sets the current target. diff --git a/Dalamud/Plugin/Services/ITextureProvider.cs b/Dalamud/Plugin/Services/ITextureProvider.cs index a8ad76995..7cd1b7c86 100644 --- a/Dalamud/Plugin/Services/ITextureProvider.cs +++ b/Dalamud/Plugin/Services/ITextureProvider.cs @@ -32,7 +32,7 @@ namespace Dalamud.Plugin.Services; /// . /// /// -public interface ITextureProvider +public interface ITextureProvider : IDalamudService { /// Creates an empty texture. /// Texture specifications. diff --git a/Dalamud/Plugin/Services/ITextureReadbackProvider.cs b/Dalamud/Plugin/Services/ITextureReadbackProvider.cs index 3d2894355..00b684cbb 100644 --- a/Dalamud/Plugin/Services/ITextureReadbackProvider.cs +++ b/Dalamud/Plugin/Services/ITextureReadbackProvider.cs @@ -3,14 +3,13 @@ using System.IO; using System.Threading; using System.Threading.Tasks; -using Dalamud.Interface.Internal; using Dalamud.Interface.Textures; using Dalamud.Interface.Textures.TextureWraps; namespace Dalamud.Plugin.Services; /// Service that grants you to read instances of . -public interface ITextureReadbackProvider +public interface ITextureReadbackProvider : IDalamudService { /// Gets the raw data of a texture wrap. /// The source texture wrap. diff --git a/Dalamud/Plugin/Services/ITextureSubstitutionProvider.cs b/Dalamud/Plugin/Services/ITextureSubstitutionProvider.cs index 371fbaf0f..dcd1b00cc 100644 --- a/Dalamud/Plugin/Services/ITextureSubstitutionProvider.cs +++ b/Dalamud/Plugin/Services/ITextureSubstitutionProvider.cs @@ -1,11 +1,11 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Dalamud.Plugin.Services; /// /// Service that grants you the ability to replace texture data that is to be loaded by Dalamud. /// -public interface ITextureSubstitutionProvider +public interface ITextureSubstitutionProvider : IDalamudService { /// /// Delegate describing a function that may be used to intercept and replace texture data. diff --git a/Dalamud/Plugin/Services/ITitleScreenMenu.cs b/Dalamud/Plugin/Services/ITitleScreenMenu.cs index 9f7b17ea3..50bae62a1 100644 --- a/Dalamud/Plugin/Services/ITitleScreenMenu.cs +++ b/Dalamud/Plugin/Services/ITitleScreenMenu.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using Dalamud.Interface; using Dalamud.Interface.Textures; @@ -8,7 +8,7 @@ namespace Dalamud.Plugin.Services; /// /// Interface for class responsible for managing elements in the title screen menu. /// -public interface ITitleScreenMenu +public interface ITitleScreenMenu : IDalamudService { /// /// Gets the list of read only entries in the title screen menu. diff --git a/Dalamud/Plugin/Services/IToastGui.cs b/Dalamud/Plugin/Services/IToastGui.cs index ef83e95ac..c472cbb1f 100644 --- a/Dalamud/Plugin/Services/IToastGui.cs +++ b/Dalamud/Plugin/Services/IToastGui.cs @@ -1,4 +1,4 @@ -using Dalamud.Game.Gui.Toast; +using Dalamud.Game.Gui.Toast; using Dalamud.Game.Text.SeStringHandling; namespace Dalamud.Plugin.Services; @@ -6,7 +6,7 @@ namespace Dalamud.Plugin.Services; /// /// This class facilitates interacting with and creating native toast windows. /// -public interface IToastGui +public interface IToastGui : IDalamudService { /// /// A delegate type used when a normal toast window appears.