### Class

# Gimp Module

#### Description [src]

    class Gimp.Module : GObject.TypeModule {
      parent_instance: GTypeModule,
      priv: GimpModulePrivate*
    }

`GimpModule` is a generic mechanism to dynamically load modules into GIMP. It is a `GTypeModule` subclass, implementing module loading using `GModule`. `GimpModule` does not know which functionality is implemented by the modules, it just provides a framework to get arbitrary `GType` implementations loaded from disk.

#### Ancestors

- GTypeModule
- GObject

#### Implements

- GTypePlugin

#### Constructors

###### gimp_module_new

Creates a new `GimpModule` instance.

#### Functions

###### gimp_module_error_quark

This function is never called directly. Use GIMP_MODULE_ERROR() instead.

Available since: 2.8

###### gimp_module_query

No description available.

###### gimp_module_register

No description available.

#### Instance methods

###### gimp_module_get_auto_load

Returns whether this `module` in automatically loaded at startup.

Available since: 3.0

###### gimp_module_get_file

Returns `GFile` of the `module`,

Available since: 3.0

###### gimp_module_get_info

No description available.

Available since: 3.0

###### gimp_module_get_last_error

No description available.

Available since: 3.0

###### gimp_module_get_state

No description available.

Available since: 3.0

###### gimp_module_is_loaded

No description available.

Available since: 3.0

###### gimp_module_is_on_disk

No description available.

Available since: 3.0

###### gimp_module_query_module

Queries the module without actually registering any of the types it may implement. After successful query, `gimp_module_get_info()` can be used to get further about the module.

###### gimp_module_set_auto_load

Sets the `auto_load` property if the module. Emits “modified”.

Available since: 3.0

##### Methods inherited from GTypeModule (7)

###### g_type_module_add_interface

Registers an additional interface for a type, whose interface lives in the given type plugin. If the interface was already registered for the type in this plugin, nothing will be done.

###### g_type_module_register_enum

Looks up or registers an enumeration that is implemented with a particular type plugin. If a type with name `type_name` was previously registered, the `GType` identifier for the type is returned, otherwise the type is newly registered, and the resulting `GType` identifier returned.

Available since: 2.6

###### g_type_module_register_flags

Looks up or registers a flags type that is implemented with a particular type plugin. If a type with name `type_name` was previously registered, the `GType` identifier for the type is returned, otherwise the type is newly registered, and the resulting `GType` identifier returned.

Available since: 2.6

###### g_type_module_register_type

Looks up or registers a type that is implemented with a particular type plugin. If a type with name `type_name` was previously registered, the `GType` identifier for the type is returned, otherwise the type is newly registered, and the resulting `GType` identifier returned.

###### g_type_module_set_name

Sets the name for a `GTypeModule`.

###### g_type_module_unuse

Decreases the use count of a `GTypeModule` by one. If the result is zero, the module will be unloaded. (However, the `GTypeModule` will not be freed, and types associated with the `GTypeModule` are not unregistered. Once a `GTypeModule` is initialized, it must exist forever.)

###### g_type_module_use

Increases the use count of a `GTypeModule` by one. If the use count was zero before, the plugin will be loaded. If loading the plugin fails, the use count is reset to its prior value.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GTypePlugin (4)

###### g_type_plugin_complete_interface_info

Calls the `complete_interface_info` function from the `GTypePluginClass` of `plugin`. There should be no need to use this function outside of the GObject type system itself.

###### g_type_plugin_complete_type_info

Calls the `complete_type_info` function from the `GTypePluginClass` of `plugin`. There should be no need to use this function outside of the GObject type system itself.

###### g_type_plugin_unuse

Calls the `unuse_plugin` function from the `GTypePluginClass` of `plugin`. There should be no need to use this function outside of the GObject type system itself.

###### g_type_plugin_use

Calls the `use_plugin` function from the `GTypePluginClass` of `plugin`. There should be no need to use this function outside of the GObject type system itself.

#### Signals

###### Gimp.Module::modified

No description available.

##### Signals inherited from GObject (1)

###### GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct GimpModuleClass {
      GTypeModuleClass parent_class;
      void (* modified) (
        GimpModule* module
      );
      void (* _gimp_reserved1) (
    void
      );
      void (* _gimp_reserved2) (
    void
      );
      void (* _gimp_reserved3) (
    void
      );
      void (* _gimp_reserved4) (
    void
      );
      void (* _gimp_reserved5) (
    void
      );
      void (* _gimp_reserved6) (
    void
      );
      void (* _gimp_reserved7) (
    void
      );
      void (* _gimp_reserved8) (
    void
      );

    }

###### Class members

`parent_class`

    GTypeModuleClass

| No description available.

`modified`

    void (* modified) (
        GimpModule* module
      )

| No description available.

`_gimp_reserved1`

    void (* _gimp_reserved1) (
    void
      )

| No description available.

`_gimp_reserved2`

    void (* _gimp_reserved2) (
    void
      )

| No description available.

`_gimp_reserved3`

    void (* _gimp_reserved3) (
    void
      )

| No description available.

`_gimp_reserved4`

    void (* _gimp_reserved4) (
    void
      )

| No description available.

`_gimp_reserved5`

    void (* _gimp_reserved5) (
    void
      )

| No description available.

`_gimp_reserved6`

    void (* _gimp_reserved6) (
    void
      )

| No description available.

`_gimp_reserved7`

    void (* _gimp_reserved7) (
    void
      )

| No description available.

`_gimp_reserved8`

    void (* _gimp_reserved8) (
    void
      )

| No description available.

#### Virtual methods

###### Gimp.ModuleClass.modified

No description available.