// This file was generated by the Gtk# code generator. // Any changes made will be lost if regenerated. namespace Gst { using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; #region Autogenerated code public partial class Allocator : Gst.Object { protected Allocator (IntPtr raw) : base(raw) {} protected Allocator() : base(IntPtr.Zero) { CreateNativeObject (new string [0], new GLib.Value [0]); } public string MemType { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_type")); return GLib.Marshaller.Utf8PtrToString ((*raw_ptr)); } } } public Gst.MemoryMapFunction MemMap { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_map")); GstSharp.MemoryMapFunctionNative del = (GstSharp.MemoryMapFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryMapFunctionNative)); return GstSharp.MemoryMapFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryUnmapFunction MemUnmap { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_unmap")); GstSharp.MemoryUnmapFunctionNative del = (GstSharp.MemoryUnmapFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryUnmapFunctionNative)); return GstSharp.MemoryUnmapFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryCopyFunction MemCopy { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_copy")); GstSharp.MemoryCopyFunctionNative del = (GstSharp.MemoryCopyFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryCopyFunctionNative)); return GstSharp.MemoryCopyFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryShareFunction MemShare { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_share")); GstSharp.MemoryShareFunctionNative del = (GstSharp.MemoryShareFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryShareFunctionNative)); return GstSharp.MemoryShareFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryIsSpanFunction MemIsSpan { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_is_span")); GstSharp.MemoryIsSpanFunctionNative del = (GstSharp.MemoryIsSpanFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryIsSpanFunctionNative)); return GstSharp.MemoryIsSpanFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryMapFullFunction MemMapFull { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_map_full")); GstSharp.MemoryMapFullFunctionNative del = (GstSharp.MemoryMapFullFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryMapFullFunctionNative)); return GstSharp.MemoryMapFullFunctionWrapper.GetManagedDelegate ((del)); } } } public Gst.MemoryUnmapFullFunction MemUnmapFull { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("mem_unmap_full")); GstSharp.MemoryUnmapFullFunctionNative del = (GstSharp.MemoryUnmapFullFunctionNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GstSharp.MemoryUnmapFullFunctionNative)); return GstSharp.MemoryUnmapFullFunctionWrapper.GetManagedDelegate ((del)); } } } static AllocNativeDelegate Alloc_cb_delegate; static AllocNativeDelegate AllocVMCallback { get { if (Alloc_cb_delegate == null) Alloc_cb_delegate = new AllocNativeDelegate (Alloc_cb); return Alloc_cb_delegate; } } static void OverrideAlloc (GLib.GType gtype) { OverrideAlloc (gtype, AllocVMCallback); } static void OverrideAlloc (GLib.GType gtype, AllocNativeDelegate callback) { unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("alloc")); *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback); } } [UnmanagedFunctionPointer (CallingConvention.Cdecl)] delegate IntPtr AllocNativeDelegate (IntPtr inst, UIntPtr size, IntPtr parms); static IntPtr Alloc_cb (IntPtr inst, UIntPtr size, IntPtr parms) { try { Allocator __obj = GLib.Object.GetObject (inst, false) as Allocator; Gst.Memory __result; __result = __obj.OnAlloc ((ulong) size, Gst.AllocationParams.New (parms)); return __result == null ? IntPtr.Zero : __result.OwnedCopy; } catch (Exception e) { GLib.ExceptionManager.RaiseUnhandledException (e, true); // NOTREACHED: above call does not return. throw e; } } [GLib.DefaultSignalHandler(Type=typeof(Gst.Allocator), ConnectionMethod="OverrideAlloc")] protected virtual Gst.Memory OnAlloc (ulong size, Gst.AllocationParams parms) { return InternalAlloc (size, parms); } private Gst.Memory InternalAlloc (ulong size, Gst.AllocationParams parms) { AllocNativeDelegate unmanaged = null; unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("alloc")); unmanaged = (AllocNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(AllocNativeDelegate)); } if (unmanaged == null) return null; IntPtr native_parms = GLib.Marshaller.StructureToPtrAlloc (parms); IntPtr __result = unmanaged (this.Handle, new UIntPtr (size), native_parms); Marshal.FreeHGlobal (native_parms); return __result == IntPtr.Zero ? null : (Gst.Memory) GLib.Opaque.GetOpaque (__result, typeof (Gst.Memory), true); } static FreeNativeDelegate Free_cb_delegate; static FreeNativeDelegate FreeVMCallback { get { if (Free_cb_delegate == null) Free_cb_delegate = new FreeNativeDelegate (Free_cb); return Free_cb_delegate; } } static void OverrideFree (GLib.GType gtype) { OverrideFree (gtype, FreeVMCallback); } static void OverrideFree (GLib.GType gtype, FreeNativeDelegate callback) { unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("free")); *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback); } } [UnmanagedFunctionPointer (CallingConvention.Cdecl)] delegate void FreeNativeDelegate (IntPtr inst, IntPtr memory); static void Free_cb (IntPtr inst, IntPtr memory) { try { Allocator __obj = GLib.Object.GetObject (inst, false) as Allocator; __obj.OnFree (memory == IntPtr.Zero ? null : (Gst.Memory) GLib.Opaque.GetOpaque (memory, typeof (Gst.Memory), true)); } catch (Exception e) { GLib.ExceptionManager.RaiseUnhandledException (e, false); } } [GLib.DefaultSignalHandler(Type=typeof(Gst.Allocator), ConnectionMethod="OverrideFree")] protected virtual void OnFree (Gst.Memory memory) { InternalFree (memory); } private void InternalFree (Gst.Memory memory) { FreeNativeDelegate unmanaged = null; unsafe { IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("free")); unmanaged = (FreeNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(FreeNativeDelegate)); } if (unmanaged == null) return; memory.Owned = false; unmanaged (this.Handle, memory == null ? IntPtr.Zero : memory.Handle); } // Internal representation of the wrapped structure ABI. static GLib.AbiStruct _class_abi = null; static public new GLib.AbiStruct class_abi { get { if (_class_abi == null) _class_abi = new GLib.AbiStruct (new List{ new GLib.AbiField("alloc" , Gst.Object.class_abi.Fields , (uint) Marshal.SizeOf(typeof(IntPtr)) // alloc , null , "free" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("free" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // free , "alloc" , "_gst_reserved" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("_gst_reserved" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _gst_reserved , "free" , null , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), }); return _class_abi; } } // End of the ABI representation. [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr gst_allocator_get_type(); public static new GLib.GType GType { get { IntPtr raw_ret = gst_allocator_get_type(); GLib.GType ret = new GLib.GType(raw_ret); return ret; } } [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr gst_allocator_find(IntPtr name); public static Gst.Allocator Find(string name) { IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name); IntPtr raw_ret = gst_allocator_find(native_name); Gst.Allocator ret = GLib.Object.GetObject(raw_ret, true) as Gst.Allocator; GLib.Marshaller.Free (native_name); return ret; } public static Gst.Allocator Find() { return Find (null); } [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern void gst_allocator_register(IntPtr name, IntPtr allocator); public static void Register(string name, Gst.Allocator allocator) { IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name); gst_allocator_register(native_name, allocator == null ? IntPtr.Zero : allocator.OwnedHandle); GLib.Marshaller.Free (native_name); } [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr gst_allocator_alloc(IntPtr raw, UIntPtr size, IntPtr parms); public Gst.Memory Alloc(ulong size, Gst.AllocationParams parms) { IntPtr native_parms = GLib.Marshaller.StructureToPtrAlloc (parms); IntPtr raw_ret = gst_allocator_alloc(Handle, new UIntPtr (size), native_parms); Gst.Memory ret = raw_ret == IntPtr.Zero ? null : (Gst.Memory) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Memory), true); Marshal.FreeHGlobal (native_parms); return ret; } public Gst.Memory Alloc(ulong size) { return Alloc (size, Gst.AllocationParams.Zero); } [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern void gst_allocator_free(IntPtr raw, IntPtr memory); public void Free(Gst.Memory memory) { memory.Owned = false; gst_allocator_free(Handle, memory == null ? IntPtr.Zero : memory.Handle); } [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern void gst_allocator_set_default(IntPtr raw); public void SetDefault() { gst_allocator_set_default(Handle); } // Internal representation of the wrapped structure ABI. static GLib.AbiStruct _abi_info = null; static public new GLib.AbiStruct abi_info { get { if (_abi_info == null) _abi_info = new GLib.AbiStruct (new List{ new GLib.AbiField("mem_type" , Gst.Object.abi_info.Fields , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_type , null , "mem_map" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_map" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_map , "mem_type" , "mem_unmap" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_unmap" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_unmap , "mem_map" , "mem_copy" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_copy" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_copy , "mem_unmap" , "mem_share" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_share" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_share , "mem_copy" , "mem_is_span" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_is_span" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_is_span , "mem_share" , "mem_map_full" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_map_full" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_map_full , "mem_is_span" , "mem_unmap_full" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("mem_unmap_full" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // mem_unmap_full , "mem_map_full" , "_gst_reserved" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("_gst_reserved" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) * 2 // _gst_reserved , "mem_unmap_full" , "priv" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("priv" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // priv , "_gst_reserved" , null , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), }); return _abi_info; } } // End of the ABI representation. #endregion } }