glib-genmarshal man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]

GLIB-GENMARSHAL(1)			       GLIB-GENMARSHAL(1)

NAME
       glib-genmarshal - C code marshaller generation utility for
       GLib closures

SYNOPSIS
       glib-genmarshal [options...] [files...]

DESCRIPTION
	glib-genmarshal is a small utility that generates C  code
       marshallers  for callback functions of the GClosure mecha-
       nism in the GObject sublibrary  of  GLib.  The  marshaller
       functions  have	a  standard signature, they get passed in
       the invoking closure, an array of value structures holding
       the callback function parameters and a value structure for
       the return value of the callback. The marshaller	 is  then
       responsible  to call the respective C code function of the
       closure with all the parameters on the stack and	 to  col-
       lect its return value.

INVOKATION
	glib-genmarshal	 takes	a list of marshallers to generate
       as input. The marshaller list is either read from standard
       input  or from files passed as additional arguments on the
       command line.

   Options
       --header
	      Generate header file contents of the marshallers.

       --body Generate C code file contents of the marshallers.

       --prefix=string, --prefix string
	      Specify marshaller prefix. The  default  prefix  is
	      `g_cclosure_marshal'.

       --skip-source
	      Skip source location remarks in generated comments.

       --nostdinc
	      Do not use the standard marshallers of the  GObject
	      library,	and  skip gmarshal.h include directive in
	      generated header files.

       --g-fatal-warnings
	      Make warnings fatal, that is, exit immediately once
	      a warning occurs.

       -h, --help
	      Print brief help and exit.

       -v, --version
	      Print version and exit.

   Marshaller list format
       The  marshaller	lists  are processed line by line, a line
       can contain a comment in the form of

       # this is a comment

	or a marshaller specification of the form

       RTYPE:PTYPE
       RTYPE:PTYPE,PTYPE
       RTYPE:PTYPE,PTYPE,PTYPE

	(up to 16 PTYPEs may be present).

       The RTYPE part specifies the callback's	return	type  and
       the  PTYPEs  right  to  the  colon  specify the callback's
       parameter list, except for the first and	 the  last  argu-
       ments which are always pointers.

   Parameter types
       Currently, the following types are supported:

       VOID   indicates	 no  return type, or no extra parameters.
	      If VOID is used as the  parameter	 list,	no  addi-
	      tional parameters may be present.

       BOOLEAN
	      for boolean types (gboolean)

       CHAR   for signed char types (gchar)

       UCHAR  for unsigned char types (guchar)

       INT    for signed integer types (gint)

       UINT   for unsigned integer types (guint)

       LONG   for signed long integer types (glong)

       ULONG  for unsigned long integer types (gulong)

       ENUM   for enumeration types (gint)

       FLAGS  for flag enumeration types (guint)

       FLOAT  for single-precision float types (gfloat)

       DOUBLE for double-precision float types (gdouble)

       STRING for string types (gchar*)

       BOXED  for  boxed  (anonymous but reference counted) types
	      (GBoxed*)

       PARAM  for GParamSpec or derived types (GParamSpec*)

       POINTER
	      for anonymous pointer types (gpointer)

       OBJECT for GObject or derived types (GObject*)

       NONE   deprecated alias for VOID

       BOOL   deprecated alias for BOOLEAN

EXAMPLE
       To generate marshallers for the following  callback  func-
       tions:

       void   foo (gpointer data1,
		   gpointer data2);
       void   bar (gpointer data1,
		   gint	    param1,
		   gpointer data2);
       gfloat baz (gpointer data1,
		   gboolean param1,
		   guchar   param2,
		   gpointer data2);

       The marshaller list has to look like this:

       VOID:VOID
       VOID:INT
       FLOAT:BOOLEAN,UCHAR

       The  generated  marshallers  have the arguments encoded in
       their function name. For this particular list, they are

       g_cclosure_marshal_VOID__VOID(),
       g_cclosure_marshal_VOID__INT(),
       g_cclosure_marshal_FLOAT__BOOLEAN_UCHAR().

       They can be used directly for GClosures or be passed in as
       the  GSignalCMarshaller	c_marshaller;  argument upon cre-
       ation of signals:

       GClosure *cc_foo, *cc_bar, *cc_baz;

       cc_foo = g_cclosure_new (NULL, foo, NULL);
       g_closure_set_marshal (cc_foo, g_cclosure_marshal_VOID__VOID);
       cc_bar = g_cclosure_new (NULL, bar, NULL);
       g_closure_set_marshal (cc_bar, g_cclosure_marshal_VOID__INT);
       cc_baz = g_cclosure_new (NULL, baz, NULL);
       g_closure_set_marshal (cc_baz, g_cclosure_marshal_FLOAT__BOOLEAN_UCHAR);

SEE ALSO
	glib-mkenums(1)

BUGS
       None known yet.

AUTHOR
	glib-genmarshal	  has	been   written	 by   Tim   Janik
       <timj@gtk.org>.

       This manual page was provided by Tim Janik <timj@gtk.org>.

					       GLIB-GENMARSHAL(1)
[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net