ftp://ftp.redhat.com/pub/redhat/linux/rawhide/SRPMS/SRPMS/gnome-vfs2-2.3.8-1.src.rpm
[gnome-vfs-httpcaptive.git] / doc / html / gnome-vfs-module-callback-module-api.html
1 <HTML
2 ><HEAD
3 ><TITLE
4 >Module Callbacks (Module API)</TITLE
5 ><META
6 NAME="GENERATOR"
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.64
8 "><LINK
9 REL="HOME"
10 TITLE="GnomeVFS - Filesystem Abstraction library"
11 HREF="index.html"><LINK
12 REL="UP"
13 TITLE="Filesystem Modules"
14 HREF="modules.html"><LINK
15 REL="PREVIOUS"
16 TITLE="module"
17 HREF="gnome-vfs-module.html"><LINK
18 REL="NEXT"
19 TITLE="inet-connection"
20 HREF="gnome-vfs-inet-connection.html"></HEAD
21 ><BODY
22 CLASS="REFENTRY"
23 BGCOLOR="#FFFFFF"
24 TEXT="#000000"
25 LINK="#0000FF"
26 VLINK="#840084"
27 ALINK="#0000FF"
28 ><DIV
29 CLASS="NAVHEADER"
30 ><TABLE
31 WIDTH="100%"
32 BORDER="0"
33 BGCOLOR="#000000"
34 CELLPADDING="1"
35 CELLSPACING="0"
36 ><TR
37 ><TH
38 COLSPAN="4"
39 ALIGN="center"
40 ><FONT
41 COLOR="#FFFFFF"
42 SIZE="5"
43 >GnomeVFS - Filesystem Abstraction library</FONT
44 ></TH
45 ></TR
46 ><TR
47 ><TD
48 WIDTH="25%"
49 BGCOLOR="#C00000"
50 ALIGN="left"
51 ><A
52 HREF="gnome-vfs-module.html"
53 ><FONT
54 COLOR="#FFFFFF"
55 SIZE="3"
56 ><B
57 >&#60;&#60;&#60; Previous Page</B
58 ></FONT
59 ></A
60 ></TD
61 ><TD
62 WIDTH="25%"
63 BGCOLOR="#0000C0"
64 ALIGN="center"
65 ><FONT
66 COLOR="#FFFFFF"
67 SIZE="3"
68 ><B
69 ><A
70 HREF="index.html"
71 ><FONT
72 COLOR="#FFFFFF"
73 SIZE="3"
74 ><B
75 >Home</B
76 ></FONT
77 ></A
78 ></B
79 ></FONT
80 ></TD
81 ><TD
82 WIDTH="25%"
83 BGCOLOR="#00C000"
84 ALIGN="center"
85 ><FONT
86 COLOR="#FFFFFF"
87 SIZE="3"
88 ><B
89 ><A
90 HREF="modules.html"
91 ><FONT
92 COLOR="#FFFFFF"
93 SIZE="3"
94 ><B
95 >Up</B
96 ></FONT
97 ></A
98 ></B
99 ></FONT
100 ></TD
101 ><TD
102 WIDTH="25%"
103 BGCOLOR="#C00000"
104 ALIGN="right"
105 ><A
106 HREF="gnome-vfs-inet-connection.html"
107 ><FONT
108 COLOR="#FFFFFF"
109 SIZE="3"
110 ><B
111 >Next Page &#62;&#62;&#62;</B
112 ></FONT
113 ></A
114 ></TD
115 ></TR
116 ></TABLE
117 ></DIV
118 ><H1
119 ><A
120 NAME="GNOME-VFS-MODULE-CALLBACK-MODULE-API"
121 >Module Callbacks (Module API)</A
122 ></H1
123 ><DIV
124 CLASS="REFNAMEDIV"
125 ><A
126 NAME="AEN8490"
127 ></A
128 ><H2
129 >Name</H2
130 >Module Callbacks (Module API)&nbsp;--&nbsp;interface to module callbacks for use by gnome-vfs modules</DIV
131 ><DIV
132 CLASS="REFSYNOPSISDIV"
133 ><A
134 NAME="AEN8493"
135 ></A
136 ><H2
137 >Synopsis</H2
138 ><TABLE
139 BORDER="0"
140 BGCOLOR="#D6E8FF"
141 WIDTH="100%"
142 CELLPADDING="6"
143 ><TR
144 ><TD
145 ><PRE
146 CLASS="SYNOPSIS"
147 >&#13;
148
149 <A
150 HREF=../glib/glib-basic-types.html#GBOOLEAN
151 >gboolean</A>    <A
152 HREF="gnome-vfs-module-callback-module-api.html#GNOME-VFS-MODULE-CALLBACK-INVOKE"
153 >gnome_vfs_module_callback_invoke</A
154 >
155                                             (const char *callback_name,
156                                              <A
157 HREF=../glib/glib-basic-types.html#GCONSTPOINTER
158 >gconstpointer</A> in,
159                                              <A
160 HREF=../glib/glib-basic-types.html#GSIZE
161 >gsize</A> in_size,
162                                              <A
163 HREF=../glib/glib-basic-types.html#GPOINTER
164 >gpointer</A> out,
165                                              <A
166 HREF=../glib/glib-basic-types.html#GSIZE
167 >gsize</A> out_size);</PRE
168 ></TD
169 ></TR
170 ></TABLE
171 ></DIV
172 ><DIV
173 CLASS="REFSECT1"
174 ><A
175 NAME="AEN8502"
176 ></A
177 ><H2
178 >Description</H2
179 ><P
180 >Modules need to perform special operations on callbacks that are not
181 needed by applications, for instance, invoking them.</P
182 ></DIV
183 ><DIV
184 CLASS="REFSECT1"
185 ><A
186 NAME="AEN8505"
187 ></A
188 ><H2
189 >Details</H2
190 ><DIV
191 CLASS="REFSECT2"
192 ><A
193 NAME="AEN8507"
194 ></A
195 ><H3
196 ><A
197 NAME="GNOME-VFS-MODULE-CALLBACK-INVOKE"
198 ></A
199 >gnome_vfs_module_callback_invoke ()</H3
200 ><TABLE
201 BORDER="0"
202 BGCOLOR="#D6E8FF"
203 WIDTH="100%"
204 CELLPADDING="6"
205 ><TR
206 ><TD
207 ><PRE
208 CLASS="PROGRAMLISTING"
209 ><A
210 HREF=../glib/glib-basic-types.html#GBOOLEAN
211 >gboolean</A>    gnome_vfs_module_callback_invoke
212                                             (const char *callback_name,
213                                              <A
214 HREF=../glib/glib-basic-types.html#GCONSTPOINTER
215 >gconstpointer</A> in,
216                                              <A
217 HREF=../glib/glib-basic-types.html#GSIZE
218 >gsize</A> in_size,
219                                              <A
220 HREF=../glib/glib-basic-types.html#GPOINTER
221 >gpointer</A> out,
222                                              <A
223 HREF=../glib/glib-basic-types.html#GSIZE
224 >gsize</A> out_size);</PRE
225 ></TD
226 ></TR
227 ></TABLE
228 ><P
229 >Invoke a default callback for <TT
230 CLASS="PARAMETER"
231 ><I
232 >callback_name</I
233 ></TT
234 >, with in arguments
235 specified by <TT
236 CLASS="PARAMETER"
237 ><I
238 >in</I
239 ></TT
240 > and <TT
241 CLASS="PARAMETER"
242 ><I
243 >in_size</I
244 ></TT
245 >, and out arguments specified by <TT
246 CLASS="PARAMETER"
247 ><I
248 >out</I
249 ></TT
250 >
251 and <TT
252 CLASS="PARAMETER"
253 ><I
254 >out_size</I
255 ></TT
256 >.</P
257 ><P
258 >This function should only be called by gnome-vfs modules.</P
259 ><P
260 >If this function is called from an async job thread, it will invoke
261 the current async handler for <TT
262 CLASS="PARAMETER"
263 ><I
264 >callback_name</I
265 ></TT
266 >, if any. If no async
267 handler is set, or the function is not called from an async job
268 thread, the regular handler, if any, will be invoked instead. If no
269 handler at all is found for <TT
270 CLASS="PARAMETER"
271 ><I
272 >callback_name</I
273 ></TT
274 >, the function returns
275 FALSE.</P
276 ><P
277 ></P
278 ><DIV
279 CLASS="INFORMALTABLE"
280 ><A
281 NAME="AEN8527"
282 ></A
283 ><P
284 ></P
285 ><TABLE
286 BORDER="0"
287 WIDTH="100%"
288 BGCOLOR="#FFD0D0"
289 CELLSPACING="0"
290 CELLPADDING="4"
291 CLASS="CALSTABLE"
292 ><TBODY
293 ><TR
294 ><TD
295 WIDTH="20%"
296 ALIGN="RIGHT"
297 VALIGN="TOP"
298 ><TT
299 CLASS="PARAMETER"
300 ><I
301 >callback_name</I
302 ></TT
303 >&nbsp;:</TD
304 ><TD
305 WIDTH="80%"
306 ALIGN="LEFT"
307 VALIGN="TOP"
308 > The name of the module callback to set</TD
309 ></TR
310 ><TR
311 ><TD
312 WIDTH="20%"
313 ALIGN="RIGHT"
314 VALIGN="TOP"
315 ><TT
316 CLASS="PARAMETER"
317 ><I
318 >in</I
319 ></TT
320 >&nbsp;:</TD
321 ><TD
322 WIDTH="80%"
323 ALIGN="LEFT"
324 VALIGN="TOP"
325 > In argument - type dependent on the specific callback</TD
326 ></TR
327 ><TR
328 ><TD
329 WIDTH="20%"
330 ALIGN="RIGHT"
331 VALIGN="TOP"
332 ><TT
333 CLASS="PARAMETER"
334 ><I
335 >in_size</I
336 ></TT
337 >&nbsp;:</TD
338 ><TD
339 WIDTH="80%"
340 ALIGN="LEFT"
341 VALIGN="TOP"
342 > Size of the in argument</TD
343 ></TR
344 ><TR
345 ><TD
346 WIDTH="20%"
347 ALIGN="RIGHT"
348 VALIGN="TOP"
349 ><TT
350 CLASS="PARAMETER"
351 ><I
352 >out</I
353 ></TT
354 >&nbsp;:</TD
355 ><TD
356 WIDTH="80%"
357 ALIGN="LEFT"
358 VALIGN="TOP"
359 > Out argument - type dependent on the specific callback</TD
360 ></TR
361 ><TR
362 ><TD
363 WIDTH="20%"
364 ALIGN="RIGHT"
365 VALIGN="TOP"
366 ><TT
367 CLASS="PARAMETER"
368 ><I
369 >out_size</I
370 ></TT
371 >&nbsp;:</TD
372 ><TD
373 WIDTH="80%"
374 ALIGN="LEFT"
375 VALIGN="TOP"
376 > Size of the out argument</TD
377 ></TR
378 ><TR
379 ><TD
380 WIDTH="20%"
381 ALIGN="RIGHT"
382 VALIGN="TOP"
383 ><I
384 CLASS="EMPHASIS"
385 >Returns</I
386 > :</TD
387 ><TD
388 WIDTH="80%"
389 ALIGN="LEFT"
390 VALIGN="TOP"
391 > TRUE if a callback was invoked, FALSE if none was set.&#13;</TD
392 ></TR
393 ></TBODY
394 ></TABLE
395 ><P
396 ></P
397 ></DIV
398 ></DIV
399 ></DIV
400 ><DIV
401 CLASS="REFSECT1"
402 ><A
403 NAME="AEN8556"
404 ></A
405 ><H2
406 >See Also</H2
407 ><P
408 ><A
409 HREF="gnome-vfs-module-callbacks.html"
410 >Module Callbacks</A
411 >
412 <A
413 HREF="gnome-vfs-standard-callbacks.html"
414 >Standard Callbacks</A
415 ></P
416 ></DIV
417 ><DIV
418 CLASS="NAVFOOTER"
419 ><BR
420 CLEAR="all"><BR><TABLE
421 WIDTH="100%"
422 BORDER="0"
423 BGCOLOR="#000000"
424 CELLPADDING="1"
425 CELLSPACING="0"
426 ><TR
427 ><TD
428 WIDTH="25%"
429 BGCOLOR="#C00000"
430 ALIGN="left"
431 ><A
432 HREF="gnome-vfs-module.html"
433 ><FONT
434 COLOR="#FFFFFF"
435 SIZE="3"
436 ><B
437 >&#60;&#60;&#60; Previous Page</B
438 ></FONT
439 ></A
440 ></TD
441 ><TD
442 WIDTH="25%"
443 BGCOLOR="#0000C0"
444 ALIGN="center"
445 ><FONT
446 COLOR="#FFFFFF"
447 SIZE="3"
448 ><B
449 ><A
450 HREF="index.html"
451 ><FONT
452 COLOR="#FFFFFF"
453 SIZE="3"
454 ><B
455 >Home</B
456 ></FONT
457 ></A
458 ></B
459 ></FONT
460 ></TD
461 ><TD
462 WIDTH="25%"
463 BGCOLOR="#00C000"
464 ALIGN="center"
465 ><FONT
466 COLOR="#FFFFFF"
467 SIZE="3"
468 ><B
469 ><A
470 HREF="modules.html"
471 ><FONT
472 COLOR="#FFFFFF"
473 SIZE="3"
474 ><B
475 >Up</B
476 ></FONT
477 ></A
478 ></B
479 ></FONT
480 ></TD
481 ><TD
482 WIDTH="25%"
483 BGCOLOR="#C00000"
484 ALIGN="right"
485 ><A
486 HREF="gnome-vfs-inet-connection.html"
487 ><FONT
488 COLOR="#FFFFFF"
489 SIZE="3"
490 ><B
491 >Next Page &#62;&#62;&#62;</B
492 ></FONT
493 ></A
494 ></TD
495 ></TR
496 ><TR
497 ><TD
498 COLSPAN="2"
499 ALIGN="left"
500 ><FONT
501 COLOR="#FFFFFF"
502 SIZE="3"
503 ><B
504 >module</B
505 ></FONT
506 ></TD
507 ><TD
508 COLSPAN="2"
509 ALIGN="right"
510 ><FONT
511 COLOR="#FFFFFF"
512 SIZE="3"
513 ><B
514 >inet-connection</B
515 ></FONT
516 ></TD
517 ></TR
518 ></TABLE
519 ></DIV
520 ></BODY
521 ></HTML
522 >