~ubuntu-branches/debian/squeeze/glib2.0/squeeze

« back to all changes in this revision

Viewing changes to gobject/gtypeplugin.h

  • Committer: Bazaar Package Importer
  • Author(s): Gustavo Noronha Silva
  • Date: 2009-02-15 13:00:43 UTC
  • mfrom: (1.3.1 upstream) (69.1.10 intrepid)
  • Revision ID: james.westby@ubuntu.com-20090215130043-q47fbt3owmt42m2f
Tags: 2.18.4-2
* Release to unstable
* debian/rules:
- bump SHVER, since we are already forcing a 2.18.0 dependecy on the
  symbols introduced in the development versions
* debian/control.in:
- added Homepage and Vcs-* control fields

Show diffs side-by-side

added added

removed removed

Lines of Context:
38
38
 
39
39
/* --- typedefs & structures --- */
40
40
typedef struct _GTypePluginClass                   GTypePluginClass;
 
41
/**
 
42
 * GTypePluginUse:
 
43
 * @plugin: the #GTypePlugin whose use count should be increased
 
44
 * 
 
45
 * The type of the @use_plugin function of #GTypePluginClass, which gets called
 
46
 * to increase the use count of @plugin.
 
47
 */
41
48
typedef void  (*GTypePluginUse)                   (GTypePlugin     *plugin);
 
49
/**
 
50
 * GTypePluginUnuse:
 
51
 * @plugin: the #GTypePlugin whose use count should be decreased
 
52
 * 
 
53
 * The type of the @unuse_plugin function of #GTypePluginClass.
 
54
 */
42
55
typedef void  (*GTypePluginUnuse)                 (GTypePlugin     *plugin);
 
56
/**
 
57
 * GTypePluginCompleteTypeInfo:
 
58
 * @plugin: the #GTypePlugin
 
59
 * @g_type: the #GType whose info is completed
 
60
 * @info: the #GTypeInfo struct to fill in
 
61
 * @value_table: the #GTypeValueTable to fill in
 
62
 * 
 
63
 * The type of the @complete_type_info function of #GTypePluginClass.
 
64
 */
43
65
typedef void  (*GTypePluginCompleteTypeInfo)      (GTypePlugin     *plugin,
44
66
                                                   GType            g_type,
45
67
                                                   GTypeInfo       *info,
46
68
                                                   GTypeValueTable *value_table);
 
69
/**
 
70
 * GTypePluginCompleteInterfaceInfo:
 
71
 * @plugin: the #GTypePlugin
 
72
 * @instance_type: the #GType of an instantiable type to which the interface
 
73
 *  is added
 
74
 * @interface_type: the #GType of the interface whose info is completed
 
75
 * @info: the #GInterfaceInfo to fill in
 
76
 * 
 
77
 * The type of the @complete_interface_info function of #GTypePluginClass.
 
78
 */
47
79
typedef void  (*GTypePluginCompleteInterfaceInfo) (GTypePlugin     *plugin,
48
80
                                                   GType            instance_type,
49
81
                                                   GType            interface_type,
50
82
                                                   GInterfaceInfo  *info);
 
83
/**
 
84
 * GTypePlugin:
 
85
 * 
 
86
 * The <structname>GTypePlugin</structname> typedef is used as a placeholder 
 
87
 * for objects that implement the <structname>GTypePlugin</structname> 
 
88
 * interface.
 
89
 */
 
90
/**
 
91
 * GTypePluginClass:
 
92
 * @use_plugin: Increases the use count of the plugin.
 
93
 * @unuse_plugin: Decreases the use count of the plugin.
 
94
 * @complete_type_info: Fills in the #GTypeInfo and 
 
95
 *  #GTypeValueTable structs for the type. The structs are initialized
 
96
 *  with <literal>memset(s, 0, sizeof (s))</literal> before calling 
 
97
 *  this function.
 
98
 * @complete_interface_info: Fills in missing parts of the #GInterfaceInfo 
 
99
 *  for the interface. The structs is initialized with 
 
100
 *  <literal>memset(s, 0, sizeof (s))</literal> before calling
 
101
 *  this function.
 
102
 * 
 
103
 * The #GTypePlugin interface is used by the type system in order to handle
 
104
 * the lifecycle of dynamically loaded types.
 
105
 */
51
106
struct _GTypePluginClass
52
107
{
53
108
  /*< private >*/