Move TypeFind/Index/Element register functions to their factory classes

This commit is contained in:
Sebastian Dröge 2009-05-07 09:42:17 +02:00
parent 533f9a16b5
commit a32102f3ff
12 changed files with 41 additions and 47 deletions

View file

@ -607,16 +607,7 @@
<ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue>
<Parameters><Parameter Name="src_format" Type="Gst.Format" /><Parameter Name="src_val" Type="System.Int64" /><Parameter Name="dest_format" Type="Gst.Format&amp;" RefType="ref" /><Parameter Name="dest_val" Type="System.Int64&amp;" RefType="out" /></Parameters>
<Docs><param name="src_format">To be added.</param><param name="src_val">To be added.</param><param name="dest_format">To be added.</param><param name="dest_val">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs>
</Member><Member MemberName="QueryDuration"><MemberSignature Language="C#" Value="public bool QueryDuration (ref Gst.Format format, out long duration);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="format" Type="Gst.Format&amp;" RefType="ref" /><Parameter Name="duration" Type="System.Int64&amp;" RefType="out" /></Parameters><Docs><param name="format">To be added.</param><param name="duration">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="QueryPosition"><MemberSignature Language="C#" Value="public bool QueryPosition (ref Gst.Format format, out long cur);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="format" Type="Gst.Format&amp;" RefType="ref" /><Parameter Name="cur" Type="System.Int64&amp;" RefType="out" /></Parameters><Docs><param name="format">To be added.</param><param name="cur">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Register">
<MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, uint rank, GLib.GType type);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.9.5.99</AssemblyVersion>
</AssemblyInfo>
<ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue>
<Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="rank" Type="System.UInt32" /><Parameter Name="type" Type="GLib.GType" /></Parameters>
<Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="rank">To be added.</param><param name="type">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs>
</Member><Member MemberName="ReleaseRequestPad">
</Member><Member MemberName="QueryDuration"><MemberSignature Language="C#" Value="public bool QueryDuration (ref Gst.Format format, out long duration);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="format" Type="Gst.Format&amp;" RefType="ref" /><Parameter Name="duration" Type="System.Int64&amp;" RefType="out" /></Parameters><Docs><param name="format">To be added.</param><param name="duration">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="QueryPosition"><MemberSignature Language="C#" Value="public bool QueryPosition (ref Gst.Format format, out long cur);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="format" Type="Gst.Format&amp;" RefType="ref" /><Parameter Name="cur" Type="System.Int64&amp;" RefType="out" /></Parameters><Docs><param name="format">To be added.</param><param name="cur">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="ReleaseRequestPad">
<MemberSignature Language="C#" Value="public void ReleaseRequestPad (Gst.Pad pad);" />
<MemberType>Method</MemberType>
<AssemblyInfo>

View file

@ -156,7 +156,7 @@
</AssemblyInfo>
<ReturnValue><ReturnType>System.UInt32</ReturnType></ReturnValue>
<Docs><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs>
</Member><Member MemberName="StaticPadTemplates">
</Member><Member MemberName="Register"><MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, uint rank, GLib.GType type);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="rank" Type="System.UInt32" /><Parameter Name="type" Type="GLib.GType" /></Parameters><Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="rank">To be added.</param><param name="type">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="StaticPadTemplates">
<MemberSignature Language="C#" Value="public Gst.StaticPadTemplate[] StaticPadTemplates { get; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>

View file

@ -177,7 +177,7 @@
<ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue>
<Parameters><Parameter Name="writer_id" Type="System.Int32&amp;" RefType="out" /><Parameter Name="writer_string" Type="System.String" /></Parameters>
<Docs><param name="writer_id">To be added.</param><param name="writer_string">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs>
</Member><Member MemberName="Register"><MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, string longdesc, GLib.GType gtype);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="longdesc" Type="System.String" /><Parameter Name="gtype" Type="GLib.GType" /></Parameters><Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="longdesc">To be added.</param><param name="gtype">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Resolver">
</Member><Member MemberName="Resolver">
<MemberSignature Language="C#" Value="public Gst.IndexResolver Resolver { set; }" />
<MemberType>Property</MemberType>
<AssemblyInfo>

