Add GStreamer support

svn path=/trunk/gtk-sharp/; revision=8726
This commit is contained in:
Alp Toker 2002-11-01 05:01:22 +00:00
parent 8a70b31f28
commit e06e2ba8dd
10 changed files with 3157 additions and 6 deletions

View File

@ -1,3 +1,19 @@
2002-11-01 Alp Toker <alp@atoker.com>
* configure.in : Add GStreamer support
* api/Makefile.in : ditto
* api/gst-api.xml : ditto
* sources/gtk-sharp.sources: ditto
* gst/Makefile.in : ditto
* gst/Application.cs : Gst initialization
* sample/GstPlayer.cs : An example which uses the Gst binding
* generator/Parameters.cs : Add 'fixed' keyword to name mangler
* generator/StructBase.cs : ditto
* generator/Parameters.cs : Fix Initialize() for set accessors
* generator/Ctor.cs : ditto
* generator/Method.cs : ditto
* generator/SymbolTable.cs : Add gint64, guint64 to simple types
2002-10-29 Mike Kestner <mkestner@speakeasy.net>
* generator/Signal.cs : Fix namespacing of Args.

View File

@ -9,6 +9,7 @@ APIS = \
art-api.xml \
gnome-api.xml \
gda-api.xml \
gst-api.xml \
gnomedb-api.xml
RUNTIME=mono

3115
api/gst-api.xml Normal file

File diff suppressed because it is too large Load Diff

View File

@ -116,6 +116,7 @@ gconf/Makefile
gconf/GConf/Makefile
gconf/GConf.PropertyEditors/Makefile
gconf/tools/Makefile
gst/Makefile
sample/Makefile
])

View File

@ -134,7 +134,7 @@ namespace GtkSharp.Generation {
sw.WriteLine("\t\t{");
if (parms != null)
parms.Initialize(sw, false, "");
parms.Initialize(sw, false, false, "");
sw.Write("\t\t\treturn ");
if (container_type is StructBase)
@ -147,7 +147,7 @@ namespace GtkSharp.Generation {
sw.WriteLine("\t\t{");
if (parms != null)
parms.Initialize(sw, false, "");
parms.Initialize(sw, false, false, "");
sw.WriteLine("\t\t\t{0} = {1}{2};", container_type.AssignToName, cname, call);
if (parms != null)
parms.HandleException (sw, "");

View File

@ -382,7 +382,7 @@ namespace GtkSharp.Generation {
{
sw.WriteLine(" {");
if (parms != null)
parms.Initialize(sw, is_get, indent);
parms.Initialize(sw, is_get, is_set, indent);
sw.Write(indent + "\t\t\t");
if (m_ret == "void") {

View File

@ -301,7 +301,7 @@ namespace GtkSharp.Generation {
signature = signature.Remove (signature.Length - 2, 2);
}
public void Initialize (StreamWriter sw, bool is_get, string indent)
public void Initialize (StreamWriter sw, bool is_get, bool is_set, string indent)
{
string name = "";
@ -314,7 +314,13 @@ namespace GtkSharp.Generation {
string c_type = p_elem.GetAttribute ("type");
string type = SymbolTable.GetCSType(c_type);
name = MangleName(p_elem.GetAttribute("name"));
if (is_set) {
name = "value";
} else {
name = MangleName(p_elem.GetAttribute("name"));
}
if (is_get) {
sw.WriteLine (indent + "\t\t\t" + type + " " + name + ";");
}
@ -340,7 +346,12 @@ namespace GtkSharp.Generation {
string c_type = p_elem.GetAttribute ("type");
string type = SymbolTable.GetCSType(c_type);
name = MangleName(p_elem.GetAttribute("name"));
if (is_set) {
name = "value";
} else {
name = MangleName(p_elem.GetAttribute("name"));
}
if (SymbolTable.IsCallback (c_type)) {
type = type.Replace(".", "Sharp.") + "Wrapper";
@ -488,6 +499,8 @@ namespace GtkSharp.Generation {
return "in_param";
case "out":
return "out_param";
case "fixed":
return "mfixed";
default:
break;
}

View File

@ -197,6 +197,8 @@ namespace GtkSharp.Generation {
return "reference";
} else if (name == "params") {
return "parms";
} else if (name == "fixed") {
return "mfixed";
} else if (name == "in") {
return "inn";
} else {

View File

@ -27,6 +27,7 @@ namespace GtkSharp.Generation {
simple_types.Add ("gshort", "short");
simple_types.Add ("gushort", "ushort");
simple_types.Add ("guint32", "uint");
simple_types.Add ("guint64", "ulong");
simple_types.Add ("const-gchar", "string");
simple_types.Add ("const-char", "string");
simple_types.Add ("gchar", "string");
@ -37,6 +38,7 @@ namespace GtkSharp.Generation {
simple_types.Add ("guint8", "byte");
simple_types.Add ("gint16", "short");
simple_types.Add ("gint32", "int");
simple_types.Add ("gint64", "long");
simple_types.Add ("guint16", "ushort");
simple_types.Add ("guint1", "bool");
simple_types.Add ("gpointer", "System.IntPtr");

View File

@ -11,3 +11,4 @@ libglade-2.0.0/glade Glade glade-2.0
libart_lgpl-2.3.10 Art art_lgpl
libgda-0.8.193/libgda Gda gda-2
libgnomedb-0.8.193/libgnomedb GnomeDb gnomedb-2
gstreamer-0.4.1/gst Gst gstreamer-0.4.1