// This file was generated by the Gtk# code generator. // Any changes made will be lost if regenerated. namespace Gst.Audio { using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; #region Autogenerated code public partial class AudioClock : Gst.SystemClock { public AudioClock (IntPtr raw) : base(raw) {} [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr gst_audio_clock_new(IntPtr name, Gst.AudioSharp.AudioClockGetTimeFuncNative func, IntPtr user_data, GLib.DestroyNotify destroy_notify); public AudioClock (string name, Gst.Audio.AudioClockGetTimeFunc func, IntPtr user_data, GLib.DestroyNotify destroy_notify) : base (IntPtr.Zero) { if (GetType () != typeof (AudioClock)) { var vals = new List (); var names = new List (); names.Add ("name"); vals.Add (new GLib.Value (name)); CreateNativeObject (names.ToArray (), vals.ToArray ()); return; } IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name); Gst.AudioSharp.AudioClockGetTimeFuncWrapper func_wrapper = new Gst.AudioSharp.AudioClockGetTimeFuncWrapper (func); Raw = gst_audio_clock_new(native_name, func_wrapper.NativeDelegate, user_data, destroy_notify); GLib.Marshaller.Free (native_name); } public Gst.Audio.AudioClockGetTimeFunc Func { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("func")); Gst.AudioSharp.AudioClockGetTimeFuncNative del = (Gst.AudioSharp.AudioClockGetTimeFuncNative)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(Gst.AudioSharp.AudioClockGetTimeFuncNative)); return Gst.AudioSharp.AudioClockGetTimeFuncWrapper.GetManagedDelegate ((del)); } } } public IntPtr UserData { get { unsafe { IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("user_data")); return (*raw_ptr); } } } // 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("_gst_reserved" , Gst.SystemClock.class_abi.Fields , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _gst_reserved , null , null , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), }); return _class_abi; } } // End of the ABI representation. [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr gst_audio_clock_get_type(); public static new GLib.GType GType { get { IntPtr raw_ret = gst_audio_clock_get_type(); GLib.GType ret = new GLib.GType(raw_ret); return ret; } } [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern ulong gst_audio_clock_adjust(IntPtr raw, ulong time); public ulong Adjust(ulong time) { ulong raw_ret = gst_audio_clock_adjust(Handle, time); ulong ret = raw_ret; return ret; } [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern ulong gst_audio_clock_get_time(IntPtr raw); public new ulong Time { get { ulong raw_ret = gst_audio_clock_get_time(Handle); ulong ret = raw_ret; return ret; } } [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern void gst_audio_clock_invalidate(IntPtr raw); public void Invalidate() { gst_audio_clock_invalidate(Handle); } [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern void gst_audio_clock_reset(IntPtr raw, ulong time); public void Reset(ulong time) { gst_audio_clock_reset(Handle, time); } static AudioClock () { GtkSharp.GstreamerSharp.ObjectManager.Initialize (); } // 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("func" , Gst.SystemClock.abi_info.Fields , (uint) Marshal.SizeOf(typeof(IntPtr)) // func , null , "user_data" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("user_data" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // user_data , "func" , "destroy_notify" , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), new GLib.AbiField("destroy_notify" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) // destroy_notify , "user_data" , "last_time" , (long) Marshal.OffsetOf(typeof(GstAudioClock_destroy_notifyAlign), "destroy_notify") , 0 ), new GLib.AbiField("last_time" , -1 , (uint) Marshal.SizeOf(typeof(ulong)) // last_time , "destroy_notify" , "time_offset" , (long) Marshal.OffsetOf(typeof(GstAudioClock_last_timeAlign), "last_time") , 0 ), new GLib.AbiField("time_offset" , -1 , (uint) Marshal.SizeOf(typeof(long)) // time_offset , "last_time" , "_gst_reserved" , (long) Marshal.OffsetOf(typeof(GstAudioClock_time_offsetAlign), "time_offset") , 0 ), new GLib.AbiField("_gst_reserved" , -1 , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _gst_reserved , "time_offset" , null , (uint) Marshal.SizeOf(typeof(IntPtr)) , 0 ), }); return _abi_info; } } [StructLayout(LayoutKind.Sequential)] public struct GstAudioClock_destroy_notifyAlign { sbyte f1; private GLib.DestroyNotify destroy_notify; } [StructLayout(LayoutKind.Sequential)] public struct GstAudioClock_last_timeAlign { sbyte f1; private ulong last_time; } [StructLayout(LayoutKind.Sequential)] public struct GstAudioClock_time_offsetAlign { sbyte f1; private long time_offset; } // End of the ABI representation. #endregion } }