Commit bb1cc40a authored by Ruben Vermeersch's avatar Ruben Vermeersch Committed by Ruben Vermeersch

Completely revamp the Gegl# bindings, to make sure they work again.

2008-08-08  Ruben Vermeersch  <ruben@savanne.be>

	Completely revamp the Gegl# bindings, to make sure they work again.

	* AUTHORS:
	* ChangeLog:
	* INSTALL: Added.
	* Makefile.am:
	* README:
	* aclocal.m4: Added.
	* autogen.sh:
	* configure: Added.
	* configure.in:
	* gapi/Makefile.am: Removed.
	* gapi/custom/Global.custom: Removed.
	* gapi/custom/Node.custom: Removed.
	* gapi/metadata.gegl: Removed.
	* gapi/sources.gegl.in: Removed.
	* gegl-sharp-1.0.pc.in: Removed.
	* gegl/Makefile.am: Added.
	* gegl/custom/.Node.custom.swp: Added.
	* gegl/custom/Global.custom: Added.
	* gegl/custom/Node.custom: Added.
	* gegl/gegl-api.raw: Added.
	* gegl/gegl-sharp.dll.config.in: Added.
	* gegl/gegl-sharp.pc.in: Added.
	* gegl/generated/.Node.cs.swp: Added.
	* gegl/metadata: Added.
	* gegl/sources.in: Added.
	* lib/AssemblyInfo.cs.in: Removed.
	* lib/gegl-sharp.dll.config.in: Removed.
	* sample/Makefile.am: Added.
	* sample/TestGegl.cs: Added.
	* sample/old/GeglView.cs: Added.
	* sample/old/test.cs: Added.
	* sample/old/view-test.cs: Added.
	* sample/sample-out.png: Added.
	* test/GeglView.cs: Removed.
	* test/Makefile.am: Removed.
	* test/test.cs: Removed.
	* test/view-test.cs: Removed.

