Files
lserp_cs_5.0/插件库/Cef3.24/Interop/Classes.g/cef_callback_t.g.cs
T
2026-07-10 15:25:05 +08:00

136 lines
4.2 KiB
C#

//
// DO NOT MODIFY! THIS IS AUTOGENERATED FILE!
//
namespace Cef3.Interop
{
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.InteropServices;
using System.Security;
[StructLayout(LayoutKind.Sequential, Pack = libcef.ALIGN)]
[SuppressMessage("Microsoft.Design", "CA1049:TypesThatOwnNativeResourcesShouldBeDisposable")]
internal unsafe struct cef_callback_t
{
internal cef_base_t _base;
internal IntPtr _cont;
internal IntPtr _cancel;
[UnmanagedFunctionPointer(libcef.CEF_CALLBACK)]
#if !DEBUG
[SuppressUnmanagedCodeSecurity]
#endif
private delegate void add_ref_delegate(cef_callback_t* self);
[UnmanagedFunctionPointer(libcef.CEF_CALLBACK)]
#if !DEBUG
[SuppressUnmanagedCodeSecurity]
#endif
private delegate int release_delegate(cef_callback_t* self);
[UnmanagedFunctionPointer(libcef.CEF_CALLBACK)]
#if !DEBUG
[SuppressUnmanagedCodeSecurity]
#endif
private delegate int has_one_ref_delegate(cef_callback_t* self);
[UnmanagedFunctionPointer(libcef.CEF_CALLBACK)]
#if !DEBUG
[SuppressUnmanagedCodeSecurity]
#endif
private delegate void cont_delegate(cef_callback_t* self);
[UnmanagedFunctionPointer(libcef.CEF_CALLBACK)]
#if !DEBUG
[SuppressUnmanagedCodeSecurity]
#endif
private delegate void cancel_delegate(cef_callback_t* self);
// AddRef
private static IntPtr _p0;
private static add_ref_delegate _d0;
public static void add_ref(cef_callback_t* self)
{
add_ref_delegate d;
var p = self->_base._add_ref;
if (p == _p0) { d = _d0; }
else
{
d = (add_ref_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(add_ref_delegate));
if (_p0 == IntPtr.Zero) { _d0 = d; _p0 = p; }
}
d(self);
}
// Release
private static IntPtr _p1;
private static release_delegate _d1;
public static int release(cef_callback_t* self)
{
release_delegate d;
var p = self->_base._release;
if (p == _p1) { d = _d1; }
else
{
d = (release_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(release_delegate));
if (_p1 == IntPtr.Zero) { _d1 = d; _p1 = p; }
}
return d(self);
}
// HasOneRef
private static IntPtr _p2;
private static has_one_ref_delegate _d2;
public static int has_one_ref(cef_callback_t* self)
{
has_one_ref_delegate d;
var p = self->_base._has_one_ref;
if (p == _p2) { d = _d2; }
else
{
d = (has_one_ref_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(has_one_ref_delegate));
if (_p2 == IntPtr.Zero) { _d2 = d; _p2 = p; }
}
return d(self);
}
// Continue
private static IntPtr _p3;
private static cont_delegate _d3;
public static void cont(cef_callback_t* self)
{
cont_delegate d;
var p = self->_cont;
if (p == _p3) { d = _d3; }
else
{
d = (cont_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(cont_delegate));
if (_p3 == IntPtr.Zero) { _d3 = d; _p3 = p; }
}
d(self);
}
// Cancel
private static IntPtr _p4;
private static cancel_delegate _d4;
public static void cancel(cef_callback_t* self)
{
cancel_delegate d;
var p = self->_cancel;
if (p == _p4) { d = _d4; }
else
{
d = (cancel_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(cancel_delegate));
if (_p4 == IntPtr.Zero) { _d4 = d; _p4 = p; }
}
d(self);
}
}
}