using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security; namespace Decal.Interop.Core; [ComImport] [SuppressUnmanagedCodeSecurity] [Guid("0F95468D-5071-4E28-A223-D83FDFED99E2")] [InterfaceType(1)] public interface IDecalService { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void Initialize([MarshalAs(UnmanagedType.Interface)] DecalCore pDecal); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void BeforePlugins(); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void AfterPlugins(); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void Terminate(); }