View file

@ -19,7 +19,8 @@
<Member MemberName=".ctor">
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public IndexFactory (IntPtr raw);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
@ -70,6 +71,5 @@
<ReturnValue><ReturnType>Gst.Index</ReturnType></ReturnValue>
<Parameters><Parameter Name="name" Type="System.String" /></Parameters>
<Docs><param name="name">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs>
</Member>
</Members>
</Member><Member MemberName="Register"><MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, string longdesc, GLib.GType gtype);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="longdesc" Type="System.String" /><Parameter Name="gtype" Type="GLib.GType" /></Parameters><Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="longdesc">To be added.</param><param name="gtype">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member></Members>
</Type>

View file

@ -35,7 +35,7 @@
</AssemblyInfo>
<ReturnValue><ReturnType>System.UInt64</ReturnType></ReturnValue>
<Docs><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs>
</Member><Member MemberName="Peek"><MemberSignature Language="C#" Value="public byte[] Peek (long offset, uint size);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters><Parameter Name="offset" Type="System.Int64" /><Parameter Name="size" Type="System.UInt32" /></Parameters><Docs><param name="offset">To be added.</param><param name="size">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Register"><MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string[] extensions, Gst.Caps possible_caps);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="rank" Type="System.UInt32" /><Parameter Name="func" Type="Gst.TypeFindFunction" /><Parameter Name="extensions" Type="System.String[]" /><Parameter Name="possible_caps" Type="Gst.Caps" /></Parameters><Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="rank">To be added.</param><param name="func">To be added.</param><param name="extensions">To be added.</param><param name="possible_caps">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Suggest">
</Member><Member MemberName="Peek"><MemberSignature Language="C#" Value="public byte[] Peek (long offset, uint size);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters><Parameter Name="offset" Type="System.Int64" /><Parameter Name="size" Type="System.UInt32" /></Parameters><Docs><param name="offset">To be added.</param><param name="size">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Suggest">
<MemberSignature Language="C#" Value="public void Suggest (uint probability, Gst.Caps caps);" />
<MemberType>Method</MemberType>
<AssemblyInfo>

View file

@ -19,7 +19,8 @@
<Member MemberName=".ctor">
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected TypeFindFactory ();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
@ -76,6 +77,5 @@
</AssemblyInfo>
<ReturnValue><ReturnType>Gst.TypeFindFactory[]</ReturnType></ReturnValue>
<Docs><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs>
</Member>
</Members>
</Member><Member MemberName="Register"><MemberSignature Language="C#" Value="public static bool Register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string[] extensions, Gst.Caps possible_caps);" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>0.9.5.99</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="plugin" Type="Gst.Plugin" /><Parameter Name="name" Type="System.String" /><Parameter Name="rank" Type="System.UInt32" /><Parameter Name="func" Type="Gst.TypeFindFunction" /><Parameter Name="extensions" Type="System.String[]" /><Parameter Name="possible_caps" Type="Gst.Caps" /></Parameters><Docs><param name="plugin">To be added.</param><param name="name">To be added.</param><param name="rank">To be added.</param><param name="func">To be added.</param><param name="extensions">To be added.</param><param name="possible_caps">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member></Members>
</Type>

View file

@ -296,6 +296,7 @@
<attr path="/api/namespace/object[@name='Element']/method[@cname='gst_element_seek_simple']" name="name">Seek</attr>
<remove-attr path="/api/namespace/object[@name='Element']/field[@name='CurrentState']" name="hidden"/>
<move-node path="/api/namespace/object[@name='Element']/method[@cname='gst_element_make_from_uri']">/api/namespace/object[@name='ElementFactory']</move-node>
<move-node path="/api/namespace/object[@name='Element']/method[@cname='gst_element_register']">/api/namespace/object[@name='ElementFactory']</move-node>
<attr path="/api/namespace/struct[@name='ElementDetails']" name="internal">1</attr>

View file