svn path=/trunk/; revision=2570
parent 033bbca6
Gabriel Burt <gabriel.burt@gmail.com>
Ruben Vermeersch <ruben@savanne.be>
This diff is collapsed.
/usr/share/automake-1.9/COPYING
\ No newline at end of file
2008-08-08 Ruben Vermeersch <ruben@savanne.be>
Completely revamp the Gegl# bindings, to make sure they work again.
* AUTHORS:
* ChangeLog:
* INSTALL: Added.
* Makefile.am:
* README:
* aclocal.m4: Added.
* autogen.sh:
* configure: Added.
* configure.in:
* gapi/Makefile.am: Removed.
* gapi/custom/Global.custom: Removed.
* gapi/custom/Node.custom: Removed.
* gapi/metadata.gegl: Removed.
* gapi/sources.gegl.in: Removed.
* gegl-sharp-1.0.pc.in: Removed.
* gegl/Makefile.am: Added.
* gegl/custom/.Node.custom.swp: Added.
* gegl/custom/Global.custom: Added.
* gegl/custom/Node.custom: Added.
* gegl/gegl-api.raw: Added.
* gegl/gegl-sharp.dll.config.in: Added.
* gegl/gegl-sharp.pc.in: Added.
* gegl/generated/.Node.cs.swp: Added.
* gegl/metadata: Added.
* gegl/sources.in: Added.
* lib/AssemblyInfo.cs.in: Removed.
* lib/gegl-sharp.dll.config.in: Removed.
* sample/Makefile.am: Added.
* sample/TestGegl.cs: Added.
* sample/old/GeglView.cs: Added.
* sample/old/test.cs: Added.
* sample/old/view-test.cs: Added.
* sample/sample-out.png: Added.
* test/GeglView.cs: Removed.
* test/Makefile.am: Removed.
* test/test.cs: Removed.
* test/view-test.cs: Removed.
2007-06-02 Mark Probst <mark.probst@gmail.com>
* test/Makefile.am: made view-test.cs depend on GeglView.cs
......
/usr/share/automake-1.9/INSTALL
\ No newline at end of file
SUBDIRS = gapi test
SUBDIRS = gegl sample #doc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gegl-sharp-1.0.pc
EXTRA_DIST = gegl-sharp-1.0.pc
DISTCLEANFILES = gegl-sharp-1.0.pc lib/AssemblyInfo.cs
install:
echo "No install process setup yet"
test:
echo "Testing.."
Gegl#, a C# binding for GEGL. Please send comments, bugs, and patches to
the GEGL list, gegl-developer@lists.xcf.berkeley.edu.
To build Gegl# type:
$ ./autogen.sh
$ make
Test contains two simple applications that demonstrate use of the binding.
$ cd test
$ make test.exe
$ ./test.exe
view-test.cs, GeglView.cs are known to not work yet:
$ make view.exe
$ ./view.exe
This diff is collapsed.
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
PKG_NAME="gegl-sharp"
(test -f $srcdir/configure.in) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
echo " top-level $PKG_NAME directory"
exit 1
}
which gnome-autogen.sh || {
echo "You need to install gnome-common from the GNOME SVN"
exit 1
}
REQUIRED_AUTOMAKE_VERSION=1.9 USE_GNOME2_MACROS=1 . gnome-autogen.sh
aclocal
automake -a
autoconf
./configure --enable-maintainer-mode $*
This diff is collapsed.
AC_INIT(README)
AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE(gegl-sharp-2.0, 0.1)
AM_INIT_AUTOMAKE(gegl-sharp, 0.0.19)
AM_MAINTAINER_MODE
API_VERSION=2.0.0.0
AC_SUBST(API_VERSION)
case "$host" in
*-*-mingw*|*-*-cygwin*)
platform_win32=yes
AC_DEFINE(PLATFORM_WIN32,1,[Platform is Win32])
CC="gcc -mno-cygwin -g"
HOST_CC="gcc"
;;
*)
platform_win32=no
;;
esac
MONO_REQUIRED_VERSION=1.0
AM_CONDITIONAL(PLATFORM_WIN32, test x$platform_win32 = xyes)
AC_MSG_CHECKING([whether we're compiling from CVS])
if test -f "$srcdir/.cvs_version" ; then
from_cvs=yes
else
if test -f "$srcdir/.svn" ; then
from_cvs=yes
AC_PROG_INSTALL
if test "x$enable_maintainer_mode" = "xyes"; then
DEBUG_FLAGS='-debug'
else
from_cvs=no
DEBUG_FLAGS=
AC_ARG_ENABLE(debug, [ --enable-debug Build debugger (.mdb) files for dlls],
DEBUG_FLAGS='-debug'
)
fi
fi
AC_MSG_RESULT($from_cvs)
AC_PATH_PROG(MONO, mono)
AC_PATH_PROG(MCS, mcs)
if test "x$MONO" = "x" ; then
AC_MSG_ERROR([Can't find "mono" in your PATH])
fi
if test "x$MCS" = "x" ; then
AC_MSG_ERROR([Can't find "mcs" in your PATH])
fi
AC_SUBST(PATH)
AC_SUBST(LD_LIBRARY_PATH)
CSFLAGS="$DEBUG_FLAGS"
AC_SUBST(CSFLAGS)
dnl Find pkg-config
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
if test "x$PKG_CONFIG" = "xno"; then
AC_MSG_ERROR([You need to install pkg-config])
AC_MSG_ERROR([You need to install pkg-config])
fi
dnl Find GTK
BUILD_GTK_CFLAGS=`$PKG_CONFIG --cflags gtk+-2.0`
BUILD_GTK_LIBS=`$PKG_CONFIG --libs gtk+-2.0`
AC_SUBST(BUILD_GTK_CFLAGS)
AC_SUBST(BUILD_GTK_LIBS)
GTK_REQUIRED_VERSION=2.0.0
MONO_REQUIRED_VERSION=0.95
PKG_CHECK_MODULES(BASE_DEPENDENCIES, gtk+-2.0 >= $GTK_REQUIRED_VERSION gmodule-2.0 >= $GTK_REQUIRED_VERSION gegl >= 0.0.3)
MONO_REQUIRED_VERSION=1.0
PKG_CHECK_MODULES(MONO_DEPENDENCY, mono >= $MONO_REQUIRED_VERSION, has_mono=true, has_mono=false)
AC_PATH_PROG(AL, al, no)
if test "x$AL" = "xno" ; then
AC_MSG_ERROR([No al tool found. You need to install either the mono or .Net SDK.])
fi
if test "x$has_mono" = "xtrue"; then
GENERATED_SOURCES=generated/*.cs
CUSTOM_SOURCES=custom/*.custom
AC_PATH_PROG(RUNTIME, mono, no)
# If mono is found, it's in the path. Require it to be in the path at runtime as well
if test "x$RUNTIME" != "no" ; then
RUNTIME=mono
fi
AC_PATH_PROG(CSC, mcs, no)
if test `uname -s` = "Darwin"; then
LIB_PREFIX=
......@@ -62,6 +63,10 @@ else
fi
else
AC_PATH_PROG(CSC, csc.exe, no)
GENERATED_SOURCES=generated\\\\*.cs
CUSTOM_SOURCES=custom\\\\*.custom
enable_dotnet=yes
if test x$CSC = "xno"; then
AC_MSG_ERROR([You need to install either mono or .Net])
else
......@@ -71,81 +76,52 @@ LIB_SUFFIX=.dylib
fi
fi
AC_SUBST(LIB_PREFIX)
AC_SUBST(LIB_SUFFIX)
AC_SUBST(BASE_DEPENDENCIES_CFLAGS)
AC_SUBST(BASE_DEPENDENCIES_LIBS)
dnl Find Gtk#
PKG_CHECK_MODULES(GTK_SHARP, gtk-sharp-2.0 >= 1.9.0)
AC_SUBST(GTK_SHARP_CFLAGS)
AC_SUBST(GTK_SHARP_LIBS)
dnl Find Monodoc
AC_ARG_ENABLE(docs, AC_HELP_STRING([--disable-docs],
[Do not build documentation]), with_docs=no, with_docs=yes)
if test "x$with_docs" = "xyes"; then
AC_PATH_PROG(MONODOCER, monodocer, no)
if test "x$MONODOCER" = "xno"; then
AC_MSG_ERROR([You need to install monodoc, or pass --disable-docs to configure to skip documentation installation])
fi
AC_PATH_PROG(MDASSEMBLER, mdassembler, no)
if test "x$MDASSEMBLER" = "xno"; then
AC_MSG_ERROR([You need to install mdassembler, or pass --disable-docs to configure to skip documentation installation])
fi
DOCDIR=`$PKG_CONFIG monodoc --variable=sourcesdir`
AC_SUBST(DOCDIR)
AM_CONDITIONAL(BUILD_DOCS, true)
else
AC_MSG_NOTICE([not building gegl-sharp API documentation])
AM_CONDITIONAL(BUILD_DOCS, false)
CS="C#"
if test "x$CSC" = "xno" ; then
AC_MSG_ERROR([No $CS compiler found])
fi
dnl Find GAPI
PKG_CHECK_MODULES(GAPI, gapi-2.0 >= 1.9.0)
AC_PATH_PROG(GACUTIL, gacutil, no)
if test "x$GACUTIL" = "xno" ; then
AC_MSG_ERROR([No gacutil tool found])
fi
winbuild=no
case "$host" in
*-*-mingw*|*-*-cygwin*)
winbuild=yes
;;
esac
AM_CONDITIONAL(WINBUILD, test x$winbuild = xyes)
AC_SUBST(RUNTIME)
AC_SUBST(CSC)
AC_SUBST(LIB_PREFIX)
AC_SUBST(LIB_SUFFIX)
AC_SUBST(GENERATED_SOURCES)
AC_SUBST(CUSTOM_SOURCES)
GLIB_SHARP_REQ_VERSION=2.12.1
PKG_CHECK_MODULES(GLIB_SHARP, glib-sharp-2.0 >= $GLIB_SHARP_REQ_VERSION)
AC_SUBST(GLIB_SHARP_LIBS)
AC_SUBST(GLIB_SHARP_CFLAGS)
PKG_CHECK_MODULES(GAPI, gapi-2.0 >= $GLIB_SHARP_REQ_VERSION)
AC_PATH_PROG(GAPI_PARSER, gapi2-parser, no)
AC_SUBST(GAPI_PARSER)
AC_PATH_PROG(GAPI_CODEGEN, gapi2-codegen, no)
AC_SUBST(GAPI_CODEGEN)
AC_PATH_PROG(GAPI_FIXUP, gapi2-fixup, no)
AC_SUBST(GAPI_FIXUP)
AC_ARG_WITH([gegl-headers], [AS_HELP_STRING([--gegl-headers], [path to directory containaing gegl.h (relative to gapi directory, default is ../../../gegl/)])],
[GEGL_HEADERS=$withval],
[GEGL_HEADERS=../../../gegl])
AC_SUBST(GEGL_HEADERS)
#export GEGL_PATH=${GEGL_PATH-:../../gegl/}
AC_SUBST(GACUTIL)
AC_SUBST(CFLAGS)
AC_OUTPUT([
Makefile
gapi/Makefile
gapi/sources.gegl
test/Makefile
docs/Makefile
lib/gegl-sharp.dll.config
lib/AssemblyInfo.cs
gegl-sharp-1.0.pc
gegl/Makefile
gegl/gegl-sharp.dll.config
gegl/gegl-sharp.pc
gegl/sources
sample/Makefile
])
dnl Print a summary of features enabled/disabled:
AC_MSG_RESULT([
Building gegl-sharp with prefix=$prefix
echo "---"
echo "Configuration summary"
echo ""
echo " * Installation prefix = $prefix"
echo " * $CS compiler: $CSC $CSFLAGS"
echo ""
echo "---"
Configuration options:
GEGL headers: $GEGL_HEADERS
]);
DOC_UPDATER = @MONODOCER@ -delete
DOC_ASSEMBLER = @MDASSEMBLER@ --out gegl-sharp-docs --ecma
ASSEMBLIES = ../lib/gegl-sharp.dll
ASSEMBLIES_BUILD = $(foreach asm,$(ASSEMBLIES),$(addprefix -assembly:,$(asm)))
if BUILD_DOCS
all: MonodocNodeConfig.exe
MonodocNodeConfig.exe: MonodocNodeConfig.cs
mcs -out:$@ -r:System.Xml $<
monodocdir = $(DESTDIR)$(DOCDIR)
monodoc_DATA = \
gegl-sharp-docs.zip \
gegl-sharp-docs.tree \
gegl-sharp-docs.source
update-docs: $(ASSEMBLIES)
$(DOC_UPDATER) $(ASSEMBLIES_BUILD) -path:en
update-cvs:
cd en/; \
for i in `find . | grep \.remove$$`; do \
name=`echo $$i | sed -e 's/.remove//g'`; \
cvs remove $$name && rm $$i; \
done; \
for i in `find .`; do \
if [ -d $$i ]; then \
if [ ! "x`basename $$i`" = "xCVS" ]; then \
cvs add $$i/*.xml; \
fi \
fi \
done; \
cd ..;
update-html:
if [ -d gegl-sharp ]; then \
rm -rf gegl-sharp; \
fi; \
mkdir gegl-sharp; \
monodocs2html --source en --dest gegl-sharp;
gegl-sharp-docs.zip gegl-sharp-docs.tree: $(srcdir)/en/*/*.xml $(srcdir)/en/*.xml
$(DOC_ASSEMBLER) $(srcdir)/en
install-data-hook:
$(MONO) $(top_builddir)/docs/MonodocNodeConfig.exe --insert "Gegl#" classlib-gegl-sharp $(DOCDIR)/../monodoc.xml
uninstall-hook:
$(MONO) $(top_builddir)/docs/MonodocNodeConfig.exe --remove classlib-gegl-sharp $(DOCDIR)/../monodoc.xml
endif
EXTRA_DIST = \
$(srcdir)/en/*.xml \
$(srcdir)/en/*/*.xml \
gegl-sharp-docs.source \
MonodocNodeConfig.cs
DISTCLEANFILES = \
gegl-sharp-docs.zip \
gegl-sharp-docs.tree
MAINTAINERCLEANFILES = \
Makefile.in
CLEANFILES = \
MonodocNodeConfig.exe
/***************************************************************************
* MonodocNodeConfig.cs
*
* Copyright (C) 2005 Novell
* Written by Aaron Bockover (aaron@aaronbock.net)
****************************************************************************/
/* THIS FILE IS LICENSED UNDER THE MIT LICENSE AS OUTLINED IMMEDIATELY BELOW:
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
using System;
using System.Xml;
public static class MonodocNodeConfig
{
private static XmlDocument document;
public static int Main(string [] args)
{
bool insert_mode = false;
string xml_file = null;
string label = null;
string name = null;
switch(args[0]) {
case "--insert":
if(args.Length != 4) {
PrintUsage();
return 0;
}
insert_mode = true;
label = args[1];
name = args[2];
xml_file = args[3];
break;
case "--remove":
if(args.Length != 3) {
PrintUsage();
return 0;
}
insert_mode = false;
name = args[1];
xml_file = args[2];
break;
default:
PrintUsage();
return 0;
}
document = new XmlDocument();
document.Load(xml_file);
RemoveNode(name);
if(insert_mode) {
InsertNode(label, name);
}
try {
document.Save(xml_file);
} catch {
Console.WriteLine("Couldn\'t insert node!");
return 1;
}
return 0;
}
private static void PrintUsage()
{
Console.WriteLine("Usage is:");
Console.WriteLine("MonodocNodeConfig.exe --insert|--remove [options] <monodoc XML file>\n");
Console.WriteLine("Where [options] for --insert must be:");
Console.WriteLine(" <label> <name>\n");
Console.WriteLine("Where [options] for --remove must be:");
Console.WriteLine(" <name>\n");
}
private static void RemoveNode(string name)
{
foreach(XmlNode node in document.DocumentElement) {
if(node.Attributes["name"].Value != "various") {
continue;
}
foreach(XmlNode child in node) {
if(child.Attributes["name"].Value == name) {
node.RemoveChild(child);
return;
}
}
}
}
private static void InsertNode(string label, string name)
{
foreach(XmlNode node in document.DocumentElement) {
if(node.Attributes["name"].Value != "various") {
continue;
}
XmlNode insert_node = document.CreateNode(XmlNodeType.Element, "node", "");
XmlAttribute label_attr = document.CreateAttribute("label");
label_attr.Value = label;
insert_node.Attributes.Append(label_attr);
XmlAttribute name_attr = document.CreateAttribute("name");
name_attr.Value = name;
insert_node.Attributes.Append(name_attr);
node.AppendChild(insert_node);
return;
}
}
}
<Namespace Name="Gegl">
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Namespace>
<Type Name="BlitFlags" FullName="Gegl.BlitFlags">
<TypeSignature Language="C#" Value="public enum BlitFlags" />
<AssemblyInfo>
<AssemblyName>gegl-sharp</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Attributes>
<Attribute>
<AttributeName>System.Flags</AttributeName>
</Attribute>
</Attributes>
<Members>
<Member MemberName="Cache">
<MemberSignature Language="C#" Value="Cache" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>Gegl.BlitFlags</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
</Docs>
</Member>
<Member MemberName="Default">
<MemberSignature Language="C#" Value="Default" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>Gegl.BlitFlags</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
</Docs>
</Member>
<Member MemberName="Dirty">
<MemberSignature Language="C#" Value="Dirty" />
<MemberType>Field</MemberType>
<ReturnValue>
<ReturnType>Gegl.BlitFlags</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
</Docs>
</Member>
</Members>
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Type>
<Type Name="Color" FullName="Gegl.Color">
<TypeSignature Language="C#" Value="public class Color : GLib.Object" />
<AssemblyInfo>
<AssemblyName>gegl-sharp</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>GLib.Object</BaseTypeName>
</Base>
<Interfaces />
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected Color (GLib.GType gtype);" />
<MemberType>Constructor</MemberType>
<Attributes>
<Attribute>
<AttributeName>System.Obsolete</AttributeName>
</Attribute>
</Attributes>
<Parameters>
<Parameter Name="gtype" Type="GLib.GType" />
</Parameters>
<Docs>
<param name="gtype">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Color (IntPtr raw);" />
<MemberType>Constructor</MemberType>
<Parameters>
<Parameter Name="raw" Type="System.IntPtr" />
</Parameters>
<Docs>
<param name="raw">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Color (string str1ng);" />
<MemberType>Constructor</MemberType>
<Parameters>
<Parameter Name="str1ng" Type="System.String" />
</Parameters>
<Docs>
<param name="str1ng">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetRgba">
<MemberSignature Language="C#" Value="public void GetRgba (out float r, out float g, out float b, out float a);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="r" Type="System.Single&amp;" RefType="out" />
<Parameter Name="g" Type="System.Single&amp;" RefType="out" />
<Parameter Name="b" Type="System.Single&amp;" RefType="out" />
<Parameter Name="a" Type="System.Single&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="r">To be added.</param>
<param name="g">To be added.</param>
<param name="b">To be added.</param>
<param name="a">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GType">
<MemberSignature Language="C#" Value="public static GLib.GType GType { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>GLib.GType</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetRgba">
<MemberSignature Language="C#" Value="public void SetRgba (float r, float g, float b, float a);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="r" Type="System.Single" />
<Parameter Name="g" Type="System.Single" />
<Parameter Name="b" Type="System.Single" />
<Parameter Name="a" Type="System.Single" />
</Parameters>
<Docs>
<param name="r">To be added.</param>
<param name="g">To be added.</param>
<param name="b">To be added.</param>
<param name="a">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Type>
<Type Name="Curve" FullName="Gegl.Curve">
<TypeSignature Language="C#" Value="public class Curve : GLib.Object" />
<AssemblyInfo>
<AssemblyName>gegl-sharp</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>GLib.Object</BaseTypeName>
</Base>
<Interfaces />