# MIMEDirVTimeZone

## Name

MIMEDirVTimeZone -- iCalendar time zone object

## Synopsis

    #include <mimedir/mimedir-vtimezone.h>

                        MIMEDirVTimeZone;

    MIMEDirVTimeZone*   mimedir_vtimezone_new               (void);
    MIMEDirVTimeZone*   mimedir_vtimezone_new_from_profile  (MIMEDirProfile *profile,
                                                             GError **error);
    gboolean            mimedir_vtimezone_read_from_profile (MIMEDirVTimeZone *vtimezone,
                                                             MIMEDirProfile *profile,
                                                             GError **error);
    gboolean            mimedir_vtimezone_write_to_channel  (MIMEDirVTimeZone *vtimezone,
                                                             GIOChannel *channel,
                                                             GError **error);
    MIMEDirProfile*     mimedir_vtimezone_write_to_profile  (MIMEDirVTimeZone *vtimezone);
    gchar*              mimedir_vtimezone_write_to_string   (MIMEDirVTimeZone *vtimezone);

## Description

## Details

### MIMEDirVTimeZone

    typedef struct {
    	MIMEDirVComponent parent;

    	MIMEDirVTimeZonePriv *priv;
    } MIMEDirVTimeZone;

### mimedir_vtimezone_new ()

    MIMEDirVTimeZone*   mimedir_vtimezone_new               (void);

Creates a new (empty) vTimeZone object.

Returns : | a new vTimeZone object

### mimedir_vtimezone_new_from_profile ()

    MIMEDirVTimeZone*   mimedir_vtimezone_new_from_profile  (MIMEDirProfile *profile,
                                                             GError **error);

Create a new vTimeZone object and fills it with data retrieved from the supplied profile object. If an error occurs during the read, `error` will be set and `NULL` will be returned.

`profile` : | a MIMEDirProfile object
`error` : | error storage location or `NULL`
Returns : | the new vTimeZone object or `NULL`

### mimedir_vtimezone_read_from_profile ()

    gboolean            mimedir_vtimezone_read_from_profile (MIMEDirVTimeZone *vtimezone,
                                                             MIMEDirProfile *profile,
                                                             GError **error);

Clears the supplied vTimeZone object and re-initializes it with data read from the supplied profile. If an error occurs during the read, `error` will be set and `FALSE` will be returned. Otherwise, `TRUE` is returned.

`vtimezone` : | a vTimeZone object
`profile` : | a profile object
`error` : | error storage location or `NULL`
Returns : | success indicator

### mimedir_vtimezone_write_to_channel ()

    gboolean            mimedir_vtimezone_write_to_channel  (MIMEDirVTimeZone *vtimezone,
                                                             GIOChannel *channel,
                                                             GError **error);

Saves the vtimezone object to the supplied I/O channel. If an error occurs during the write, `error` will be set and `FALSE` will be returned. Otherwise, `TRUE` is returned.

`vtimezone` : | a vtimezone
`channel` : | I/O channel to save to
`error` : | error storage location or `NULL`
Returns : | success indicator

### mimedir_vtimezone_write_to_profile ()

    MIMEDirProfile*     mimedir_vtimezone_write_to_profile  (MIMEDirVTimeZone *vtimezone);

Saves the vtimezone object to a newly allocated profile object.

`vtimezone` : | a vtimezone
Returns : | a new profile

### mimedir_vtimezone_write_to_string ()

    gchar*              mimedir_vtimezone_write_to_string   (MIMEDirVTimeZone *vtimezone);

Saves the vtimezone object to a newly allocated memory buffer. You should free the returned buffer with `g_free()`.

`vtimezone` : | a vtimezone
Returns : | a newly allocated memory buffer