Camel.Index
Description: Reference for Camel.Index

### Class

# CamelIndex

#### Description [src]

    class Camel.Index : GObject.Object
    {
      CamelIndexPrivate* priv,
      gchar* path,
      guint32 version,
      guint32 flags,
      guint32 state,
      CamelIndexNorm normalize,
      gpointer normalize_data
    }

Abstract interface for content indexing.

`CamelIndex` is an abstract base class that provides a content-indexing interface for Camel. It is used to build and query full-text indexes of message content, enabling fast body-text searches without re-scanning message files.

The concrete implementation is `CamelTextIndex`, which stores the index on disk using a partition-table and block-file based format.

When a `CamelIndex` is attached to a `CamelFolderSummary` (via camel_folder_summary_set_index()), summary generation will automatically add index entries for each message’s text/… content. The index can then be queried by `CamelFolderSearch` to accelerate `body-contains` searches.

#### Hierarchy

#### Ancestors

- GObject

#### Descendants

- CamelTextIndex

#### Instance methods

###### camel_index_add_name

No description available.

###### camel_index_compress

No description available.

###### camel_index_construct

No description available.

###### camel_index_delete

No description available.

###### camel_index_delete_name

Deletes the given `name` from `index`.

###### camel_index_find

No description available.

###### camel_index_find_name

No description available.

###### camel_index_has_name

No description available.

###### camel_index_rename

No description available.

###### camel_index_set_normalize

No description available.

since: 2.32

###### camel_index_sync

No description available.

###### camel_index_words

No description available.

###### camel_index_write_name

No description available.

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

Please see GObject for a full list of methods.

#### Signals

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

###### GObject::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 CamelIndexClass {
      GObjectClass parent_class;
      gint (* sync) (
        CamelIndex* index
      );
      gint (* compress) (
        CamelIndex* index
      );
      gint (* delete_) (
        CamelIndex* index
      );
      gint (* rename) (
        CamelIndex* index,
        const gchar* path
      );
      gint (* has_name) (
        CamelIndex* index,
        const gchar* name
      );
      CamelIndexName* (* add_name) (
        CamelIndex* index,
        const gchar* name
      );
      gint (* write_name) (
        CamelIndex* index,
        CamelIndexName* idn
      );
      CamelIndexCursor* (* find_name) (
        CamelIndex* index,
        const gchar* name
      );
      void (* delete_name) (
        CamelIndex* index,
        const gchar* name
      );
      CamelIndexCursor* (* find) (
        CamelIndex* index,
        const gchar* word
      );
      CamelIndexCursor* (* words) (
        CamelIndex* index
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`

  No description available.

`sync: gint (* sync) ( CamelIndex* index )`

  No description available.

`compress: gint (* compress) ( CamelIndex* index )`

  No description available.

`delete_: gint (* delete_) ( CamelIndex* index )`

  No description available.

`rename: gint (* rename) ( CamelIndex* index, const gchar* path )`

  No description available.

`has_name: gint (* has_name) ( CamelIndex* index, const gchar* name )`

  No description available.

`add_name: CamelIndexName* (* add_name) ( CamelIndex* index, const gchar* name )`

  No description available.

`write_name: gint (* write_name) ( CamelIndex* index, CamelIndexName* idn )`

  No description available.

`find_name: CamelIndexCursor* (* find_name) ( CamelIndex* index, const gchar* name )`

  No description available.

`delete_name: void (* delete_name) ( CamelIndex* index, const gchar* name )`

  No description available.

`find: CamelIndexCursor* (* find) ( CamelIndex* index, const gchar* word )`

  No description available.

`words: CamelIndexCursor* (* words) ( CamelIndex* index )`

  No description available.

#### Virtual methods

###### Camel.IndexClass.add_name

No description available.

###### Camel.IndexClass.compress

No description available.

###### Camel.IndexClass.delete_

No description available.

###### Camel.IndexClass.delete_name

Deletes the given `name` from `index`.

###### Camel.IndexClass.find

No description available.

###### Camel.IndexClass.find_name

No description available.

###### Camel.IndexClass.has_name

No description available.

###### Camel.IndexClass.rename

No description available.

###### Camel.IndexClass.sync

No description available.

###### Camel.IndexClass.words

No description available.

###### Camel.IndexClass.write_name

No description available.