## GOPluginLoader

GOPluginLoader

## Synopsis

    #define             GO_TYPE_PLUGIN_LOADER
    #define             GO_PLUGIN_LOADER                    (o)
    #define             GO_IS_PLUGIN_LOADER                 (o)
    #define             GO_PLUGIN_LOADER_CLASS              (k)
    #define             GO_IS_PLUGIN_LOADER_CLASS           (k)
                        GOPluginLoader;
                        GOPluginLoaderClass;
    GType               go_plugin_loader_get_type           (void);
    void                go_plugin_loader_set_attributes     (GOPluginLoader *l,
                                                             GHashTable *attrs,
                                                             GOErrorInfo **err);
    GOPlugin *          go_plugin_loader_get_plugin         (GOPluginLoader *l);
    void                go_plugin_loader_set_plugin         (GOPluginLoader *l,
                                                             GOPlugin *p);
    void                go_plugin_loader_load_base          (GOPluginLoader *l,
                                                             GOErrorInfo **err);
    void                go_plugin_loader_unload_base        (GOPluginLoader *l,
                                                             GOErrorInfo **err);
    void                go_plugin_loader_load_service       (GOPluginLoader *l,
                                                             GOPluginService *s,
                                                             GOErrorInfo **err);
    void                go_plugin_loader_unload_service     (GOPluginLoader *l,
                                                             GOPluginService *s,
                                                             GOErrorInfo **err);
    gboolean            go_plugin_loader_is_base_loaded     (GOPluginLoader *l);

## Object Hierarchy

      GInterface
       +----GOPluginLoader

## Known Implementations

GOPluginLoader is implemented by GOPluginLoaderModule.

## Description

## Details

### GO_TYPE_PLUGIN_LOADER

    #define GO_TYPE_PLUGIN_LOADER		(go_plugin_loader_get_type ())

### GO_PLUGIN_LOADER()

    #define GO_PLUGIN_LOADER(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), GO_TYPE_PLUGIN_LOADER, GOPluginLoader))

`o` : |

### GO_IS_PLUGIN_LOADER()

    #define GO_IS_PLUGIN_LOADER(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_TYPE_PLUGIN_LOADER))

`o` : |

### GO_PLUGIN_LOADER_CLASS()

    #define GO_PLUGIN_LOADER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), GO_TYPE_PLUGIN_LOADER, GOPluginLoaderClass))

`k` : |

### GO_IS_PLUGIN_LOADER_CLASS()

    #define GO_IS_PLUGIN_LOADER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GO_TYPE_PLUGIN_LOADER))

`k` : |

### GOPluginLoader

    typedef struct _GOPluginLoader GOPluginLoader;

### GOPluginLoaderClass

    typedef struct {
    	GTypeInterface base;

    	void (*load_base)		(GOPluginLoader *l, GOErrorInfo **err);
    	void (*unload_base)		(GOPluginLoader *l, GOErrorInfo **err);
    	void (*set_attributes)		(GOPluginLoader *l, GHashTable *attrs, GOErrorInfo **err);
    	gboolean (*service_load) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);
    	gboolean (*service_unload) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);

    	void (*load_service_file_opener) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);
    	void (*unload_service_file_opener) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);

    	void (*load_service_file_saver)		(GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);
    	void (*unload_service_file_saver) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);

    	void (*load_service_plugin_loader) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);
    	void (*unload_service_plugin_loader) (GOPluginLoader *l, GOPluginService *s, GOErrorInfo **err);
    } GOPluginLoaderClass;

### go_plugin_loader_get_type ()

    GType               go_plugin_loader_get_type           (void);

Returns : |

### go_plugin_loader_set_attributes ()

    void                go_plugin_loader_set_attributes     (GOPluginLoader *l,
                                                             GHashTable *attrs,
                                                             GOErrorInfo **err);

`l` : |
`attrs` : |
`err` : |

### go_plugin_loader_get_plugin ()

    GOPlugin *          go_plugin_loader_get_plugin         (GOPluginLoader *l);

`l` : |
Returns : |

### go_plugin_loader_set_plugin ()

    void                go_plugin_loader_set_plugin         (GOPluginLoader *l,
                                                             GOPlugin *p);

`l` : |
`p` : |

### go_plugin_loader_load_base ()

    void                go_plugin_loader_load_base          (GOPluginLoader *l,
                                                             GOErrorInfo **err);

`l` : |
`err` : |

### go_plugin_loader_unload_base ()

    void                go_plugin_loader_unload_base        (GOPluginLoader *l,
                                                             GOErrorInfo **err);

`l` : |
`err` : |

### go_plugin_loader_load_service ()

    void                go_plugin_loader_load_service       (GOPluginLoader *l,
                                                             GOPluginService *s,
                                                             GOErrorInfo **err);

`l` : |
`s` : |
`err` : |

### go_plugin_loader_unload_service ()

    void                go_plugin_loader_unload_service     (GOPluginLoader *l,
                                                             GOPluginService *s,
                                                             GOErrorInfo **err);

`l` : |
`s` : |
`err` : |

### go_plugin_loader_is_base_loaded ()

    gboolean            go_plugin_loader_is_base_loaded     (GOPluginLoader *l);

`l` : |
Returns : |