## AnjutaCPluginFactory

AnjutaCPluginFactory — Anjuta C plugin factory

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libanjuta/anjuta-c-plugin-factory.h>

                        AnjutaCPluginFactory;
                        AnjutaCPluginFactoryClass;
    AnjutaCPluginFactory * anjuta_c_plugin_factory_new      (void);
    void                anjuta_c_plugin_factory_free        (AnjutaCPluginFactory *factory);

## Object Hierarchy

      GObject
       +----AnjutaCPluginFactory

## Implemented Interfaces

AnjutaCPluginFactory implements IAnjutaPluginFactory.

## Description

AnjutaCPluginFactory implements the IAnjutaPluginFactory interface. This interface is used to create new plugin objects in Anjuta.

This plugin factory creates new plugin objects which have a source code written in C. This factory is always available in Anjuta. Other plugin factories can be implemented as Anjuta plugins.

This plugin factory uses the GLib dynamic type support implemented in AnjutaCModule object to allow loading and unloading of plugins code. But if the plugins itself can be unloaded, the AnjutaCModule object must stay. If the plugin is needed later, it must be registed with the same module object. The factory take care of this and of creating the plugin object itself.

## Details

### AnjutaCPluginFactory

    typedef struct _AnjutaCPluginFactory AnjutaCPluginFactory;

### AnjutaCPluginFactoryClass

    typedef struct _AnjutaCPluginFactoryClass AnjutaCPluginFactoryClass;

### anjuta_c_plugin_factory_new ()

    AnjutaCPluginFactory * anjuta_c_plugin_factory_new      (void);

Create a new AnjutaCPluginFactory object.

Returns : | a new AnjutaCPluginFactory object.

### anjuta_c_plugin_factory_free ()

    void                anjuta_c_plugin_factory_free        (AnjutaCPluginFactory *factory);

Delete a AnjutaCPluginFactory object.

`factory` : | a AnjutaCPluginFactory

## See Also

AnjutaCModule, AnjutaPluginManager