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 <c:include name="foo.h"/>
14 <namespace name="foo" version="1.0" shared-library="foo">
15 <alias name="List" target="GLib.SList" c:type="FooList"/>
16 <alias name="ObjectCookie" target="any" c:type="FooObjectCookie"/>
17 <alias name="XEvent" target="none" c:type="FooXEvent"/>
20 glib:type-name="FooBRect"
21 glib:get-type="foo_brect_get_type">
22 <field name="x" writable="1">
23 <type name="double" c:type="double"/>
25 <field name="y" writable="1">
26 <type name="double" c:type="double"/>
28 <constructor name="new" c:identifier="foo_brect_new">
29 <return-value transfer-ownership="full">
30 <type name="BRect" c:type="FooBRect*"/>
33 <parameter name="x" transfer-ownership="none">
34 <type name="double" c:type="double"/>
36 <parameter name="y" transfer-ownership="none">
37 <type name="double" c:type="double"/>
41 <method name="add" c:identifier="foo_brect_add">
42 <return-value transfer-ownership="none">
43 <type name="none" c:type="void"/>
46 <parameter name="b2" transfer-ownership="none">
47 <type name="BRect" c:type="FooBRect*"/>
54 glib:type-name="FooBUnion"
55 glib:get-type="foo_bunion_get_type">
56 <field name="type" writable="1">
57 <type name="int" c:type="int"/>
59 <field name="v" writable="1">
60 <type name="double" c:type="double"/>
62 <field name="rect" writable="1">
63 <type name="BRect" c:type="FooBRect*"/>
65 <constructor name="new" c:identifier="foo_bunion_new">
66 <return-value transfer-ownership="full">
67 <type name="BUnion" c:type="FooBUnion*"/>
70 <method name="get_contained_type"
71 c:identifier="foo_bunion_get_contained_type">
72 <return-value transfer-ownership="none">
73 <type name="int" c:type="int"/>
79 glib:type-name="FooBoxed"
80 glib:get-type="foo_boxed_get_type">
81 <constructor name="new" c:identifier="foo_boxed_new">
82 <return-value transfer-ownership="full">
83 <type name="Boxed" c:type="FooBoxed*"/>
86 <method name="method" c:identifier="foo_boxed_method">
87 <return-value transfer-ownership="none">
88 <type name="none" c:type="void"/>
94 parent="GObject.Object"
95 glib:type-name="FooBuffer"
96 glib:get-type="foo_buffer_get_type"
97 glib:class-struct="BufferClass">
98 <implements name="Interface"/>
99 <method name="some_method" c:identifier="foo_buffer_some_method">
100 <return-value transfer-ownership="none">
101 <type name="none" c:type="void"/>
105 <record name="BufferClass"
106 c:type="FooBufferClass"
107 glib:is-class-struct-for="Buffer">
109 <callback name="Callback" c:type="FooCallback">
110 <return-value transfer-ownership="none">
111 <type name="boolean" c:type="gboolean"/>
114 <parameter name="foo" transfer-ownership="none">
115 <type name="Object" c:type="FooObject*"/>
117 <parameter name="b" transfer-ownership="none">
118 <type name="boolean" c:type="gboolean"/>
120 <parameter name="data" transfer-ownership="none">
121 <type name="any" c:type="gpointer"/>
125 <record name="DBusData"
127 glib:type-name="FooDBusData"
128 glib:get-type="foo_dbus_data_get_type">
129 <method name="method" c:identifier="foo_dbus_data_method">
130 <return-value transfer-ownership="none">
131 <type name="none" c:type="void"/>
135 <constant name="DEFINE_SHOULD_BE_EXPOSED" value="should be exposed">
138 <enumeration name="EnumFullname" c:type="FooEnumFullname">
139 <member name="one" value="1" c:identifier="FOO_ENUM_FULLNAME_ONE"/>
140 <member name="two" value="2" c:identifier="FOO_ENUM_FULLNAME_TWO"/>
141 <member name="three" value="3" c:identifier="FOO_ENUM_FULLNAME_THREE"/>
143 <enumeration name="EnumNoType" c:type="FooEnumNoType">
144 <member name="un" value="1" c:identifier="FOO_ENUM_UN"/>
145 <member name="deux" value="2" c:identifier="FOO_ENUM_DEUX"/>
146 <member name="trois" value="3" c:identifier="FOO_ENUM_TROIS"/>
147 <member name="neuf" value="9" c:identifier="FOO_ENUM_NEUF"/>
149 <enumeration name="EnumType"
150 glib:type-name="FooEnumType"
151 glib:get-type="foo_enum_type_get_type"
152 c:type="FooEnumType">
155 c:identifier="FOO_ENUM_ALPHA"
159 c:identifier="FOO_ENUM_BETA"
163 c:identifier="FOO_ENUM_DELTA"
166 <enumeration name="Error"
167 glib:type-name="FooError"
168 glib:get-type="foo_error_get_type"
170 glib:error-quark="foo_error_quark">
173 c:identifier="FOO_ERROR_GOOD"
177 c:identifier="FOO_ERROR_BAD"
181 c:identifier="FOO_ERROR_UGLY"
184 <union name="Event" c:type="FooEvent">
185 <field name="type" writable="1">
186 <type name="int" c:type="int"/>
188 <field name="any" writable="1">
189 <type name="EventAny" c:type="FooEventAny"/>
191 <field name="expose" writable="1">
192 <type name="EventExpose" c:type="FooEventExpose"/>
195 <record name="EventAny" c:type="FooEventAny">
196 <field name="send_event" writable="1">
197 <type name="int8" c:type="gint8"/>
200 <record name="EventExpose" c:type="FooEventExpose">
201 <field name="send_event" writable="1">
202 <type name="int8" c:type="gint8"/>
204 <field name="count" writable="1">
205 <type name="int" c:type="gint"/>
208 <bitfield name="FlagsNoType" c:type="FooFlagsNoType">
209 <member name="ett" value="1" c:identifier="FOO_FLAGS_ETT"/>
210 <member name="tva" value="2" c:identifier="FOO_FLAGS_TVA"/>
211 <member name="fyra" value="4" c:identifier="FOO_FLAGS_FYRA"/>
213 <bitfield name="FlagsType"
214 glib:type-name="FooFlagsType"
215 glib:get-type="foo_flags_type_get_type"
216 c:type="FooFlagsType">
219 c:identifier="FOO_FLAGS_FIRST"
221 <member name="second"
223 c:identifier="FOO_FLAGS_SECOND"
227 c:identifier="FOO_FLAGS_THIRD"
230 <interface name="Interface"
231 c:type="FooInterface"
232 glib:type-name="FooInterface"
233 glib:get-type="foo_interface_get_type">
234 <callback name="do_foo" c:type="do_foo">
235 <return-value transfer-ownership="none">
236 <type name="none" c:type="void"/>
239 <parameter name="self" transfer-ownership="none">
240 <type name="Interface" c:type="FooInterface*"/>
245 <record name="InterfaceIface" c:type="FooInterfaceIface">
246 <field name="parent_iface">
247 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
249 <callback name="do_foo" c:type="do_foo">
250 <return-value transfer-ownership="none">
251 <type name="none" c:type="void"/>
254 <parameter name="self" transfer-ownership="none">
255 <type name="Interface" c:type="FooInterface*"/>
262 parent="GObject.Object"
263 glib:type-name="FooObject"
264 glib:get-type="foo_object_get_type"
265 glib:class-struct="ObjectClass">
266 <implements name="Interface"/>
267 <constructor name="new" c:identifier="foo_object_new">
268 <return-value transfer-ownership="full">
269 <type name="Object" c:type="FooObject*"/>
272 <function name="static_meth" c:identifier="foo_object_static_meth">
273 <return-value transfer-ownership="none">
274 <type name="int" c:type="int"/>
277 <method name="external_type" c:identifier="foo_object_external_type">
278 <return-value transfer-ownership="full">
279 <type name="utility.Object" c:type="UtilityObject*"/>
282 <method name="various" c:identifier="foo_object_various">
283 <return-value transfer-ownership="none">
284 <type name="none" c:type="void"/>
287 <parameter name="data" transfer-ownership="none">
288 <type name="any" c:type="void*"/>
290 <parameter name="some_type" transfer-ownership="none">
291 <type name="GType" c:type="GType"/>
295 <method name="take_all" c:identifier="foo_object_take_all">
296 <return-value transfer-ownership="none">
297 <type name="none" c:type="void"/>
300 <parameter name="x" transfer-ownership="none">
301 <type name="int" c:type="int"/>
303 <parameter transfer-ownership="none">
309 <method name="with_tdef" c:identifier="foo_object_with_tdef">
310 <return-value transfer-ownership="none">
311 <type name="none" c:type="void"/>
314 <parameter name="blah" transfer-ownership="none">
315 <type name="List" c:type="FooList*"/>
319 <method name="new_cookie" c:identifier="foo_object_new_cookie">
320 <return-value transfer-ownership="full">
321 <type name="ObjectCookie" c:type="FooObjectCookie"/>
324 <parameter name="target" transfer-ownership="none">
325 <type name="utf8" c:type="char*"/>
329 <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
330 <return-value transfer-ownership="none">
331 <type name="none" c:type="void"/>
334 <parameter name="time" transfer-ownership="none">
335 <type name="time_t" c:type="time_t"/>
339 <method name="get_name" c:identifier="foo_object_get_name">
340 <return-value transfer-ownership="none">
341 <type name="utf8" c:type="char*"/>
344 <method name="dup_name" c:identifier="foo_object_dup_name">
345 <return-value transfer-ownership="full">
346 <type name="utf8" c:type="char*"/>
349 <method name="handle_glyph" c:identifier="foo_object_handle_glyph">
350 <return-value transfer-ownership="none">
351 <type name="none" c:type="void"/>
354 <parameter name="glyph" transfer-ownership="none">
355 <type name="utility.Glyph" c:type="UtilityGlyph"/>
359 <property name="string" writable="1" construct="1">
360 <type name="utf8" c:type="gchararray"/>
362 <field name="parent_instance">
363 <type name="GObject.Object" c:type="GObject"/>
365 <field name="some_int">
366 <type name="int" c:type="int"/>
368 <glib:signal name="signal">
369 <return-value transfer-ownership="full">
370 <type name="utf8" c:type="gchararray"/>
373 <parameter name="object" transfer-ownership="none">
374 <type name="GObject.Object" c:type="GObject"/>
376 <parameter name="p0" transfer-ownership="none">
377 <type name="any" c:type="gpointer"/>
382 <record name="ObjectClass"
383 c:type="FooObjectClass"
384 glib:is-class-struct-for="Object">
385 <field name="parent_class">
386 <type name="GObject.ObjectClass" c:type="GObjectClass"/>
388 <callback name="virtual_method" c:type="virtual_method">
389 <return-value transfer-ownership="none">
390 <type name="boolean" c:type="gboolean"/>
393 <parameter name="object" transfer-ownership="none">
394 <type name="Object" c:type="FooObject*"/>
396 <parameter name="first_param" transfer-ownership="none">
397 <type name="int" c:type="int"/>
402 <constant name="PIE_IS_TASTY" value="3.14159">
403 <type name="double"/>
405 <record name="Rectangle" c:type="FooRectangle">
406 <field name="x" writable="1">
407 <type name="int" c:type="gint"/>
409 <field name="y" writable="1">
410 <type name="int" c:type="gint"/>
412 <field name="width" writable="1">
413 <type name="int" c:type="gint"/>
415 <field name="height" writable="1">
416 <type name="int" c:type="gint"/>
418 <constructor name="new" c:identifier="foo_rectangle_new">
419 <return-value transfer-ownership="full">
420 <type name="Rectangle" c:type="FooRectangle*"/>
423 <parameter name="x" transfer-ownership="none">
424 <type name="int" c:type="int"/>
426 <parameter name="y" transfer-ownership="none">
427 <type name="int" c:type="int"/>
429 <parameter name="width" transfer-ownership="none">
430 <type name="int" c:type="int"/>
432 <parameter name="height" transfer-ownership="none">
433 <type name="int" c:type="int"/>
437 <method name="add" c:identifier="foo_rectangle_add">
438 <return-value transfer-ownership="none">
439 <type name="none" c:type="void"/>
442 <parameter name="r2" transfer-ownership="none">
443 <type name="Rectangle" c:type="FooRectangle*"/>
448 <constant name="SUCCESS_INT" value="4408">
451 <record name="Struct" c:type="FooStruct">
452 <field name="priv" writable="1">
453 <type name="StructPrivate" c:type="FooStructPrivate*"/>
455 <field name="member" writable="1">
456 <type name="int" c:type="int"/>
459 <record name="StructPrivate" c:type="FooStructPrivate">
461 <interface name="SubInterface"
462 c:type="FooSubInterface"
463 glib:type-name="FooSubInterface"
464 glib:get-type="foo_sub_interface_get_type">
465 <prerequisite name="Interface"/>
466 <method name="do_bar" c:identifier="foo_sub_interface_do_bar">
467 <return-value transfer-ownership="none">
468 <type name="none" c:type="void"/>
471 <callback name="do_bar" c:type="do_bar">
472 <return-value transfer-ownership="none">
473 <type name="none" c:type="void"/>
476 <parameter name="self" transfer-ownership="none">
477 <type name="SubInterface" c:type="FooSubInterface*"/>
482 <record name="SubInterfaceIface" c:type="FooSubInterfaceIface">
483 <field name="parent_iface">
484 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
486 <callback name="do_bar" c:type="do_bar">
487 <return-value transfer-ownership="none">
488 <type name="none" c:type="void"/>
491 <parameter name="self" transfer-ownership="none">
492 <type name="SubInterface" c:type="FooSubInterface*"/>
497 <class name="Subobject"
498 c:type="FooSubobject"
501 glib:type-name="FooSubobject"
502 glib:get-type="foo_subobject_get_type"
503 glib:class-struct="SubobjectClass">
504 <implements name="Interface"/>
505 <constructor name="new" c:identifier="foo_subobject_new">
506 <return-value transfer-ownership="full">
507 <type name="Subobject" c:type="FooSubobject*"/>
510 <field name="parent_instance">
511 <type name="Object" c:type="FooObject"/>
514 <record name="SubobjectClass"
515 c:type="FooSubobjectClass"
516 glib:is-class-struct-for="Subobject">
517 <field name="parent_class">
518 <type name="ObjectClass" c:type="FooObjectClass"/>
521 <record name="ThingWithArray" c:type="_FooThingWithArray">
522 <field name="x" writable="1">
523 <type name="int" c:type="int"/>
525 <field name="y" writable="1">
526 <type name="int" c:type="int"/>
528 <field name="lines" writable="1">
529 <array zero-terminated="0" c:type="char" fixed-size="80">
533 <field name="data" writable="1">
534 <type name="any" c:type="guchar*"/>
537 <union name="Union" c:type="_FooUnion">
538 <field name="foo" writable="1">
539 <type name="int" c:type="int"/>
542 <record name="UtilityStruct" c:type="FooUtilityStruct">
543 <field name="bar" writable="1">
544 <type name="utility.Struct" c:type="UtilityStruct"/>
547 <callback name="VarargsCallback" c:type="FooVarargsCallback">
548 <return-value transfer-ownership="none">
549 <type name="none" c:type="void"/>
552 <parameter name="param" transfer-ownership="none">
553 <type name="utf8" c:type="char*"/>
555 <parameter transfer-ownership="none">
561 <function name="enum_type_method" c:identifier="foo_enum_type_method">
562 <return-value transfer-ownership="none">
563 <type name="int" c:type="int"/>
566 <parameter name="foo_enum" transfer-ownership="none">
567 <type name="EnumType" c:type="FooEnumType"/>
571 <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
572 <return-value transfer-ownership="full">
573 <type name="EnumType" c:type="FooEnumType"/>
576 <parameter name="x" transfer-ownership="none">
577 <type name="int" c:type="int"/>
581 <function name="init" c:identifier="foo_init">
582 <return-value transfer-ownership="none">
583 <type name="int" c:type="gint"/>
586 <function name="method_external_references"
587 c:identifier="foo_method_external_references">
588 <return-value transfer-ownership="none">
589 <type name="none" c:type="void"/>
592 <parameter name="object" transfer-ownership="none">
593 <type name="utility.Object" c:type="UtilityObject*"/>
595 <parameter name="e" transfer-ownership="none">
596 <type name="utility.EnumType" c:type="UtilityEnumType"/>
598 <parameter name="f" transfer-ownership="none">
599 <type name="utility.FlagType" c:type="UtilityFlagType"/>
601 <parameter name="s" transfer-ownership="none">
602 <type name="utility.Struct" c:type="UtilityStruct"/>
606 <function name="test_const_char_param"
607 c:identifier="foo_test_const_char_param">
608 <return-value transfer-ownership="none">
609 <type name="none" c:type="void"/>
612 <parameter name="param" transfer-ownership="none">
613 <type name="utf8" c:type="char*"/>
617 <function name="test_const_char_retval"
618 c:identifier="foo_test_const_char_retval">
619 <return-value transfer-ownership="none">
620 <type name="utf8" c:type="char*"/>
623 <function name="test_const_struct_param"
624 c:identifier="foo_test_const_struct_param">
625 <return-value transfer-ownership="none">
626 <type name="none" c:type="void"/>
629 <parameter name="param" transfer-ownership="none">
630 <type name="Struct" c:type="FooStruct*"/>
634 <function name="test_const_struct_retval"
635 c:identifier="foo_test_const_struct_retval">
636 <return-value transfer-ownership="none">
637 <type name="Struct" c:type="FooStruct*"/>
640 <function name="test_string_array" c:identifier="foo_test_string_array">
641 <return-value transfer-ownership="none">
642 <type name="none" c:type="void"/>
645 <parameter name="array" transfer-ownership="none">
646 <array c:type="char**">
652 <function name="test_string_array_with_g"
653 c:identifier="foo_test_string_array_with_g">
654 <return-value transfer-ownership="none">
655 <type name="none" c:type="void"/>
658 <parameter name="array" transfer-ownership="none">
659 <array c:type="gchar**">
665 <function name="test_unsigned_qualifier"
666 c:identifier="foo_test_unsigned_qualifier">
667 <return-value transfer-ownership="none">
668 <type name="none" c:type="void"/>
671 <parameter name="unsigned_param" transfer-ownership="none">
672 <type name="uint" c:type="unsigned int"/>
676 <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
677 <return-value transfer-ownership="none">
678 <type name="none" c:type="void"/>
681 <parameter name="unsigned_param" transfer-ownership="none">
682 <type name="uint" c:type="unsigned"/>
686 <function name="test_varargs_callback"
687 c:identifier="foo_test_varargs_callback">
688 <return-value transfer-ownership="none">
689 <type name="none" c:type="void"/>
692 <parameter name="i" transfer-ownership="none">
693 <type name="int" c:type="gint"/>
695 <parameter name="callback" transfer-ownership="none">
696 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
700 <function name="test_varargs_callback2"
701 c:identifier="foo_test_varargs_callback2">
702 <return-value transfer-ownership="none">
703 <type name="none" c:type="void"/>
706 <parameter name="callback" transfer-ownership="none">
707 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
711 <function name="test_varargs_callback3"
712 c:identifier="foo_test_varargs_callback3">
713 <return-value transfer-ownership="none">
714 <type name="none" c:type="void"/>
717 <parameter name="callback" transfer-ownership="none">
718 <type name="VarargsCallback" c:type="FooVarargsCallback"/>
720 <parameter name="callback2" transfer-ownership="none">
721 <type name="VarargsCallback" c:type="FooVarargsCallback"/>