// // 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); } } }