static void OverrideUpdateCaps (GLib.GType gtype, UpdateCapsNativeDelegate callback) { unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("update_caps")); *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback); } }
private Gst.Caps InternalUpdateCaps (Gst.Caps caps) { UpdateCapsNativeDelegate unmanaged = null; unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("update_caps")); unmanaged = (UpdateCapsNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(UpdateCapsNativeDelegate)); } if (unmanaged == null) return null; IntPtr __result = unmanaged (this.Handle, caps == null ? IntPtr.Zero : caps.Handle); return __result == IntPtr.Zero ? null : (Gst.Caps) GLib.Opaque.GetOpaque (__result, typeof (Gst.Caps), true); }