Commit 79abab2e authored by Johan Dahlin's avatar Johan Dahlin Committed by Johan Dahlin

Update and remove old cruft.

2008-08-29  Johan Dahlin  <johan@gnome.org>

    * README:
    * TODO:
    * examples/gdk-pixbuf.gidl:
    * libffi.pc.in:
    Update and remove old cruft.


svn path=/trunk/; revision=519
parent b621a5b9
2008-08-29 Johan Dahlin <johan@gnome.org>
* README:
* TODO:
* examples/gdk-pixbuf.gidl:
* libffi.pc.in:
Update and remove old cruft.
2008-08-29 Johan Dahlin <johan@gnome.org>
* Makefile.am:
......
This is a very first prototype of an introspection framework for GObject.
GObject Introspection
The metadata format is described in metadata-format.txt, the XML IDL format
follows the DTD in gidl.dtd. Look at the files in tests/ for testcases,
and at examples/ for bigger examples.
GIR & Typelib formats
=====================
FIXME
The code in src/ currently produces four things:
- g-idl-compile, a metadata compiler. It converts one or more IDL files
into one or more metadata blobs. It can either emit the raw metadata
blob (--raw) or C code (--code).
- libirepository, the repository API.
- g-idl-generate, an IDL generator, using the repository API. It generates
IDL files from binary metadata which can be in a shared object, or a raw
metadata blob (--raw).
- a function to invoke functions, given the function info object. The
implementation is based on libffi (a recent snapshot of libffi can
be found at http://spindazzle.org/libffi-green.tar.gz). After the
autoconfiscation, configure expects to find a ffi.pc file. The
ffi.pc.in file in this directory may be helpful in construction
such a file.
Tools
=====
There are a number of IDL test files in test/, and a script to do
roundtrip tests (IDL -> binary -> IDL).
Three tools are shipped with GObject Introspection:
- g-ir-compile, a typelib compiler. It converts one or more GIR files
into one or more typelib blobs. It can either emit the raw typelib
blob or C code (--code).
- g-ir-generate, an GIR generator, using the repository API. It generates
GIR files from binary typelib which can be in a shared object, or a raw
typelib blob.
- g-ir-scanner, a tool which generates GIR XML files by parsing headers
and introspecting GObject based libraries.
API library
===========
There's also a C based library called libgirepository which provides
an API to access to the typelib metadata. It also contains an API to
invoke functions, given the function info object. The implementation is
based on libffi (3.0 or higher of libffi required, can be found at
http://sourceware.org/libffi).
There are a number of GIR test files in tests/, and a script to do
roundtrip tests (GIR -> typelib -> GIR).
Helping out
===========
The introspection framework needs a lot more work, see TODO.
XML format
GIR XML format
----------
- Document the format
- Document the format better
- Add attributes to connect signals to their default handlers
and wrappers to their vfuncs
- Add a way to specify default values
......@@ -38,16 +38,12 @@ Scanner
------
- Property.readable/writable, GLibProperty.blurb/nick
- Constants
- Annotations in external files
General
-------
- More tests
- Check how the format scales to something the size of GTK+
- Annotations in external files which is not source code
C API
-------
- type SYMBOL is kind of inconvenient; would be nicer to go straight to boxed, etc.
- type SYMBOL is kind of inconvenient; would be nicer to go straight to
boxed, etc.
- no way to construct a boxed type
- no way to access struct fields (should have a way to go field -> GArgument)
- types namespaced GI, functions namespaced g_
......
<?xml version="1.0"?>
<api version="1.0">
<namespace name="GdkPixbuf">
<enum name="GdkPixbufAlphaMode" type-name="GdkPixbufAlphaMode" get-type="gdk_pixbuf_alpha_mode_get_type">
<member name="GDK_PIXBUF_ALPHA_BILEVEL" value="0" />
<member name="GDK_PIXBUF_ALPHA_FULL" value="1" />
</enum>
<enum name="GdkColorspace" type-name="GdkColorspace" get-type="gdk_colorspace_get_type">
<member name="GDK_COLORSPACE_RGB" value="0" />
</enum>
<callback name="GdkPixbufDestroyNotify">
<return-type type="void" />
<parameters>
<parameter name="pixels" type="void*" transfer="full" direction="in" />
<parameter name="data" type="void*" transfer="none" direction="in" />
</parameters>
</callback>
<callback name="GdkPixbufSaveFunc">
<return-type type="gboolean" />
<parameters>
<parameter name="buf" type="guint8[length=1]" transfer="none" direction="in" />
<parameter name="count" type="gint" direction="in" />
<parameter name="error" type="GError*" transfer="full" direction="out" null-ok="1" />
<parameter name="data" type="void*" transfer="none" direction="in" />
</parameters>
</callback>
<enum name="GdkPixbufErrorCodes" type-name="GdkPixbufError" get-type="gdk_pixbuf_error_get_type">
<member name="GDK_PIXBUF_ERROR_CORRUPT_IMAGE" value="0" />
<member name="GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY" value="1" />
<member name="GDK_PIXBUF_ERROR_BAD_OPTION" value="2" />
<member name="GDK_PIXBUF_ERROR_UNKNOWN_TYPE" value="3" />
<member name="GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION" value="4" />
<member name="GDK_PIXBUF_ERROR_FAILED" value="5" />
</enum>
<enum name="GdkInterpType" type-name="GdkInterpType" get-type="gdk_interp_type_get_type">
<member name="GDK_INTERP_NEAREST" value="0" />
<member name="GDK_INTERP_TILES" value="1" />
<member name="GDK_INTERP_BILINEAR" value="2" />
<member name="GDK_INTERP_HYPER" value="3" />
</enum>
<enum name="GdkPixbufRotation" type-name="GdkPixbufRotation" get-type="gdk_pixbuf_rotation_get_type">
<member name="GDK_PIXBUF_ROTATE_NONE" value="0" />
<member name="GDK_PIXBUF_ROTATE_COUNTERCLOCKWISE" value="90" />
<member name="GDK_PIXBUF_ROTATE_UPSIDEDOWN" value="180" />
<member name="GDK_PIXBUF_ROTATE_CLOCKWISE" value="270" />
</enum>
<errordomain name="GdkPixbufError" get-quark="gdk_pixbuf_error_quark" codes="GdkPixbufErrorCodes" />
<object name="GdkPixbuf" parent="GLib.GObject" type-name="GdkPixbuf" get-type="gdk_pixbuf_get_type">
<constructor name="new" symbol="gdk_pixbuf_new">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="colorspace" type="GdkColorspace" direction="in" />
<parameter name="has_alpha" type="gboolean" direction="in" />
<parameter name="bits_per_sample" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
</parameters>
</constructor>
<constructor name="copy" symbol="gdk_pixbuf_copy">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
</parameters>
</constructor>
<constructor name="new_subpixbuf" symbol="gdk_pixbuf_new_subpixbuf">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="src_pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="src_x" type="gint" direction="in" />
<parameter name="src_y" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
</parameters>
</constructor>
<constructor name="new_from_file" symbol="gdk_pixbuf_new_from_file">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="filename" type="guint8*" transfer="none" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<constructor name="new_from_file_at_size" symbol="gdk_pixbuf_new_from_file_at_size">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="filename" type="filename" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<constructor name="new_from_file_at_scale" symbol="gdk_pixbuf_new_from_file_at_scale">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="filename" type="filename" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="preserve_aspect_ratio" type="gboolean" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<constructor name="new_from_data" symbol="gdk_pixbuf_new_from_data">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="data" type="void*" transfer="full" direction="in" />
<parameter name="colorspace" type="GdkColorspace" direction="in" />
<parameter name="has_alpha" type="gboolean" direction="in" />
<parameter name="bits_per_sample" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="rowstride" type="gint" direction="in" />
<parameter name="destroy_fn" type="GdkPixbufDestroyNotify" direction="in" null-ok="1" />
<parameter name="destroy_fn_data" type="void*" transfer="none" direction="in" null-ok="1" />
</parameters>
</constructor>
<constructor name="new_from_xpm_data" symbol="gdk_pixbuf_new_from_xpm_data">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="data" type="guint8*[]" transfer="none" direction="in" />
</parameters>
</constructor>
<constructor name="new_from_inline" symbol="gdk_pixbuf_new_from_inline">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="data_length" type="gint" direction="in" />
<parameter name="data" type="guint8[length=0]" transfer="none" direction="in" />
<parameter name="copy_pixels" type="gboolean" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<method name="fill" symbol="gdk_pixbuf_fill">
<return-type type="void" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="pixel" type="guint32" direction="in" />
</parameters>
</method>
<method name="savev" symbol="gdk_pixbuf_savev">
<return-type type="gboolean" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="filename" type="filename" transfer="none" direction="in" />
<parameter name="type" type="guint8*" transfer="none" direction="in" />
<parameter name="option_keys" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="option_values" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</method>
<method name="save_to_callbackv" symbol="gdk_pixbuf_save_to_callbackv">
<return-type type="gboolean" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="save_func" type="GdkPixbufSaveFunc" direction="in" />
<parameter name="user_data" type="void*" transfer="full" direction="in" />
<parameter name="type" type="guint8*" transfer="none" direction="in" />
<parameter name="option_keys" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="option_values" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</method>
<method name="save_to_bufferv" symbol="gdk_pixbuf_save_to_bufferv">
<return-type type="gboolean" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="buffer" type="guint8[length=2]" transfer="full" direction="out" />
<parameter name="buffer_size" type="gint" direction="out" />
<parameter name="type" type="guint8*" transfer="none" direction="in" />
<parameter name="option_keys" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="option_values" type="guint8*[zero-terminated=1]" transfer="none" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</method>
<method name="add_alpha" symbol="gdk_pixbuf_add_alpha">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="substitute_color" type="gboolean" direction="in" />
<parameter name="r" type="guint8" direction="in" />
<parameter name="g" type="guint8" direction="in" />
<parameter name="b" type="guint8" direction="in" />
</parameters>
</method>
<method name="copy_area" symbol="gdk_pixbuf_copy_area">
<return-type type="void" />
<parameters>
<parameter name="src_pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="src_x" type="gint" direction="in" />
<parameter name="src_y" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="dest_pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_x" type="gint" direction="in" />
<parameter name="dest_y" type="gint" direction="in" />
</parameters>
</method>
<method name="saturate_and_pixelate" symbol="gdk_pixbuf_saturate_and_pixelate">
<return-type type="void" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="saturation" type="gfloat" direction="in" />
<parameter name="pixelate" type="gboolean" direction="in" />
</parameters>
</method>
<method name="get_option" symbol="gdk_pixbuf_get_option">
<return-type type="guint8*" transfer="none" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="key" type="guint8*" transfer="none" direction="in" />
</parameters>
</method>
<method name="scale" symbol="gdk_pixbuf_scale">
<return-type type="void" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_x" type="gint" direction="in" />
<parameter name="dest_y" type="gint" direction="in" />
<parameter name="dest_width" type="gint" direction="in" />
<parameter name="dest_height" type="gint" direction="in" />
<parameter name="offset_x" type="gdouble" direction="in" />
<parameter name="offset_y" type="gdouble" direction="in" />
<parameter name="scale_x" type="gdouble" direction="in" />
<parameter name="scale_y" type="gdouble" direction="in" />
<parameter name="interp_type" type="GdkInterpType" direction="in" />
</parameters>
</method>
<method name="composite" symbol="gdk_pixbuf_composite">
<return-type type="void" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_x" type="gint" direction="in" />
<parameter name="dest_y" type="gint" direction="in" />
<parameter name="dest_width" type="gint" direction="in" />
<parameter name="dest_height" type="gint" direction="in" />
<parameter name="offset_x" type="gdouble" direction="in" />
<parameter name="offset_y" type="gdouble" direction="in" />
<parameter name="scale_x" type="gdouble" direction="in" />
<parameter name="scale_y" type="gdouble" direction="in" />
<parameter name="interp_type" type="GdkInterpType" direction="in" />
<parameter name="overall_alpha" type="gint" direction="in" />
</parameters>
</method>
<method name="composite_color" symbol="gdk_pixbuf_composite_color">
<return-type type="void" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_x" type="gint" direction="in" />
<parameter name="dest_y" type="gint" direction="in" />
<parameter name="dest_width" type="gint" direction="in" />
<parameter name="dest_height" type="gint" direction="in" />
<parameter name="offset_x" type="gdouble" direction="in" />
<parameter name="offset_y" type="gdouble" direction="in" />
<parameter name="scale_x" type="gdouble" direction="in" />
<parameter name="scale_y" type="gdouble" direction="in" />
<parameter name="interp_type" type="GdkInterpType" direction="in" />
<parameter name="overall_alpha" type="gint" direction="in" />
<parameter name="check_x" type="gint" direction="in" />
<parameter name="check_y" type="gint" direction="in" />
<parameter name="check_size" type="gint" direction="in" />
<parameter name="color1" type="guint32" direction="in" />
<parameter name="color2" type="guint32" direction="in" />
</parameters>
</method>
<method name="scale_simple" symbol="gdk_pixbuf_scale_simple">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_width" type="gint" direction="in" />
<parameter name="dest_height" type="gint" direction="in" />
<parameter name="interp_type" type="GdkInterpType" direction="in" />
</parameters>
</method>
<method name="composite_color_simple" symbol="gdk_pixbuf_composite_color_simple">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="dest_width" type="gint" direction="in" />
<parameter name="dest_height" type="gint" direction="in" />
<parameter name="interp_type" type="GdkInterpType" direction="in" />
<parameter name="overall_alpha" type="gint" direction="in" />
<parameter name="check_size" type="gint" direction="in" />
<parameter name="color1" type="guint32" direction="in" />
<parameter name="color2" type="guint32" direction="in" />
</parameters>
</method>
<method name="rotate_simple" symbol="gdk_pixbuf_rotate_simple">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="angle" type="GdkPixbufRotation" direction="in" />
</parameters>
</method>
<method name="flip" symbol="gdk_pixbuf_flip">
<return-type type="GdkPixbuf*" transfer="full" />
<parameters>
<parameter name="src" type="GdkPixbuf*" transfer="none" direction="in" />
<parameter name="horizontal" type="gboolean" direction="in" />
</parameters>
</method>
<property name="n-channels" readable="1" writable="1" construct-only="1" type="gint" />
<property name="colorspace" readable="1" writable="1" construct-only="1" type="GdkColorspace" />
<property name="has-alpha" readable="1" writable="1" construct-only="1" type="gboolean" />
<property name="bits-per-sample" readable="1" writable="1" construct-only="1" type="gint" />
<property name="width" readable="1" writable="1" construct-only="1" type="gint" />
<property name="height" readable="1" writable="1" construct-only="1" type="gint" />
<property name="rowstride" readable="1" writable="1" construct-only="1" type="gint" />
<property name="pixels" readable="1" writable="1" construct-only="1" type="void*" />
</object>
<object name="GdkPixbufAnimation" parent="GLib.GObject" type-name="GdkPixbufAnimation" get-type="gdk_pixbuf_animation_get_type">
<constructor name="new_from_file" symbol="gdk_pixbuf_animation_new_from_file">
<return-type type="GdkPixbufAnimation*" transfer="full" />
<parameters>
<parameter name="filename" type="filename" transfer="none" direction="in" />
<parameter name="error" type="GError<GdkPixbufError,GLib.GFileError>*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<constructor name="non_anim_new" symbol="gdk_pixbuf_non_anim_new">
<return-type type="GdkPixbufAnimation*" transfer="full" />
<parameters>
<parameter name="pixbuf" type="GdkPixbuf*" transfer="none" direction="in" />
</parameters>
</constructor>
<method name="get_width" symbol="gdk_pixbuf_animation_get_width">
<return-type type="gint" />
<parameters>
<parameter name="animation" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_height" symbol="gdk_pixbuf_animation_get_height">
<return-type type="gint" />
<parameters>
<parameter name="animation" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</method>
<method name="is_static_image" symbol="gdk_pixbuf_animation_is_static_image">
<return-type type="gboolean" />
<parameters>
<parameter name="animation" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_static_image" symbol="gdk_pixbuf_animation_get_static_image">
<return-type type="GdkPixbuf*" transfer="none" />
<parameters>
<parameter name="animation" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_iter" symbol="gdk_pixbuf_animation_get_iter">
<return-type type="GdkPixbufAnimationIter*" transfer="full" />
<parameters>
<parameter name="animation" type="GdkPixbufAnimation*" transfer="none" direction="in" />
<parameter name="start_time" type="GLib.GTimeVal*" transfer="none" direction="in" />
</parameters>
</method>
<vfunc name="is_static_image">
<return-type type="gboolean" />
<parameters>
<parameter name="anim" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="get_static_image">
<return-type type="GdkPixbuf*" transfer="none" null-ok="1" />
<parameters>
<parameter name="anim" type="GdkPixbufAnimation*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="get_size">
<return-type type="void" />
<parameters>
<parameter name="anim" type="GdkPixbufAnimation*" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="out" />
<parameter name="height" type="gint" direction="out" />
</parameters>
</vfunc>
<vfunc name="get_iter">
<return-type type="GdkPixbufAnimationIter*" transfer="full" null-ok="1" />
<parameters>
<parameter name="anim" type="GdkPixbufAnimation*" transfer="none" direction="in" />
<parameter name="start_time" type="GLib.GTimeVal*" transfer="none" direction="in" />
</parameters>
</vfunc>
</object>
<object name="GdkPixbufAnimationIter" parent="GLib.GObject" type-name="GdkPixbufAnimationIter" get-type="gdk_pixbuf_animation_iter_get_type">
<vfunc name="get_delay_time">
<return-type type="gint" />
<parameters>
<parameter name="iter" type="GdkPixbufAnimationIter*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="get_pixbuf">
<return-type type="GdkPixbuf*" transfer="none" />
<parameters>
<parameter name="iter" type="GdkPixbufAnimationIter*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="on_currently_loading_frame">
<return-type type="gboolean" />
<parameters>
<parameter name="iter" type="GdkPixbufAnimationIter*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="advance">
<return-type type="gboolean" />
<parameters>
<parameter name="iter" type="GdkPixbufAnimationIter*" transfer="none" direction="in" />
<parameter name="current_time" type="GLib.GTimeVal*" transfer="none" direction="in" />
</parameters>
</vfunc>
</object>
<struct name="GdkPixbufFormat">
<method name="get_name" symbol="gdk_pixbuf_format_get_name">
<return-type type="utf8" transfer="full" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_description" symbol="gdk_pixbuf_format_get_description">
<return-type type="utf8" transfer="full" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_mime_types" symbol="gdk_pixbuf_format_get_mime_types">
<return-type type="guint8*[zero-terminated=1]" transfer="full" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_extensions" symbol="gdk_pixbuf_format_get_extensions">
<return-type type="guint8*[zero-terminated=1]" transfer="full" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="is_writable" symbol="gdk_pixbuf_format_is_writable">
<return-type type="gboolean" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="is_scalable" symbol="gdk_pixbuf_format_is_scalable">
<return-type type="gboolean" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="is_disabled" symbol="gdk_pixbuf_format_is_disabled">
<return-type type="gboolean" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
<method name="set_disabled" symbol="gdk_pixbuf_format_set_disabled">
<return-type type="void" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
<parameter name="disabled" type="gboolean" direction="in" />
</parameters>
</method>
<method name="get_license" symbol="gdk_pixbuf_format_get_license">
<return-type type="utf8" transfer="full" />
<parameters>
<parameter name="format" type="GdkPixbufFormat*" transfer="none" direction="in" />
</parameters>
</method>
</struct>
<function name="get_formats" symbol="gdk_pixbuf_get_formats">
<return-type type="GSList<GdkPixbufFormat>*" transfer="shallow" />
</function>
<function name="get_file_info" symbol="gdk_pixbuf_format_get_file_info">
<return-type type="GdkPixbufFormat*" transfer="none" />
<parameters>
<parameter name="filename" type="filename" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="out" />
<parameter name="height" type="gint" direction="out" />
</parameters>
</function>
<object name="GdkPixbufLoader" parent="GLib.GObject" type-name="GdkPixbufLoader" get-type="gdk_pixbuf_loader_get_type">
<constructor name="new" symbol="gdk_pixbuf_loader_new">
<return-type type="GdkPixbufLoader*" transfer="full" />
</constructor>
<constructor name="new_with_type" symbol="gdk_pixbuf_loader_new_with_type">
<return-type type="GdkPixbufLoader*" transfer="full" />
<parameters>
<parameter name="image_type" type="guint8*" transfer="none" direction="in" />
<parameter name="error" type="GError*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<constructor name="new_with_mime_type" symbol="gdk_pixbuf_loader_new_with_type">
<return-type type="GdkPixbufLoader*" transfer="full" />
<parameters>
<parameter name="mime_type" type="guint8*" transfer="none" direction="in" />
<parameter name="error" type="GError*" transfer="full" direction="out" null-ok="1" />
</parameters>
</constructor>
<method name="set_size" symbol="gdk_pixbuf_loader_set_size">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
</parameters>
</method>
<method name="write" symbol="gdk_pixbuf_loader_write">
<return-type type="gboolean" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="buf" type="guint8[length=2]" transfer="none" direction="in" />
<parameter name="count" type="gint" direction="in" />
<parameter name="error" type="GError*" transfer="full" direction="out" null-ok="1" />
</parameters>
</method>
<method name="get_pixbuf" symbol="gdk_pixbuf_loader_get_pixbuf">
<return-type type="GdkPixbuf*" transfer="none" null-ok="1" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
</parameters>
</method>
<method name="get_animation" symbol="gdk_pixbuf_loader_get_animation">
<return-type type="GdkPixbufAnimation*" transfer="none" null-ok="1" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
</parameters>
</method>
<method name="close" symbol="gdk_pixbuf_loader_close">
<return-type type="gboolean" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="error" type="GError*" transfer="full" direction="out" null-ok="1" />
</parameters>
</method>
<method name="get_format" symbol="gdk_pixbuf_loader_get_format">
<return-type type="GdkPixbufFormat*" transfer="none" null-ok="1" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
</parameters>
</method>
<signal name="size_prepared" when="LAST">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="user_data" type="void*" transfer="none" direction="in" />
</parameters>
</signal>
<signal name="area_prepared" when="LAST">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="user_data" type="void*" transfer="none" direction="in" />
</parameters>
</signal>
<signal name="area_updated" when="LAST">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="x" type="gint" direction="in" />
<parameter name="y" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
<parameter name="user_data" type="void*" transfer="none" direction="in" />
</parameters>
</signal>
<signal name="closed" when="LAST">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="user_data" type="void*" transfer="none" direction="in" />
</parameters>
</signal>
<vfunc name="size_prepared">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
</parameters>
</vfunc>
<vfunc name="area_prepared">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
</parameters>
</vfunc>
<vfunc name="area_updated">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
<parameter name="x" type="gint" direction="in" />
<parameter name="y" type="gint" direction="in" />
<parameter name="width" type="gint" direction="in" />
<parameter name="height" type="gint" direction="in" />
</parameters>
</vfunc>
<vfunc name="closed">
<return-type type="void" />
<parameters>
<parameter name="loader" type="GdkPixbufLoader*" transfer="none" direction="in" />
</parameters>
</vfunc>
</object>
</namespace>
</api>
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: libffi
Description: Foreign Function Interface Library
Version: @VERSION@
Libs: -L${libdir} -lffi
Cflags: -I${includedir}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment