public ClockCallbackWrapper(Gst.ClockCallback managed)
 {
     this.managed = managed;
     if (managed != null)
     {
         NativeDelegate = new ClockCallbackNative(NativeCallback);
     }
 }
示例#2
0
        public static Gst.ClockReturn IdWaitAsync(IntPtr id, Gst.ClockCallback func)
        {
            GstSharp.ClockCallbackWrapper func_wrapper = new GstSharp.ClockCallbackWrapper(func);
            IntPtr user_data;

            GLib.DestroyNotify destroy_data;
            if (func == null)
            {
                user_data    = IntPtr.Zero;
                destroy_data = null;
            }
            else
            {
                user_data    = (IntPtr)GCHandle.Alloc(func_wrapper);
                destroy_data = GLib.DestroyHelper.NotifyHandler;
            }
            int raw_ret = gst_clock_id_wait_async(id, func_wrapper.NativeDelegate, user_data, destroy_data);

            Gst.ClockReturn ret = (Gst.ClockReturn)raw_ret;
            return(ret);
        }
		public ClockCallbackWrapper (Gst.ClockCallback managed)
		{
			this.managed = managed;
			if (managed != null)
				NativeDelegate = new ClockCallbackNative (NativeCallback);
		}