using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace Interop.NmxAdptr; [ComImport] [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] [Guid("E42D2692-4B57-4E97-B99C-2829D60A4D2F")] public interface IBootstrapRegister3 : IBootstrapRegister2 { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void RegisterClusterInformation([In] tagRegistrationSource regSource, [In] int lPlatformID, [In] tagClusterRegistrationInformation clusterInformation); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void UnregisterClusterInformation([In] tagRegistrationSource regSource, [In] int platformId); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void GetClusterInformation([In] int platformId, out tagClusterRegistrationInformation pClusterInformation); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void RegisterPlatform([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In] tagRegistrationSource regSource, [In] tagPlatformRegistrationInformation platformRegInfo); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void UnregisterPlatform([In] tagRegistrationSource regSource, [In] int platformId); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void GetPlatformList(out int plTotalPlatforms, [Out] IntPtr ppPlatformList); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void RegisterPlatformEngine([In] int platformId, [In][MarshalAs(UnmanagedType.LPWStr)] string szVendor, [In][MarshalAs(UnmanagedType.LPWStr)] string szEngineName, [In][MarshalAs(UnmanagedType.LPWStr)] string szStartupOptions, [In][MarshalAs(UnmanagedType.LPWStr)] string szConfigOptions); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void SetPlatformCmdStartOptions([In][MarshalAs(UnmanagedType.LPWStr)] string szCmdOption); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void GetPlatformCmdStartOptions([MarshalAs(UnmanagedType.BStr)] out string pszCmdOption); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void GetRemotePlatformList([In][MarshalAs(UnmanagedType.LPWStr)] string szNodeName, out int plTotalPlatforms, [Out] IntPtr ppPlatformList); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void RegisterFolderOrFile([In][MarshalAs(UnmanagedType.LPWStr)] string szFolderOrFilePath, [In] bool bRemoveOnUninstall); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void SetPlatformStatus([In] int platformId, [In] tagPlatformStatus status, [In] int engineStatus); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] new void RegisterPlatform2([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In] tagRegistrationSource regSource, [In] tagPlatformRegistrationInformation2 platformRegInfo); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void RegisterPlatform3([In][MarshalAs(UnmanagedType.LPWStr)] string szGalaxyName, [In] tagRegistrationSource regSource, [In] tagPlatformRegistrationInformation3 platformRegInfo); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void MarkPlatformUndeployed([In][MarshalAs(UnmanagedType.BStr)] string bstrGalaxyName, [In] int lPlatformID, [In][MarshalAs(UnmanagedType.BStr)] string bstrPlatformName); }