Files
Aug2021-Cpp2IL-Dump/mscorlib/System/Runtime/InteropServices/ICustomMarshaler.cs
T
2026-04-10 22:50:51 +02:00

50 lines
1.9 KiB
C#

using System;
using Cpp2IlInjected;
namespace System.Runtime.InteropServices
{
/// <summary>Provides custom wrappers for handling method calls.</summary>
// Token: 0x02000580 RID: 1408
[Token(Token = "0x2000580")]
[ComVisible(true)]
public interface ICustomMarshaler
{
/// <summary>Converts the unmanaged data to managed data.</summary>
/// <param name="pNativeData">A pointer to the unmanaged data to be wrapped.</param>
/// <returns>An object that represents the managed view of the COM data.</returns>
// Token: 0x06002AB7 RID: 10935
[Token(Token = "0x6002AB7")]
[Address(Slot = "0")]
object MarshalNativeToManaged(IntPtr pNativeData);
/// <summary>Converts the managed data to unmanaged data.</summary>
/// <param name="ManagedObj">The managed object to be converted.</param>
/// <returns>A pointer to the COM view of the managed object.</returns>
// Token: 0x06002AB8 RID: 10936
[Token(Token = "0x6002AB8")]
[Address(Slot = "1")]
IntPtr MarshalManagedToNative(object ManagedObj);
/// <summary>Performs necessary cleanup of the unmanaged data when it is no longer needed.</summary>
/// <param name="pNativeData">A pointer to the unmanaged data to be destroyed.</param>
// Token: 0x06002AB9 RID: 10937
[Token(Token = "0x6002AB9")]
[Address(Slot = "2")]
void CleanUpNativeData(IntPtr pNativeData);
/// <summary>Performs necessary cleanup of the managed data when it is no longer needed.</summary>
/// <param name="ManagedObj">The managed object to be destroyed.</param>
// Token: 0x06002ABA RID: 10938
[Token(Token = "0x6002ABA")]
[Address(Slot = "3")]
void CleanUpManagedData(object ManagedObj);
/// <summary>Returns the size of the native data to be marshaled.</summary>
/// <returns>The size, in bytes, of the native data.</returns>
// Token: 0x06002ABB RID: 10939
[Token(Token = "0x6002ABB")]
[Address(Slot = "4")]
int GetNativeDataSize();
}
}