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 <namespace name="foo" version="1.0" shared-library="foo">
13 <alias name="List" target="GLib.SList" c:type="FooList"/>
14 <alias name="XEvent" target="none" c:type="FooXEvent"/>
15 <alias name="ObjectCookie" target="any" c:type="FooObjectCookie"/>
16 <interface name="Interface"
18 glib:type-name="FooInterface"
19 glib:get-type="foo_interface_get_type">
20 <callback name="do_foo" c:type="do_foo">
21 <return-value transfer-ownership="none">
22 <type name="none" c:type="void"/>
25 <parameter name="self" transfer-ownership="none">
26 <type name="Interface" c:type="FooInterface*"/>
31 <record name="InterfaceIface" c:type="FooInterfaceIface">
32 <field name="parent_iface">
33 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
35 <callback name="do_foo" c:type="do_foo">
36 <return-value transfer-ownership="none">
37 <type name="none" c:type="void"/>
40 <parameter name="self" transfer-ownership="none">
41 <type name="Interface" c:type="FooInterface*"/>
46 <interface name="SubInterface"
47 c:type="FooSubInterface"
48 glib:type-name="FooSubInterface"
49 glib:get-type="foo_sub_interface_get_type">
50 <prerequisite name="Interface"/>
51 <method name="do_bar" c:identifier="foo_sub_interface_do_bar">
52 <return-value transfer-ownership="none">
53 <type name="none" c:type="void"/>
56 <callback name="do_bar" c:type="do_bar">
57 <return-value transfer-ownership="none">
58 <type name="none" c:type="void"/>
61 <parameter name="self" transfer-ownership="none">
62 <type name="SubInterface" c:type="FooSubInterface*"/>
67 <record name="SubInterfaceIface" c:type="FooSubInterfaceIface">
68 <field name="parent_iface">
69 <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
71 <callback name="do_bar" c:type="do_bar">
72 <return-value transfer-ownership="none">
73 <type name="none" c:type="void"/>
76 <parameter name="self" transfer-ownership="none">
77 <type name="SubInterface" c:type="FooSubInterface*"/>
84 parent="GObject.Object"
85 glib:type-name="FooObject"
86 glib:get-type="foo_object_get_type">
87 <implements name="Interface"/>
88 <constructor name="new" c:identifier="foo_object_new">
89 <return-value transfer-ownership="full">
90 <type name="Object" c:type="FooObject*"/>
93 <function name="static_meth" c:identifier="foo_object_static_meth">
94 <return-value transfer-ownership="none">
95 <type name="int" c:type="int"/>
98 <method name="external_type" c:identifier="foo_object_external_type">
99 <return-value transfer-ownership="full">
100 <type name="utility.Object" c:type="UtilityObject*"/>
103 <method name="various" c:identifier="foo_object_various">
104 <return-value transfer-ownership="none">
105 <type name="none" c:type="void"/>
108 <parameter name="data" transfer-ownership="none">
109 <type name="any" c:type="void*"/>
111 <parameter name="some_type" transfer-ownership="none">
112 <type name="GType" c:type="GType"/>
116 <method name="take_all" c:identifier="foo_object_take_all">
117 <return-value transfer-ownership="none">
118 <type name="none" c:type="void"/>
121 <parameter name="x" transfer-ownership="none">
122 <type name="int" c:type="int"/>
124 <parameter transfer-ownership="none">
130 <method name="with_tdef" c:identifier="foo_object_with_tdef">
131 <return-value transfer-ownership="none">
132 <type name="none" c:type="void"/>
135 <parameter name="blah" transfer-ownership="none">
136 <type name="List" c:type="FooList*"/>
140 <method name="new_cookie" c:identifier="foo_object_new_cookie">
141 <return-value transfer-ownership="full">
142 <type name="ObjectCookie" c:type="FooObjectCookie"/>
145 <parameter name="target" transfer-ownership="none">
146 <type name="utf8" c:type="char*"/>
150 <method name="is_it_time_yet" c:identifier="foo_object_is_it_time_yet">
151 <return-value transfer-ownership="none">
152 <type name="none" c:type="void"/>
155 <parameter name="time" transfer-ownership="none">
156 <type name="time_t" c:type="time_t"/>
160 <method name="get_name" c:identifier="foo_object_get_name">
161 <return-value transfer-ownership="none">
162 <type name="utf8" c:type="char*"/>
165 <method name="dup_name" c:identifier="foo_object_dup_name">
166 <return-value transfer-ownership="full">
167 <type name="utf8" c:type="char*"/>
170 <method name="handle_glyph" c:identifier="foo_object_handle_glyph">
171 <return-value transfer-ownership="none">
172 <type name="none" c:type="void"/>
175 <parameter name="glyph" transfer-ownership="none">
176 <type name="utility.Glyph" c:type="UtilityGlyph"/>
180 <property name="string" writable="1" construct="1">
181 <type name="utf8" c:type="gchararray"/>
183 <field name="parent_instance">
184 <type name="GObject.Object" c:type="GObject"/>
186 <field name="some_int">
187 <type name="int" c:type="int"/>
189 <glib:signal name="signal">
190 <return-value transfer-ownership="full">
191 <type name="utf8" c:type="gchararray"/>
194 <parameter name="object" transfer-ownership="none">
195 <type name="GObject.Object" c:type="GObject"/>
197 <parameter name="p0" transfer-ownership="none">
198 <type name="any" c:type="gpointer"/>
203 <record name="ObjectClass" c:type="FooObjectClass">
204 <field name="parent_class">
205 <type name="GObject.ObjectClass" c:type="GObjectClass"/>
207 <callback name="virtual_method" c:type="virtual_method">
208 <return-value transfer-ownership="none">
209 <type name="boolean" c:type="gboolean"/>
212 <parameter name="object" transfer-ownership="none">
213 <type name="Object" c:type="FooObject*"/>
215 <parameter name="first_param" transfer-ownership="none">
216 <type name="int" c:type="int"/>
221 <class name="Subobject"
222 c:type="FooSubobject"
225 glib:type-name="FooSubobject"
226 glib:get-type="foo_subobject_get_type">
227 <implements name="Interface"/>
228 <constructor name="new" c:identifier="foo_subobject_new">
229 <return-value transfer-ownership="full">
230 <type name="Subobject" c:type="FooSubobject*"/>
233 <field name="parent_instance">
234 <type name="Object" c:type="FooObject"/>
237 <record name="SubobjectClass" c:type="FooSubobjectClass">
238 <field name="parent_class">
239 <type name="ObjectClass" c:type="FooObjectClass"/>
242 <function name="init" c:identifier="foo_init">
243 <return-value transfer-ownership="none">
244 <type name="int" c:type="gint"/>
247 <enumeration name="EnumType"
248 glib:type-name="FooEnumType"
249 glib:get-type="foo_enum_type_get_type"
250 c:type="FooEnumType">
253 c:identifier="FOO_ENUM_ALPHA"
257 c:identifier="FOO_ENUM_BETA"
261 c:identifier="FOO_ENUM_DELTA"
264 <function name="enum_type_method" c:identifier="foo_enum_type_method">
265 <return-value transfer-ownership="none">
266 <type name="int" c:type="int"/>
269 <parameter name="foo_enum" transfer-ownership="none">
270 <type name="EnumType" c:type="FooEnumType"/>
274 <function name="enum_type_returnv" c:identifier="foo_enum_type_returnv">
275 <return-value transfer-ownership="full">
276 <type name="EnumType" c:type="FooEnumType"/>
279 <parameter name="x" transfer-ownership="none">
280 <type name="int" c:type="int"/>
284 <bitfield name="FlagsType"
285 glib:type-name="FooFlagsType"
286 glib:get-type="foo_flags_type_get_type"
287 c:type="FooFlagsType">
290 c:identifier="FOO_FLAGS_FIRST"
292 <member name="second"
294 c:identifier="FOO_FLAGS_SECOND"
298 c:identifier="FOO_FLAGS_THIRD"
301 <enumeration name="EnumNoType" c:type="FooEnumNoType">
302 <member name="un" value="1" c:identifier="FOO_ENUM_UN"/>
303 <member name="deux" value="2" c:identifier="FOO_ENUM_DEUX"/>
304 <member name="trois" value="3" c:identifier="FOO_ENUM_TROIS"/>
305 <member name="neuf" value="9" c:identifier="FOO_ENUM_NEUF"/>
307 <bitfield name="FlagsNoType" c:type="FooFlagsNoType">
308 <member name="ett" value="1" c:identifier="FOO_FLAGS_ETT"/>
309 <member name="tva" value="2" c:identifier="FOO_FLAGS_TVA"/>
310 <member name="fyra" value="4" c:identifier="FOO_FLAGS_FYRA"/>
312 <enumeration name="EnumFullname" c:type="FooEnumFullname">
313 <member name="one" value="1" c:identifier="FOO_ENUM_FULLNAME_ONE"/>
314 <member name="two" value="2" c:identifier="FOO_ENUM_FULLNAME_TWO"/>
315 <member name="three" value="3" c:identifier="FOO_ENUM_FULLNAME_THREE"/>
319 glib:type-name="FooBoxed"
320 glib:get-type="foo_boxed_get_type">
321 <constructor name="new" c:identifier="foo_boxed_new">
322 <return-value transfer-ownership="full">
323 <type name="Boxed" c:type="FooBoxed*"/>
326 <method name="method" c:identifier="foo_boxed_method">
327 <return-value transfer-ownership="none">
328 <type name="none" c:type="void"/>
332 <record name="DBusData"
334 glib:type-name="FooDBusData"
335 glib:get-type="foo_dbus_data_get_type">
336 <method name="method" c:identifier="foo_dbus_data_method">
337 <return-value transfer-ownership="none">
338 <type name="none" c:type="void"/>
342 <callback name="Callback" c:type="FooCallback">
343 <return-value transfer-ownership="none">
344 <type name="boolean" c:type="gboolean"/>
347 <parameter name="foo" transfer-ownership="none">
348 <type name="Object" c:type="FooObject*"/>
350 <parameter name="b" transfer-ownership="none">
351 <type name="boolean" c:type="gboolean"/>
353 <parameter name="data" transfer-ownership="none">
354 <type name="any" c:type="gpointer"/>
358 <record name="Struct" c:type="FooStruct">
359 <field name="priv" writable="1">
360 <type name="StructPrivate" c:type="FooStructPrivate*"/>
362 <field name="member" writable="1">
363 <type name="int" c:type="int"/>
366 <record name="StructPrivate" c:type="FooStructPrivate">
368 <record name="Rectangle" c:type="FooRectangle">
369 <field name="x" writable="1">
370 <type name="int" c:type="gint"/>
372 <field name="y" writable="1">
373 <type name="int" c:type="gint"/>
375 <field name="width" writable="1">
376 <type name="int" c:type="gint"/>
378 <field name="height" writable="1">
379 <type name="int" c:type="gint"/>
381 <constructor name="new" c:identifier="foo_rectangle_new">
382 <return-value transfer-ownership="full">
383 <type name="Rectangle" c:type="FooRectangle*"/>
386 <parameter name="x" transfer-ownership="none">
387 <type name="int" c:type="int"/>
389 <parameter name="y" transfer-ownership="none">
390 <type name="int" c:type="int"/>
392 <parameter name="width" transfer-ownership="none">
393 <type name="int" c:type="int"/>
395 <parameter name="height" transfer-ownership="none">
396 <type name="int" c:type="int"/>
400 <method name="add" c:identifier="foo_rectangle_add">
401 <return-value transfer-ownership="none">
402 <type name="none" c:type="void"/>
405 <parameter name="r2" transfer-ownership="none">
406 <type name="Rectangle" c:type="FooRectangle*"/>
411 <function name="method_external_references"
412 c:identifier="foo_method_external_references">
413 <return-value transfer-ownership="none">
414 <type name="none" c:type="void"/>
417 <parameter name="object" transfer-ownership="none">
418 <type name="utility.Object" c:type="UtilityObject*"/>
420 <parameter name="e" transfer-ownership="none">
421 <type name="utility.EnumType" c:type="UtilityEnumType"/>
423 <parameter name="f" transfer-ownership="none">
424 <type name="utility.FlagType" c:type="UtilityFlagType"/>
426 <parameter name="s" transfer-ownership="none">
427 <type name="utility.Struct" c:type="UtilityStruct"/>
431 <record name="EventAny" c:type="FooEventAny">
432 <field name="send_event" writable="1">
433 <type name="int8" c:type="gint8"/>
436 <record name="EventExpose" c:type="FooEventExpose">
437 <field name="send_event" writable="1">
438 <type name="int8" c:type="gint8"/>
440 <field name="count" writable="1">
441 <type name="int" c:type="gint"/>
444 <union name="Event" c:type="FooEvent">
445 <field name="type" writable="1">
446 <type name="int" c:type="int"/>
448 <field name="any" writable="1">
449 <type name="EventAny" c:type="FooEventAny"/>
451 <field name="expose" writable="1">
452 <type name="EventExpose" c:type="FooEventExpose"/>
457 glib:type-name="FooBRect"
458 glib:get-type="foo_brect_get_type">
459 <field name="x" writable="1">
460 <type name="double" c:type="double"/>
462 <field name="y" writable="1">
463 <type name="double" c:type="double"/>
465 <constructor name="new" c:identifier="foo_brect_new">
466 <return-value transfer-ownership="full">
467 <type name="BRect" c:type="FooBRect*"/>
470 <parameter name="x" transfer-ownership="none">
471 <type name="double" c:type="double"/>
473 <parameter name="y" transfer-ownership="none">
474 <type name="double" c:type="double"/>
478 <method name="add" c:identifier="foo_brect_add">
479 <return-value transfer-ownership="none">
480 <type name="none" c:type="void"/>
483 <parameter name="b2" transfer-ownership="none">
484 <type name="BRect" c:type="FooBRect*"/>
491 glib:type-name="FooBUnion"
492 glib:get-type="foo_bunion_get_type">
493 <field name="type" writable="1">
494 <type name="int" c:type="int"/>
496 <field name="v" writable="1">
497 <type name="double" c:type="double"/>
499 <field name="rect" writable="1">
500 <type name="BRect" c:type="FooBRect*"/>
502 <constructor name="new" c:identifier="foo_bunion_new">
503 <return-value transfer-ownership="full">
504 <type name="BUnion" c:type="FooBUnion*"/>
507 <method name="get_contained_type"
508 c:identifier="foo_bunion_get_contained_type">
509 <return-value transfer-ownership="none">
510 <type name="int" c:type="int"/>
514 <union name="Union" c:type="_FooUnion">
515 <field name="foo" writable="1">
516 <type name="int" c:type="int"/>
519 <record name="UtilityStruct" c:type="FooUtilityStruct">
520 <field name="bar" writable="1">
521 <type name="utility.Struct" c:type="UtilityStruct"/>
524 <record name="ThingWithArray" c:type="_FooThingWithArray">
525 <field name="x" writable="1">
526 <type name="int" c:type="int"/>
528 <field name="y" writable="1">
529 <type name="int" c:type="int"/>
531 <field name="lines" writable="1">
532 <array zero-terminated="0" c:type="char" fixed-size="80">
536 <field name="data" writable="1">
537 <type name="any" c:type="guchar*"/>
540 <function name="test_unsigned_qualifier"
541 c:identifier="foo_test_unsigned_qualifier">
542 <return-value transfer-ownership="none">
543 <type name="none" c:type="void"/>
546 <parameter name="unsigned_param" transfer-ownership="none">
547 <type name="uint" c:type="unsigned int"/>
551 <function name="test_unsigned_type" c:identifier="foo_test_unsigned_type">
552 <return-value transfer-ownership="none">
553 <type name="none" c:type="void"/>
556 <parameter name="unsigned_param" transfer-ownership="none">
557 <type name="uint" c:type="unsigned"/>
561 <function name="test_string_array" c:identifier="foo_test_string_array">
562 <return-value transfer-ownership="none">
563 <type name="none" c:type="void"/>
566 <parameter name="array" transfer-ownership="none">
567 <array c:type="char**">
573 <function name="test_string_array_with_g"
574 c:identifier="foo_test_string_array_with_g">
575 <return-value transfer-ownership="none">
576 <type name="none" c:type="void"/>
579 <parameter name="array" transfer-ownership="none">
580 <array c:type="gchar**">
586 <function name="test_const_char_retval"
587 c:identifier="foo_test_const_char_retval">
588 <return-value transfer-ownership="none">
589 <type name="utf8" c:type="char*"/>
592 <function name="test_const_struct_retval"
593 c:identifier="foo_test_const_struct_retval">
594 <return-value transfer-ownership="none">
595 <type name="Struct" c:type="FooStruct*"/>
598 <function name="test_const_char_param"
599 c:identifier="foo_test_const_char_param">
600 <return-value transfer-ownership="none">
601 <type name="none" c:type="void"/>
604 <parameter name="param" transfer-ownership="none">
605 <type name="utf8" c:type="char*"/>
609 <function name="test_const_struct_param"
610 c:identifier="foo_test_const_struct_param">
611 <return-value transfer-ownership="none">
612 <type name="none" c:type="void"/>
615 <parameter name="param" transfer-ownership="none">
616 <type name="Struct" c:type="FooStruct*"/>
620 <enumeration name="Error"
621 glib:type-name="FooError"
622 glib:get-type="foo_error_get_type"
624 glib:error-quark="foo_error_quark">
627 c:identifier="FOO_ERROR_GOOD"
631 c:identifier="FOO_ERROR_BAD"
635 c:identifier="FOO_ERROR_UGLY"
638 <constant name="SUCCESS_INT" value="4408">