public PluginInitFullFuncWrapper(Gst.PluginInitFullFunc managed)
 {
     this.managed = managed;
     if (managed != null)
     {
         NativeDelegate = new PluginInitFullFuncNative(NativeCallback);
     }
 }
Beispiel #2
0
        public static bool RegisterStaticFull(int major_version, int minor_version, string name, string description, Gst.PluginInitFullFunc init_full_func, string version, string license, string source, string package, string origin)
        {
            IntPtr native_name        = GLib.Marshaller.StringToPtrGStrdup(name);
            IntPtr native_description = GLib.Marshaller.StringToPtrGStrdup(description);

            GstSharp.PluginInitFullFuncWrapper init_full_func_wrapper = new GstSharp.PluginInitFullFuncWrapper(init_full_func);
            IntPtr native_version = GLib.Marshaller.StringToPtrGStrdup(version);
            IntPtr native_license = GLib.Marshaller.StringToPtrGStrdup(license);
            IntPtr native_source  = GLib.Marshaller.StringToPtrGStrdup(source);
            IntPtr native_package = GLib.Marshaller.StringToPtrGStrdup(package);
            IntPtr native_origin  = GLib.Marshaller.StringToPtrGStrdup(origin);
            bool   raw_ret        = gst_plugin_register_static_full(major_version, minor_version, native_name, native_description, init_full_func_wrapper.NativeDelegate, native_version, native_license, native_source, native_package, native_origin, IntPtr.Zero);
            bool   ret            = raw_ret;

            GLib.Marshaller.Free(native_name);
            GLib.Marshaller.Free(native_description);
            GLib.Marshaller.Free(native_version);
            GLib.Marshaller.Free(native_license);
            GLib.Marshaller.Free(native_source);
            GLib.Marshaller.Free(native_package);
            GLib.Marshaller.Free(native_origin);
            return(ret);
        }