2022-07-21 11:20:46 -04:00
|
|
|
|
using System;
|
2018-09-22 00:35:34 -04:00
|
|
|
|
|
2022-07-21 11:20:46 -04:00
|
|
|
|
namespace Vanara.PInvoke;
|
2019-01-16 10:06:31 -05:00
|
|
|
|
|
2022-07-29 00:19:53 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a handle to a graphics object.</summary>
|
2022-07-21 11:20:46 -04:00
|
|
|
|
public interface IGraphicsObjectHandle : IUserHandle { }
|
2019-01-16 10:06:31 -05:00
|
|
|
|
|
2022-07-21 11:20:46 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a HANDLE.</summary>
|
|
|
|
|
public interface IHandle
|
|
|
|
|
{
|
|
|
|
|
/// <summary>Returns the value of the handle field.</summary>
|
|
|
|
|
/// <returns>An IntPtr representing the value of the handle field.</returns>
|
|
|
|
|
IntPtr DangerousGetHandle();
|
|
|
|
|
}
|
2018-11-19 23:18:50 -05:00
|
|
|
|
|
2022-07-29 00:19:53 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a handle to a kernel object.</summary>
|
2022-07-21 11:20:46 -04:00
|
|
|
|
public interface IKernelHandle : IHandle { }
|
2018-11-19 23:18:50 -05:00
|
|
|
|
|
2022-07-21 11:20:46 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a pointer to a security object.</summary>
|
|
|
|
|
public interface ISecurityObject : IHandle { }
|
2018-11-19 23:18:50 -05:00
|
|
|
|
|
2022-07-29 00:19:53 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a handle to a shell object.</summary>
|
2022-07-21 11:20:46 -04:00
|
|
|
|
public interface IShellHandle : IHandle { }
|
2021-06-03 21:52:26 -04:00
|
|
|
|
|
2022-07-21 11:20:46 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a handle to a synchronization object.</summary>
|
|
|
|
|
public interface ISyncHandle : IKernelHandle { }
|
2018-11-19 23:18:50 -05:00
|
|
|
|
|
2022-07-29 00:19:53 -04:00
|
|
|
|
/// <summary>Signals that a structure or class holds a handle to a user object.</summary>
|
2022-07-21 11:20:46 -04:00
|
|
|
|
public interface IUserHandle : IHandle { }
|