
Core assembly concept: Assemblies that will never need to get unloaded (Torch.API, Torch, Torch.Server) Event shims and patch shims on the core assemblies.
28 lines
975 B
C#
28 lines
975 B
C#
using System.Runtime.CompilerServices;
|
|
|
|
namespace Torch.API.Event
|
|
{
|
|
/// <summary>
|
|
/// Manager class responsible for registration of event handlers.
|
|
/// </summary>
|
|
public interface IEventManager
|
|
{
|
|
/// <summary>
|
|
/// Registers all event handler methods contained in the given instance
|
|
/// </summary>
|
|
/// <param name="handler">Instance to register</param>
|
|
/// <returns><b>true</b> if added, <b>false</b> otherwise</returns>
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
bool RegisterHandler(IEventHandler handler);
|
|
|
|
|
|
/// <summary>
|
|
/// Unregisters all event handler methods contained in the given instance
|
|
/// </summary>
|
|
/// <param name="handler">Instance to unregister</param>
|
|
/// <returns><b>true</b> if removed, <b>false</b> otherwise</returns>
|
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
|
bool UnregisterHandler(IEventHandler handler);
|
|
}
|
|
}
|