## GcrCollection

GcrCollection — A collection of objects.

## Synopsis

                        GcrCollection;
    void                gcr_collection_emit_added           (GcrCollection *self,
                                                             GObject *object);
    void                gcr_collection_emit_removed         (GcrCollection *self,
                                                             GObject *object);
    guint               gcr_collection_get_length           (GcrCollection *self);
    GList *             gcr_collection_get_objects          (GcrCollection *self);

## Description

A GcrCollection is used to group a set of objects. This is an abstract interface which can be used to determine which objects show up in a selector or other user interface element.

Use `gcr_simple_collection_new()` to create a concrete implementation of this interface which you can add objects to.

## Details

### GcrCollection

    typedef struct _GcrCollection GcrCollection;

A GcrCollection is used to group a set of objects.

### gcr_collection_emit_added ()

    void                gcr_collection_emit_added           (GcrCollection *self,
                                                             GObject *object);

Emit the GcrCollection::added signal for the given object. This function is used by implementors of this interface.

`self` : | The collection
`object` : | The object that was added

### gcr_collection_emit_removed ()

    void                gcr_collection_emit_removed         (GcrCollection *self,
                                                             GObject *object);

Emit the GcrCollection::removed signal for the given object. This function is used by implementors of this interface.

`self` : | The collection
`object` : | The object that was removed

### gcr_collection_get_length ()

    guint               gcr_collection_get_length           (GcrCollection *self);

Get the number of objects in this collection.

`self` : | The collection
Returns : | The number of objects.

### gcr_collection_get_objects ()

    GList *             gcr_collection_get_objects          (GcrCollection *self);

Get a list of the objects in this collection.

`self` : | The collection
Returns : | A list of the objects in this collection, which should be freed with `g_list_free()`.