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="annotation" version="1.0" shared-library="annotation">
13 <callback name="Callback"
14 c:type="AnnotationCallback"
15 doc="This is a callback.">
16 <return-value transfer-ownership="none" doc="array of ints">
17 <type name="int" c:type="gint*"/>
20 <parameter name="in" transfer-ownership="none" doc="array of ints">
21 <type name="int" c:type="gint*"/>
25 <callback name="ListCallback"
26 c:type="AnnotationListCallback"
27 doc="This is a callback taking a list.">
28 <return-value transfer-ownership="container" doc="list of strings">
29 <type name="GLib.List" c:type="GList*">
34 <parameter name="in" transfer-ownership="none" doc="list of strings">
35 <type name="GLib.List" c:type="GList*">
42 c:type="AnnotationObject"
43 doc="This is an object used to test annotations."
44 parent="GObject.Object"
45 glib:type-name="AnnotationObject"
46 glib:get-type="annotation_object_get_type">
47 <method name="method" c:identifier="annotation_object_method">
48 <return-value transfer-ownership="none">
49 <type name="int" c:type="gint"/>
53 c:identifier="annotation_object_out"
54 doc="This is a test for out arguments">
55 <return-value transfer-ownership="none">
56 <type name="int" c:type="gint"/>
59 <parameter name="outarg"
61 transfer-ownership="full"
62 doc="This is an argument test">
63 <type name="int" c:type="int*"/>
67 <method name="create_object"
68 c:identifier="annotation_object_create_object"
69 doc="Test returning a caller-owned object">
70 <return-value transfer-ownership="full" doc="The object">
71 <type name="GObject.Object" c:type="GObject*"/>
74 <method name="allow_none" c:identifier="annotation_object_allow_none">
75 <return-value transfer-ownership="full">
76 <type name="GObject.Object" c:type="GObject*"/>
79 <parameter name="somearg" transfer-ownership="none" allow-none="1">
80 <type name="utf8" c:type="gchar*"/>
84 <method name="notrans" c:identifier="annotation_object_notrans">
85 <return-value transfer-ownership="none"
86 doc="An object, not referenced">
87 <type name="GObject.Object" c:type="GObject*"/>
91 c:identifier="annotation_object_inout"
92 doc="This is a test for out arguments">
93 <return-value transfer-ownership="none">
94 <type name="int" c:type="gint"/>
97 <parameter name="inoutarg"
99 transfer-ownership="full"
100 doc="This is an argument test">
101 <type name="int" c:type="int*"/>
105 <method name="inout2"
106 c:identifier="annotation_object_inout2"
107 doc="This is a second test for out arguments">
108 <return-value transfer-ownership="none">
109 <type name="int" c:type="gint"/>
112 <parameter name="inoutarg"
114 transfer-ownership="full"
115 doc="This is an argument test">
116 <type name="int" c:type="int*"/>
120 <method name="inout3"
121 c:identifier="annotation_object_inout3"
122 doc="This is a 3th test for out arguments">
123 <return-value transfer-ownership="none">
124 <type name="int" c:type="gint"/>
127 <parameter name="inoutarg"
129 transfer-ownership="full"
131 doc="This is an argument test">
132 <type name="int" c:type="int*"/>
137 c:identifier="annotation_object_in"
138 doc="This is a test for in arguments">
139 <return-value transfer-ownership="none">
140 <type name="int" c:type="gint"/>
143 <parameter name="inarg"
144 transfer-ownership="none"
145 doc="This is an argument test">
146 <type name="int" c:type="int*"/>
150 <method name="calleeowns"
151 c:identifier="annotation_object_calleeowns"
152 doc="This is a test for out arguments; GObject defaults to transfer">
153 <return-value transfer-ownership="none">
154 <type name="int" c:type="gint"/>
157 <parameter name="toown"
159 transfer-ownership="full"
161 <type name="GObject.Object" c:type="GObject**"/>
165 <method name="calleesowns"
166 c:identifier="annotation_object_calleesowns"
167 doc="This is a test for out arguments, one transferred, other not">
168 <return-value transfer-ownership="none">
169 <type name="int" c:type="gint"/>
172 <parameter name="toown1"
174 transfer-ownership="full"
176 <type name="GObject.Object" c:type="GObject**"/>
178 <parameter name="toown2"
180 transfer-ownership="none"
182 <type name="GObject.Object" c:type="GObject**"/>
186 <method name="get_strings"
187 c:identifier="annotation_object_get_strings"
188 doc="This is a test for returning a list of strings, where
189 each string needs to be freed.">
190 <return-value transfer-ownership="full" doc="list of strings">
191 <type name="GLib.List" c:type="GList*">
196 <method name="get_hash"
197 c:identifier="annotation_object_get_hash"
198 doc="This is a test for returning a hash table mapping strings to
200 <return-value transfer-ownership="full" doc="hash table">
201 <type name="GLib.HashTable" c:type="GHashTable*">
203 <type name="GObject.Object"/>
207 <method name="with_voidp" c:identifier="annotation_object_with_voidp">
208 <return-value transfer-ownership="none">
209 <type name="none" c:type="void"/>
212 <parameter name="data" transfer-ownership="none">
213 <type name="any" c:type="void*"/>
217 <method name="get_objects"
218 c:identifier="annotation_object_get_objects"
219 doc="This is a test for returning a list of objects.
220 The list itself should be freed, but not the internal objects,
221 intentionally similar example to gtk_container_get_children">
222 <return-value transfer-ownership="container" doc="list of objects">
223 <type name="GLib.SList" c:type="GSList*">
224 <type name="Object"/>
228 <method name="use_buffer" c:identifier="annotation_object_use_buffer">
229 <return-value transfer-ownership="none">
230 <type name="none" c:type="void"/>
233 <parameter name="bytes" transfer-ownership="none">
234 <array c:type="guchar*">
240 <method name="compute_sum"
241 c:identifier="annotation_object_compute_sum"
242 doc="Test taking a zero-terminated array">
243 <return-value transfer-ownership="none">
244 <type name="none" c:type="void"/>
247 <parameter name="nums"
248 transfer-ownership="none"
249 doc="Sequence of numbers">
250 <array c:type="int*">
256 <method name="compute_sum_n"
257 c:identifier="annotation_object_compute_sum_n"
258 doc="Test taking an array with length parameter">
259 <return-value transfer-ownership="none">
260 <type name="none" c:type="void"/>
263 <parameter name="nums"
264 transfer-ownership="none"
265 doc="Sequence of numbers">
266 <array zero-terminated="0" length="2" c:type="int*">
270 <parameter name="n_nums" transfer-ownership="none">
271 <type name="int" c:type="int"/>
275 <method name="compute_sum_nz"
276 c:identifier="annotation_object_compute_sum_nz"
277 doc="Test taking a zero-terminated array with length parameter">
278 <return-value transfer-ownership="none">
279 <type name="none" c:type="void"/>
282 <parameter name="nums"
283 transfer-ownership="none"
284 doc="Sequence of numbers">
285 <array length="2" c:type="int*">
289 <parameter name="n_nums" transfer-ownership="none">
290 <type name="int" c:type="int"/>
294 <method name="parse_args"
295 c:identifier="annotation_object_parse_args"
296 doc="Test taking a zero-terminated array with length parameter">
297 <return-value transfer-ownership="none">
298 <type name="none" c:type="void"/>
301 <parameter name="argc"
303 transfer-ownership="full"
304 doc="Length of the argument vector">
305 <type name="int" c:type="int*"/>
307 <parameter name="argv"
309 transfer-ownership="none"
310 doc="Argument vector">
311 <array length="1" c:type="char***">
317 <method name="string_out"
318 c:identifier="annotation_object_string_out"
319 doc="Test returning a string as an out parameter">
320 <return-value transfer-ownership="none">
321 <type name="boolean" c:type="gboolean"/>
324 <parameter name="str_out"
326 transfer-ownership="full"
327 doc="string return value">
328 <type name="utf8" c:type="char**"/>
332 <method name="foreach"
333 c:identifier="annotation_object_foreach"
334 doc="Test taking a call-scoped callback">
335 <return-value transfer-ownership="none">
336 <type name="none" c:type="void"/>
339 <parameter name="func"
340 transfer-ownership="none"
343 doc="Callback to invoke">
344 <type name="ForeachFunc" c:type="AnnotationForeachFunc"/>
346 <parameter name="user_data" transfer-ownership="none">
347 <type name="any" c:type="gpointer"/>
351 <method name="set_data"
352 c:identifier="annotation_object_set_data"
353 doc="Test taking a guchar * with a length.">
354 <return-value transfer-ownership="none">
355 <type name="none" c:type="void"/>
358 <parameter name="data" transfer-ownership="none" doc="The data">
359 <array length="2" c:type="guchar*">
363 <parameter name="length" transfer-ownership="none">
364 <type name="size_t" c:type="gsize"/>
368 <method name="set_data2"
369 c:identifier="annotation_object_set_data2"
370 doc="Test taking a gchar * with a length.">
371 <return-value transfer-ownership="none">
372 <type name="none" c:type="void"/>
375 <parameter name="data" transfer-ownership="none" doc="The data">
376 <array length="2" c:type="gchar*">
380 <parameter name="length" transfer-ownership="none">
381 <type name="size_t" c:type="gsize"/>
385 <method name="set_data3"
386 c:identifier="annotation_object_set_data3"
387 doc="Test taking a gchar * with a length, overriding the array element
389 <return-value transfer-ownership="none">
390 <type name="none" c:type="void"/>
393 <parameter name="data" transfer-ownership="none" doc="The data">
394 <array length="2" c:type="gpointer">
398 <parameter name="length" transfer-ownership="none">
399 <type name="size_t" c:type="gsize"/>
403 <method name="do_not_use"
404 c:identifier="annotation_object_do_not_use"
405 deprecated="Use annotation_object_create_object() instead."
406 deprecated-version="0.12">
407 <return-value transfer-ownership="full">
408 <type name="GObject.Object" c:type="GObject*"/>
411 <property name="string-property"
413 deprecated="Use better-string-property instead"
414 deprecated-version="1.2"
417 doc="This is a property which is a string">
418 <type name="utf8" c:type="gchararray"/>
420 <field name="parent_instance">
421 <type name="GObject.Object" c:type="GObject"/>
423 <glib:signal name="string-signal"
424 doc="This is a signal which has a broken signal handler,
425 it says it's pointer but it's actually a string."
427 deprecated="Use other-signal instead"
428 deprecated-version="1.2">
429 <return-value transfer-ownership="full">
430 <type name="none" c:type="void"/>
433 <parameter name="string" transfer-ownership="none" doc="a string">
434 <type name="utf8" c:type="gpointer"/>
438 <glib:signal name="list-signal"
439 doc="This is a signal which takes a list of strings, but it's not
440 known by GObject as it's only marked as G_TYPE_POINTER">
441 <return-value transfer-ownership="full">
442 <type name="none" c:type="void"/>
445 <parameter name="list"
446 transfer-ownership="container"
447 doc="a list of strings">
448 <type name="GLib.List" c:type="gpointer">
455 <record name="ObjectClass" c:type="AnnotationObjectClass">
456 <field name="parent_class">
457 <type name="GObject.ObjectClass" c:type="GObjectClass"/>
460 <callback name="ForeachFunc" c:type="AnnotationForeachFunc">
461 <return-value transfer-ownership="none">
462 <type name="none" c:type="void"/>
465 <parameter name="object" transfer-ownership="none">
466 <type name="Object" c:type="AnnotationObject*"/>
468 <parameter name="item" transfer-ownership="none">
469 <type name="utf8" c:type="char*"/>
471 <parameter name="user_data" transfer-ownership="none">
472 <type name="any" c:type="gpointer"/>
476 <function name="init" c:identifier="annotation_init">
477 <return-value transfer-ownership="none">
478 <type name="none" c:type="void"/>
481 <parameter name="argc"
483 transfer-ownership="full"
484 doc="The number of args.">
485 <type name="int" c:type="int*"/>
487 <parameter name="argv"
489 transfer-ownership="none"
490 doc="The arguments.">
491 <array length="0" c:type="char***">
497 <function name="return_array" c:identifier="annotation_return_array">
498 <return-value transfer-ownership="none" doc="The return value">
499 <array length="0" c:type="char**">
504 <parameter name="length"
506 transfer-ownership="full"
507 doc="Number of return values">
508 <type name="int" c:type="int*"/>
512 <function name="versioned"
513 c:identifier="annotation_versioned"
515 <return-value transfer-ownership="none">
516 <type name="none" c:type="void"/>
519 <function name="string_zero_terminated"
520 c:identifier="annotation_string_zero_terminated">
521 <return-value transfer-ownership="none" doc="The return value">
522 <array c:type="char**">
527 <function name="string_zero_terminated_out"
528 c:identifier="annotation_string_zero_terminated_out">
529 <return-value transfer-ownership="none">
530 <type name="none" c:type="void"/>
533 <parameter name="out" direction="inout" transfer-ownership="none">
534 <array c:type="char***">
540 <record name="Struct"
541 c:type="AnnotationStruct"
542 doc="This is a test of an array of object in an field of a struct.">
543 <field name="objects" writable="1">
544 <array zero-terminated="0" c:type="AnnotationObject*" fixed-size="10">
545 <type name="Object"/>