@ -11,15 +11,3 @@ public bool IsWritable {
}
}
[DllImport ("gstreamersharpglue-0.10") ]
static extern void gstsharp_gst_index_factory_set_plugin (IntPtr factory, IntPtr plugin);
public static bool Register (Gst.Plugin plugin, string name, string longdesc, GLib.GType gtype) {
Gst.IndexFactory factory = new Gst.IndexFactory (name, longdesc, gtype);
gstsharp_gst_index_factory_set_plugin (factory.Handle, (plugin != null) ? plugin.Handle : IntPtr.Zero);
Gst.Registry.Default.AddFeature (factory);
return true;
}

View file

@ -0,0 +1,12 @@
[DllImport ("gstreamersharpglue-0.10") ]
static extern void gstsharp_gst_index_factory_set_plugin (IntPtr factory, IntPtr plugin);
public static bool Register (Gst.Plugin plugin, string name, string longdesc, GLib.GType gtype) {
Gst.IndexFactory factory = new Gst.IndexFactory (name, longdesc, gtype);
gstsharp_gst_index_factory_set_plugin (factory.Handle, (plugin != null) ? plugin.Handle : IntPtr.Zero);
Gst.Registry.Default.AddFeature (factory);
return true;
}

View file

@ -62,7 +62,7 @@ customs = \
Bus.custom \
Caps.custom \
Clock.custom \
ClockEntry.custom \
ClockEntry.custom \
Debug.custom \
Element.custom \
Message.custom \
@ -76,12 +76,14 @@ customs = \
MiniObject.custom \
IndexEntry.custom \
Index.custom \
IndexFactory.custom \
Registry.custom \
Query.custom \
Structure.custom \
Tag.custom \
TagList.custom \
TypeFind.custom
TypeFind.custom \
TypeFindFactory.custom
build_customs = $(addprefix $(srcdir)/, $(customs))

View file

@ -1,17 +1,3 @@
[DllImport ("gstreamer-0.10.dll") ]
static extern bool gst_type_find_register (IntPtr plugin, IntPtr name, uint rank, GstSharp.TypeFindFunctionNative func, IntPtr[] extensions, IntPtr possible_caps, IntPtr data, IntPtr data_notify);
public static bool Register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string[] extensions, Gst.Caps possible_caps) {
IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
IntPtr[] native_extensions = GLib.Marshaller.StringArrayToNullTermPointer (extensions);
GstSharp.TypeFindFunctionWrapper func_wrapper = new GstSharp.TypeFindFunctionWrapper (func);
bool raw_ret = gst_type_find_register (plugin == null ? IntPtr.Zero : plugin.Handle, native_name, rank, func_wrapper.NativeDelegate, native_extensions, possible_caps == null ? IntPtr.Zero : possible_caps.Handle, IntPtr.Zero, IntPtr.Zero);
bool ret = raw_ret;
GLib.Marshaller.Free (native_name);
GLib.Marshaller.Free (native_extensions);
return ret;
}
[DllImport ("gstreamer-0.10.dll") ]
static extern IntPtr gst_type_find_peek (IntPtr raw, long offset, uint size);

View file

@ -0,0 +1,14 @@
[DllImport ("gstreamer-0.10.dll") ]
static extern bool gst_type_find_register (IntPtr plugin, IntPtr name, uint rank, GstSharp.TypeFindFunctionNative func, IntPtr[] extensions, IntPtr possible_caps, IntPtr data, IntPtr data_notify);
public static bool Register (Gst.Plugin plugin, string name, uint rank, Gst.TypeFindFunction func, string[] extensions, Gst.Caps possible_caps) {
IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
IntPtr[] native_extensions = GLib.Marshaller.StringArrayToNullTermPointer (extensions);
GstSharp.TypeFindFunctionWrapper func_wrapper = new GstSharp.TypeFindFunctionWrapper (func);
bool raw_ret = gst_type_find_register (plugin == null ? IntPtr.Zero : plugin.Handle, native_name, rank, func_wrapper.NativeDelegate, native_extensions, possible_caps == null ? IntPtr.Zero : possible_caps.Handle, IntPtr.Zero, IntPtr.Zero);
bool ret = raw_ret;
GLib.Marshaller.Free (native_name);
GLib.Marshaller.Free (native_extensions);
return ret;
}