## ZeitgeistSubject ZeitgeistSubject — ZetigeistSubject |

## Synopsis

    #include <zeitgeist-subject.h>

                        ZeitgeistSubject;
    struct              ZeitgeistSubjectClass;
    ZeitgeistSubject *  zeitgeist_subject_new               (void);
    ZeitgeistSubject *  zeitgeist_subject_new_full          (const gchar *uri,
                                                             const gchar *interpretation,
                                                             const gchar *manifestation,
                                                             const gchar *mimetype,
                                                             const gchar *origin,
                                                             const gchar *text,
                                                             const gchar *storage);
    const gchar *       zeitgeist_subject_get_uri           (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_uri           (ZeitgeistSubject *subject,
                                                             const gchar *uri);
    const gchar *       zeitgeist_subject_get_interpretation
                                                            (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_interpretation
                                                            (ZeitgeistSubject *subject,
                                                             const gchar *interpretation);
    const gchar *       zeitgeist_subject_get_manifestation (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_manifestation (ZeitgeistSubject *subject,
                                                             const gchar *manifestation);
    const gchar *       zeitgeist_subject_get_mimetype      (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_mimetype      (ZeitgeistSubject *subject,
                                                             const gchar *mimetype);
    const gchar *       zeitgeist_subject_get_origin        (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_origin        (ZeitgeistSubject *subject,
                                                             const gchar *origin);
    const gchar *       zeitgeist_subject_get_text          (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_text          (ZeitgeistSubject *subject,
                                                             const gchar *text);
    const gchar *       zeitgeist_subject_get_storage       (ZeitgeistSubject *subject);
    void                zeitgeist_subject_set_storage       (ZeitgeistSubject *subject,
                                                             const gchar *storage);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----ZeitgeistSubject

## Description

ZeitgeistSubject.

## Details

### ZeitgeistSubject

    typedef struct _ZeitgeistSubject ZeitgeistSubject;

### struct ZeitgeistSubjectClass

    struct ZeitgeistSubjectClass {
      GInitiallyUnownedClass parent_class;
    };

### zeitgeist_subject_new ()

    ZeitgeistSubject *  zeitgeist_subject_new               (void);

Create a new empty subject structure

Returns : | A newly create ZeitgeistSubject instance. The returned subject will have a floating reference which will be consumed if you pass the event to any of the methods provided by this library (like adding it to an event). If you do not do that then you must free the subject youself with `g_object_unref()`

### zeitgeist_subject_new_full ()

    ZeitgeistSubject *  zeitgeist_subject_new_full          (const gchar *uri,
                                                             const gchar *interpretation,
                                                             const gchar *manifestation,
                                                             const gchar *mimetype,
                                                             const gchar *origin,
                                                             const gchar *text,
                                                             const gchar *storage);

Create a new subject structure with predefined data

`uri` : | The URI or URL of the subject
`interpretation` : | The interpretation type of the subject. See the list of interpretation types
`manifestation` : | The manifestation type of the subject. See the list of manifestation types
`mimetype` : | The mimetype of the subject. Eg. text/plain
`origin` : | The origin of the subject. See `zeitgeist_subject_set_origin()` for details
`text` : | A small textual representation of the subject suitable for display
`storage` : | String identifier for the storage medium the subject is on. Se `zeitgeist_subject_set_storage()` for details
Returns : | A newly create ZeitgeistSubject instance. The returned subject will have a floating reference which will be consumed if you pass the event to any of the methods provided by this library (like adding it to an event). If you do not do that then you must free the subject youself with `g_object_unref()`

### zeitgeist_subject_get_uri ()

    const gchar *       zeitgeist_subject_get_uri           (ZeitgeistSubject *subject);

### zeitgeist_subject_set_uri ()

    void                zeitgeist_subject_set_uri           (ZeitgeistSubject *subject,
                                                             const gchar *uri);

### zeitgeist_subject_get_interpretation ()

    const gchar *       zeitgeist_subject_get_interpretation
                                                            (ZeitgeistSubject *subject);

### zeitgeist_subject_set_interpretation ()

    void                zeitgeist_subject_set_interpretation
                                                            (ZeitgeistSubject *subject,
                                                             const gchar *interpretation);

### zeitgeist_subject_get_manifestation ()

    const gchar *       zeitgeist_subject_get_manifestation (ZeitgeistSubject *subject);

### zeitgeist_subject_set_manifestation ()

    void                zeitgeist_subject_set_manifestation (ZeitgeistSubject *subject,
                                                             const gchar *manifestation);

### zeitgeist_subject_get_mimetype ()

    const gchar *       zeitgeist_subject_get_mimetype      (ZeitgeistSubject *subject);

### zeitgeist_subject_set_mimetype ()

    void                zeitgeist_subject_set_mimetype      (ZeitgeistSubject *subject,
                                                             const gchar *mimetype);

### zeitgeist_subject_get_origin ()

    const gchar *       zeitgeist_subject_get_origin        (ZeitgeistSubject *subject);

### zeitgeist_subject_set_origin ()

    void                zeitgeist_subject_set_origin        (ZeitgeistSubject *subject,
                                                             const gchar *origin);

### zeitgeist_subject_get_text ()

    const gchar *       zeitgeist_subject_get_text          (ZeitgeistSubject *subject);

### zeitgeist_subject_set_text ()

    void                zeitgeist_subject_set_text          (ZeitgeistSubject *subject,
                                                             const gchar *text);

### zeitgeist_subject_get_storage ()

    const gchar *       zeitgeist_subject_get_storage       (ZeitgeistSubject *subject);

### zeitgeist_subject_set_storage ()

    void                zeitgeist_subject_set_storage       (ZeitgeistSubject *subject,
                                                             const gchar *storage);