2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations. -->
5 <repository version="1.0"
6 xmlns="http://www.gtk.org/introspection/core/1.0"
7 xmlns:c="http://www.gtk.org/introspection/c/1.0"
8 xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9 <include name="GLib" version="2.0"/>
10 <include name="GObject" version="2.0"/>
11 <include name="utility" version="1.0"/>
12 <package name="gobject-2.0"/>
13 <namespace name="foo" version="1.0" shared-library="foo">
14 <alias name="List" target="GLib.SList" c:type="FooList"/>
15 <alias name="XEvent" target="none" c:type="FooXEvent"/>
16 <alias name="ObjectCookie" target="any" c:type="FooObjectCookie"/>
17 <interface name="Interface"
19 glib:type-name="FooInterface"
20 glib:get-type="foo_interface_get_type">
21 <callback name="do_foo" c:type="do_foo">
22 <return-value transfer-ownership="none">
23 <type name="none" c:type="void"/>
26 <parameter name="self" transfer-ownership="none">
27 <type name="Interface" c:type="FooInterface*"/>
32 <record name="InterfaceIface" c:type="FooInterfaceIface">
33 <field name="parent_iface">
34 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
36 <callback name="do_foo" c:type="do_foo">
37 <return-value transfer-ownership="none">
38 <type name="none" c:type="void"/>
41 <parameter name="self" transfer-ownership="none">
42 <type name="Interface" c:type="FooInterface*"/>
47 <interface name="SubInterface"
48 c:type="FooSubInterface"
49 glib:type-name="FooSubInterface"
50 glib:get-type="foo_sub_interface_get_type">
51 <prerequisite name="Interface"/>
52 <method name="do_bar" c:identifier="foo_sub_interface_do_bar">
53 <return-value transfer-ownership="none">
54 <type name="none" c:type="void"/>
57 <callback name="do_bar" c:type="do_bar">
58 <return-value transfer-ownership="none">
59 <type name="none" c:type="void"/>
62 <parameter name="self" transfer-ownership="none">
63 <type name="SubInterface" c:type="FooSubInterface*"/>
68 <record name="SubInterfaceIface" c:type="FooSubInterfaceIface">
69 <field name="parent_iface">
70 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
72 <callback name="do_bar" c:type="do_bar">
73 <return-value transfer-ownership="none">
74 <type name="none" c:type="void"/>
77 <parameter name="self" transfer-ownership="none">
78 <type name="SubInterface" c:type="FooSubInterface*"/>
85 parent="GObject.Object"
86 glib:type-name="FooObject"
87 glib:get-type="foo_object_get_type"
88 glib:class-struct="ObjectClass">
89 <implements name="Interface"/>
90 <constructor name="new" c:identifier="foo_object_new">
91 <return-value transfer-ownership="full">
92 <type name="Object" c:type="FooObject*"/>
95 <function name="static_meth" c:identifier="foo_object_static_meth">
96 <return-value transfer-ownership="none">
97 <type name="int" c:type="int"/>
100 <method name="external_type" c:identifier="foo_object_external_type">
101 <return-value transfer-ownership="full">
102 <type name="utility.Object" c:type="UtilityObject*"/>
105 <method name="various" c:identifier="foo_object_various">
106 <return-value transfer-ownership="none">
107 <type name="none" c:type="void"/>
110 <parameter name="data" transfer-ownership="none">
111 <type name="any" c:type="void*"/>
113 <parameter name="some_type" transfer-ownership="none">
114 <type name="GType" c:type="GType"/>
118 <method name="take_all" c:identifier="foo_object_take_all">
119 <return-value transfer-ownership="none">
120 <type name="none" c:type="void"/>
123 <parameter name="x" transfer-ownership="none">
124 <type name="int" c:type="int"/>
126 <parameter transfer-ownership="none">
132 <method name="with_tdef" c:identifier="foo_object_with_tdef">
133 <return-value transfer-ownership="none">
134 <type name="none" c:type="void"/>
137 <parameter name="blah" transfer-ownership="none">
138 <type name="List" c:type="FooList*"/>
142 <method name="new_cookie" c:identifier="foo_object_new_cookie">
143 <return-value transfer-ownership="full">
144 <type name="ObjectCookie" c:type="FooObjectCookie"/>
147 <parameter name="target" transfer-ownership="none">
148 <type name="utf8" c:type="char*"/>
152 <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
153 <return-value transfer-ownership="none">
154 <type name="none" c:type="void"/>
157 <parameter name="time" transfer-ownership="none">
158 <type name="time_t" c:type="time_t"/>
162 <method name="get_name" c:identifier="foo_object_get_name">
163 <return-value transfer-ownership="none">
164 <type name="utf8" c:type="char*"/>
167 <method name="dup_name" c:identifier="foo_object_dup_name">
168 <return-value transfer-ownership="full">
169 <type name="utf8" c:type="char*"/>
172 <method name="handle_glyph" c:identifier="foo_object_handle_glyph">
173 <return-value transfer-ownership="none">
174 <type name="none" c:type="void"/>
177 <parameter name="glyph" transfer-ownership="none">
178 <type name="utility.Glyph" c:type="UtilityGlyph"/>
182 <property name="string" writable="1" construct="1">
183 <type name="utf8" c:type="gchararray"/>
185 <field name="parent_instance">
186 <type name="GObject.Object" c:type="GObject"/>
188 <field name="some_int">
189 <type name="int" c:type="int"/>
191 <glib:signal name="signal">
192 <return-value transfer-ownership="full">
193 <type name="utf8" c:type="gchararray"/>
196 <parameter name="object" transfer-ownership="none">
197 <type name="GObject.Object" c:type="GObject"/>
199 <parameter name="p0" transfer-ownership="none">
200 <type name="any" c:type="gpointer"/>
205 <record name="ObjectClass"
206 c:type="FooObjectClass"
207 glib:is-class-struct-for="Object">
208 <field name="parent_class">
209 <type name="GObject.ObjectClass" c:type="GObjectClass"/>
211 <callback name="virtual_method" c:type="virtual_method">
212 <return-value transfer-ownership="none">
213 <type name="boolean" c:type="gboolean"/>
216 <parameter name="object" transfer-ownership="none">
217 <type name="Object" c:type="FooObject*"/>
219 <parameter name="first_param" transfer-ownership="none">
220 <type name="int" c:type="int"/>
225 <class name="Subobject"
226 c:type="FooSubobject"
229 glib:type-name="FooSubobject"
230 glib:get-type="foo_subobject_get_type"
231 glib:class-struct="SubobjectClass">
232 <implements name="Interface"/>
233 <constructor name="new" c:identifier="foo_subobject_new">
234 <return-value transfer-ownership="full">
235 <type name="Subobject" c:type="FooSubobject*"/>
238 <field name="parent_instance">
239 <type name="Object" c:type="FooObject"/>
242 <record name="SubobjectClass"
243 c:type="FooSubobjectClass"
244 glib:is-class-struct-for="Subobject">
245 <field name="parent_class">
246 <type name="ObjectClass" c:type="FooObjectClass"/>
251 parent="GObject.Object"
252 glib:type-name="FooBuffer"
253 glib:get-type="foo_buffer_get_type"
254 glib:class-struct="BufferClass">
255 <implements name="Interface"/>
256 <method name="some_method" c:identifier="foo_buffer_some_method">
257 <return-value transfer-ownership="none">
258 <type name="none" c:type="void"/>
262 <record name="BufferClass"
263 c:type="FooBufferClass"
264 glib:is-class-struct-for="Buffer">
266 <function name="init" c:identifier="foo_init">
267 <return-value transfer-ownership="none">
268 <type name="int" c:type="gint"/>
271 <enumeration name="EnumType"
272 glib:type-name="FooEnumType"
273 glib:get-type="foo_enum_type_get_type"
274 c:type="FooEnumType">
277 c:identifier="FOO_ENUM_ALPHA"
281 c:identifier="FOO_ENUM_BETA"
285 c:identifier="FOO_ENUM_DELTA"
288 <function name="enum_type_method" c:identifier="foo_enum_type_method">
289 <return-value transfer-ownership="none">
290 <type name="int" c:type="int"/>
293 <parameter name="foo_enum" transfer-ownership="none">
294 <type name="EnumType" c:type="FooEnumType"/>
298 <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
299 <return-value transfer-ownership="full">
300 <type name="EnumType" c:type="FooEnumType"/>
303 <parameter name="x" transfer-ownership="none">
304 <type name="int" c:type="int"/>
308 <bitfield name="FlagsType"
309 glib:type-name="FooFlagsType"
310 glib:get-type="foo_flags_type_get_type"
311 c:type="FooFlagsType">
314 c:identifier="FOO_FLAGS_FIRST"
316 <member name="second"
318 c:identifier="FOO_FLAGS_SECOND"
322 c:identifier="FOO_FLAGS_THIRD"
325 <enumeration name="EnumNoType" c:type="FooEnumNoType">
326 <member name="un" value="1" c:identifier="FOO_ENUM_UN"/>
327 <member name="deux" value="2" c:identifier="FOO_ENUM_DEUX"/>
328 <member name="trois" value="3" c:identifier="FOO_ENUM_TROIS"/>
329 <member name="neuf" value="9" c:identifier="FOO_ENUM_NEUF"/>
331 <bitfield name="FlagsNoType" c:type="FooFlagsNoType">
332 <member name="ett" value="1" c:identifier="FOO_FLAGS_ETT"/>
333 <member name="tva" value="2" c:identifier="FOO_FLAGS_TVA"/>
334 <member name="fyra" value="4" c:identifier="FOO_FLAGS_FYRA"/>
336 <enumeration name="EnumFullname" c:type="FooEnumFullname">
337 <member name="one" value="1" c:identifier="FOO_ENUM_FULLNAME_ONE"/>
338 <member name="two" value="2" c:identifier="FOO_ENUM_FULLNAME_TWO"/>
339 <member name="three" value="3" c:identifier="FOO_ENUM_FULLNAME_THREE"/>
343 glib:type-name="FooBoxed"
344 glib:get-type="foo_boxed_get_type">
345 <constructor name="new" c:identifier="foo_boxed_new">
346 <return-value transfer-ownership="full">
347 <type name="Boxed" c:type="FooBoxed*"/>
350 <method name="method" c:identifier="foo_boxed_method">
351 <return-value transfer-ownership="none">
352 <type name="none" c:type="void"/>
356 <record name="DBusData"
358 glib:type-name="FooDBusData"
359 glib:get-type="foo_dbus_data_get_type">
360 <method name="method" c:identifier="foo_dbus_data_method">
361 <return-value transfer-ownership="none">
362 <type name="none" c:type="void"/>
366 <callback name="Callback" c:type="FooCallback">
367 <return-value transfer-ownership="none">
368 <type name="boolean" c:type="gboolean"/>
371 <parameter name="foo" transfer-ownership="none">
372 <type name="Object" c:type="FooObject*"/>
374 <parameter name="b" transfer-ownership="none">
375 <type name="boolean" c:type="gboolean"/>
377 <parameter name="data" transfer-ownership="none">
378 <type name="any" c:type="gpointer"/>
382 <record name="Struct" c:type="FooStruct">
383 <field name="priv" writable="1">
384 <type name="StructPrivate" c:type="FooStructPrivate*"/>
386 <field name="member" writable="1">
387 <type name="int" c:type="int"/>
390 <record name="StructPrivate" c:type="FooStructPrivate">
392 <record name="Rectangle" c:type="FooRectangle">
393 <field name="x" writable="1">
394 <type name="int" c:type="gint"/>
396 <field name="y" writable="1">
397 <type name="int" c:type="gint"/>
399 <field name="width" writable="1">
400 <type name="int" c:type="gint"/>
402 <field name="height" writable="1">
403 <type name="int" c:type="gint"/>
405 <constructor name="new" c:identifier="foo_rectangle_new">
406 <return-value transfer-ownership="full">
407 <type name="Rectangle" c:type="FooRectangle*"/>
410 <parameter name="x" transfer-ownership="none">
411 <type name="int" c:type="int"/>
413 <parameter name="y" transfer-ownership="none">
414 <type name="int" c:type="int"/>
416 <parameter name="width" transfer-ownership="none">
417 <type name="int" c:type="int"/>
419 <parameter name="height" transfer-ownership="none">
420 <type name="int" c:type="int"/>
424 <method name="add" c:identifier="foo_rectangle_add">
425 <return-value transfer-ownership="none">
426 <type name="none" c:type="void"/>
429 <parameter name="r2" transfer-ownership="none">
430 <type name="Rectangle" c:type="FooRectangle*"/>
435 <function name="method_external_references"
436 c:identifier="foo_method_external_references">
437 <return-value transfer-ownership="none">
438 <type name="none" c:type="void"/>
441 <parameter name="object" transfer-ownership="none">
442 <type name="utility.Object" c:type="UtilityObject*"/>
444 <parameter name="e" transfer-ownership="none">
445 <type name="utility.EnumType" c:type="UtilityEnumType"/>
447 <parameter name="f" transfer-ownership="none">
448 <type name="utility.FlagType" c:type="UtilityFlagType"/>
450 <parameter name="s" transfer-ownership="none">
451 <type name="utility.Struct" c:type="UtilityStruct"/>
455 <record name="EventAny" c:type="FooEventAny">
456 <field name="send_event" writable="1">
457 <type name="int8" c:type="gint8"/>
460 <record name="EventExpose" c:type="FooEventExpose">
461 <field name="send_event" writable="1">
462 <type name="int8" c:type="gint8"/>
464 <field name="count" writable="1">
465 <type name="int" c:type="gint"/>
468 <union name="Event" c:type="FooEvent">
469 <field name="type" writable="1">
470 <type name="int" c:type="int"/>
472 <field name="any" writable="1">
473 <type name="EventAny" c:type="FooEventAny"/>
475 <field name="expose" writable="1">
476 <type name="EventExpose" c:type="FooEventExpose"/>
481 glib:type-name="FooBRect"
482 glib:get-type="foo_brect_get_type">
483 <field name="x" writable="1">
484 <type name="double" c:type="double"/>
486 <field name="y" writable="1">
487 <type name="double" c:type="double"/>
489 <constructor name="new" c:identifier="foo_brect_new">
490 <return-value transfer-ownership="full">
491 <type name="BRect" c:type="FooBRect*"/>
494 <parameter name="x" transfer-ownership="none">
495 <type name="double" c:type="double"/>
497 <parameter name="y" transfer-ownership="none">
498 <type name="double" c:type="double"/>
502 <method name="add" c:identifier="foo_brect_add">
503 <return-value transfer-ownership="none">
504 <type name="none" c:type="void"/>
507 <parameter name="b2" transfer-ownership="none">
508 <type name="BRect" c:type="FooBRect*"/>
515 glib:type-name="FooBUnion"
516 glib:get-type="foo_bunion_get_type">
517 <field name="type" writable="1">
518 <type name="int" c:type="int"/>
520 <field name="v" writable="1">
521 <type name="double" c:type="double"/>
523 <field name="rect" writable="1">
524 <type name="BRect" c:type="FooBRect*"/>
526 <constructor name="new" c:identifier="foo_bunion_new">
527 <return-value transfer-ownership="full">
528 <type name="BUnion" c:type="FooBUnion*"/>
531 <method name="get_contained_type"
532 c:identifier="foo_bunion_get_contained_type">
533 <return-value transfer-ownership="none">
534 <type name="int" c:type="int"/>
538 <union name="Union" c:type="_FooUnion">
539 <field name="foo" writable="1">
540 <type name="int" c:type="int"/>
543 <record name="UtilityStruct" c:type="FooUtilityStruct">
544 <field name="bar" writable="1">
545 <type name="utility.Struct" c:type="UtilityStruct"/>
548 <record name="ThingWithArray" c:type="_FooThingWithArray">
549 <field name="x" writable="1">
550 <type name="int" c:type="int"/>
552 <field name="y" writable="1">
553 <type name="int" c:type="int"/>
555 <field name="lines" writable="1">
556 <array zero-terminated="0" c:type="char" fixed-size="80">
560 <field name="data" writable="1">
561 <type name="any" c:type="guchar*"/>
564 <function name="test_unsigned_qualifier"
565 c:identifier="foo_test_unsigned_qualifier">
566 <return-value transfer-ownership="none">
567 <type name="none" c:type="void"/>
570 <parameter name="unsigned_param" transfer-ownership="none">
571 <type name="uint" c:type="unsigned int"/>
575 <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
576 <return-value transfer-ownership="none">
577 <type name="none" c:type="void"/>
580 <parameter name="unsigned_param" transfer-ownership="none">
581 <type name="uint" c:type="unsigned"/>
585 <function name="test_string_array" c:identifier="foo_test_string_array">
586 <return-value transfer-ownership="none">
587 <type name="none" c:type="void"/>
590 <parameter name="array" transfer-ownership="none">
591 <array c:type="char**">
597 <function name="test_string_array_with_g"
598 c:identifier="foo_test_string_array_with_g">
599 <return-value transfer-ownership="none">
600 <type name="none" c:type="void"/>
603 <parameter name="array" transfer-ownership="none">
604 <array c:type="gchar**">
610 <function name="test_const_char_retval"
611 c:identifier="foo_test_const_char_retval">
612 <return-value transfer-ownership="none">
613 <type name="utf8" c:type="char*"/>
616 <function name="test_const_struct_retval"
617 c:identifier="foo_test_const_struct_retval">
618 <return-value transfer-ownership="none">
619 <type name="Struct" c:type="FooStruct*"/>
622 <function name="test_const_char_param"
623 c:identifier="foo_test_const_char_param">
624 <return-value transfer-ownership="none">
625 <type name="none" c:type="void"/>
628 <parameter name="param" transfer-ownership="none">
629 <type name="utf8" c:type="char*"/>
633 <function name="test_const_struct_param"
634 c:identifier="foo_test_const_struct_param">
635 <return-value transfer-ownership="none">
636 <type name="none" c:type="void"/>
639 <parameter name="param" transfer-ownership="none">
640 <type name="Struct" c:type="FooStruct*"/>
644 <callback name="VarargsCallback" c:type="FooVarargsCallback">
645 <return-value transfer-ownership="none">
646 <type name="none" c:type="void"/>
649 <parameter name="param" transfer-ownership="none">
650 <type name="utf8" c:type="char*"/>
652 <parameter transfer-ownership="none">
658 <function name="test_varargs_callback"
659 c:identifier="foo_test_varargs_callback">
660 <return-value transfer-ownership="none">
661 <type name="none" c:type="void"/>
664 <parameter name="i" transfer-ownership="none">
665 <type name="int" c:type="gint"/>
667 <parameter name="callback" transfer-ownership="none">
668 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
672 <function name="test_varargs_callback2"
673 c:identifier="foo_test_varargs_callback2">
674 <return-value transfer-ownership="none">
675 <type name="none" c:type="void"/>
678 <parameter name="callback" transfer-ownership="none">
679 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
683 <function name="test_varargs_callback3"
684 c:identifier="foo_test_varargs_callback3">
685 <return-value transfer-ownership="none">
686 <type name="none" c:type="void"/>
689 <parameter name="callback" transfer-ownership="none">
690 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
692 <parameter name="callback2" transfer-ownership="none">
693 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
697 <enumeration name="Error"
698 glib:type-name="FooError"
699 glib:get-type="foo_error_get_type"
701 glib:error-quark="foo_error_quark">
704 c:identifier="FOO_ERROR_GOOD"
708 c:identifier="FOO_ERROR_BAD"
712 c:identifier="FOO_ERROR_UGLY"
715 <constant name="SUCCESS_INT" value="4408">