| Top |
| gboolean | local-linkage | Read / Write / Construct Only |
| gchar * | module-name | Read / Write / Construct Only |
| gchar * | path | Read / Write / Construct Only |
| gboolean | resident | Read / Write / Construct Only |
| gchar * | symbol | Read / Write / Construct Only |
PeasObjectModule is a subclass of GTypeModule which allows registration of extensions. It will be used by C extensions implementors to register extension implementations from within the peas_register_types module function.
GObject * (*PeasFactoryFunc) (guint n_parameters,GParameter *parameters,gpointer user_data);
A PeasFactoryFunc is a factory function which will instanciate a new
extension of a given type. g_object_newv() is such a function.
It is used with peas_object_module_register_extension_factory().
n_parameters |
The number of paramteters. |
|
parameters |
The parameters. |
[array length=n_parameters] |
user_data |
Optional data to be passed to the function, or |
void peas_object_module_register_extension_factory (PeasObjectModule *module,GType iface_type,PeasFactoryFunc factory_func,gpointer user_data,GDestroyNotify destroy_func);
Register an implementation for an extension type through a factory
function factory_func
which will instantiate the extension when
requested.
This method is primarily meant to be used by native bindings (like gtkmm),
creating native types which cannot be instantiated correctly using
g_object_new(). For other uses, you will usually prefer relying on
peas_object_module_register_extension_type().
module |
Your plugin's PeasObjectModule. |
|
iface_type |
The GType of the extension interface you implement. |
|
factory_func |
The PeasFactoryFunc that will create the |
|
user_data |
Data to pass to |
|
destroy_func |
A GDestroyNotify for |
void peas_object_module_register_extension_type (PeasObjectModule *module,GType iface_type,GType extension_type);
Register an extension type which implements the extension interface
iface_type
.
module |
Your plugin's PeasObjectModule. |
|
iface_type |
The GType of the extension interface you implement. |
|
extension_type |
The GType of your implementation of |
struct PeasObjectModule;
The PeasObjectModule structure contains only private data and should only be accessed using the provided API.
struct PeasObjectModuleClass {
GTypeModuleClass parent_class;
};
The class structure for PeasObjectModule.
“local-linkage” property“local-linkage” gboolean
This property indicates whether the module is loaded with local linkage, i.e. G_MODULE_BIND_LOCAL.
Since 1.14
Flags: Read / Write / Construct Only
Default value: FALSE
“module-name” property“module-name” gchar *
The module to load for this object.
Flags: Read / Write / Construct Only
Default value: NULL
“path” property“path” gchar *
The path to use when loading this module.
Flags: Read / Write / Construct Only
Default value: NULL
“resident” property“resident” gboolean
Whether the module is resident.
Flags: Read / Write / Construct Only
Default value: FALSE
“symbol” property“symbol” gchar *
The registration symbol to use for this module.
Flags: Read / Write / Construct Only
Default value: "peas_register_types"