public PluginInitFullFuncWrapper(Gst.PluginInitFullFunc managed) { this.managed = managed; if (managed != null) { NativeDelegate = new PluginInitFullFuncNative(NativeCallback); } }
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); }