## IAnjutaSymbolManager IAnjutaSymbolManager — Source code symbols manager inteface |

## Stability Level

Unstable, unless otherwise indicated

## Functions

GQuark | ianjuta_symbol_manager_error_quark ()
gboolean | ianjuta_symbol_manager_activate_package ()
gboolean | ianjuta_symbol_manager_add_package ()
IAnjutaSymbolQuery * | ianjuta_symbol_manager_create_query ()
void | ianjuta_symbol_manager_deactivate_all ()
void | ianjuta_symbol_manager_deactivate_package ()

## Signals

void | prj-scan-end | Run Last
void | sys-scan-end | Run Last

## Types and Values

#define | IANJUTA_SYMBOL_MANAGER_ERROR

## Object Hierarchy

        GInterface
        ╰── IAnjutaSymbolManager

## Includes

    #include <libanjuta/interfaces/ianjuta-symbol-manager.h>

## Description

## Functions

### ianjuta_symbol_manager_error_quark ()

    GQuark
    ianjuta_symbol_manager_error_quark (void);

#### Returns

### ianjuta_symbol_manager_activate_package ()

    gboolean
    ianjuta_symbol_manager_activate_package
                                   (IAnjutaSymbolManager *obj,
                                    const gchar *pkg_name,
                                    const gchar *pkg_version,
                                    GError **err);

Activates the package for searches in the global symbol database.

#### Parameters

obj | Self |
pkg_name | Name of the package to activate. The colon char must be avoided. |
pkg_version | Version of the package. The colon char must be avoided. |

#### Returns

TRUE if the package was loaded (or will be loaded once scanned). FALSE if the version given was newer than the version in the database or the package was not found. In this case, `add_package()` should be called.

### ianjuta_symbol_manager_add_package ()

    gboolean
    ianjuta_symbol_manager_add_package (IAnjutaSymbolManager *obj,
                                        const gchar *pkg_name,
                                        const gchar *pkg_version,
                                        GList *files,
                                        GError **err);

Reads the package files into the database asynchronously.

#### Parameters

obj | Self |
pkg_name | Name of the package to scan. Should be the name given by pkg-config. The colon char must be avoided. |
pkg_version | Version of the package. The colon char must be avoided. or by the language implementation (Python, Javascript, etc.) |
files | A list of GFile's to scan for this package |

#### Returns

TRUE if the package will be loaded into the db, FALSE if the package already exists

### ianjuta_symbol_manager_create_query ()

    IAnjutaSymbolQuery *
    ianjuta_symbol_manager_create_query (IAnjutaSymbolManager *obj,
                                         IAnjutaSymbolQueryName name,
                                         IAnjutaSymbolQueryDb db,
                                         GError **err);

Create a query object. By default only IANJUTA_SYMBOL_FIELD_ID and and IANJUTA_SYMBOL_FIELD_NAME are selected, limit is set to infinity, offset is set to 0, no filters are set and mode is set to IANJUTA_SYMBOL_QUERY_MODE_SYNC.

#### Parameters

obj | Self |
name | Name of the query. It decides what query type it is. |
db | The database to use. |
err | Error propagation and reporting. |

#### Returns

A IAnjutaSymbolQuery object

### ianjuta_symbol_manager_deactivate_all ()

    void
    ianjuta_symbol_manager_deactivate_all (IAnjutaSymbolManager *obj,
                                           GError **err);

Deactivates all activate packages

#### Parameters

obj | Self |

### ianjuta_symbol_manager_deactivate_package ()

    void
    ianjuta_symbol_manager_deactivate_package
                                   (IAnjutaSymbolManager *obj,
                                    const gchar *pkg_name,
                                    const gchar *pkg_version,
                                    GError **err);

Deactivates the package if it was found. If package is NULL, deactivate all packages.

#### Parameters

obj | Self |
pkg_name | name of the package. The colon char must be avoided. |
pkg_version | Version of the package. The colon char must be avoided. |

## Types and Values

### IANJUTA_SYMBOL_MANAGER_ERROR

    #define IANJUTA_SYMBOL_MANAGER_ERROR ianjuta_symbol_manager_error_quark()

## Signal Details

### The `“prj-scan-end”` signal

    void
    user_function (IAnjutaSymbolManager *ianjutasymbolmanager,
                   gint                  arg1,
                   gpointer              user_data)

Flags: Run Last

### The `“sys-scan-end”` signal

    void
    user_function (IAnjutaSymbolManager *ianjutasymbolmanager,
                   gint                  arg1,
                   gpointer              user_data)

Flags: Run Last

## See Also

IAnjutaSymbol