### Class

# ICalGLib Time

#### Description [src]

    final class ICalGLib.Time : ICalGLib.Object
    {
      /* No available fields */
    }

This is the ICalTime instance.

#### Hierarchy

#### Ancestors

- ICalObject
- GObject

#### Constructors

###### i_cal_time_new

Creates a new `ICalTime`.

since: 1.0

###### i_cal_time_new_current_with_zone

Creates a `ICalTime` according to the timezone and current time.

since: 1.0

###### i_cal_time_new_from_day_of_year

Creates a new time, given a day of year and a year.

since: 1.0

###### i_cal_time_new_from_string

Creates a time from an ISO-8601-2004 basic time string.

since: 1.0

###### i_cal_time_new_from_timet_with_zone

Converts seconds past UNIX epoch to a timetype, using timezones.

since: 1.0

###### i_cal_time_new_full

Create a new libical-glib object from the native libical object and the owner.

since: 1.0

###### i_cal_time_new_null_date

Creates a null date, which indicates no time has been set.

since: 1.0

###### i_cal_time_new_null_time

Creates a default time which is an epoch time.

since: 1.0

###### i_cal_time_new_today

Creates a `ICalTime` representing today.

since: 1.0

#### Functions

###### i_cal_time_days_in_month

Gets the number of days in the target month in the target year.

since: 1.0

###### i_cal_time_days_in_year

Returns the number of days in this year.

since: 2.0

###### i_cal_time_days_is_leap_year

Checks whether a year is a leap year.

since: 1.0

###### i_cal_time_timezone_expand_vtimezone

Applies a list of timezone changes on the array of components until the end year.

since: 2.0

#### Instance methods

###### i_cal_time_adjust

Adds or subtracts a number of days, hours, minutes and seconds from `tt`.

since: 1.0

###### i_cal_time_as_ical_string

Returns a string representation of the time, in RFC2445 format.

since: 1.0

###### i_cal_time_as_timet

Returns the time as seconds past the UNIX epoch.

since: 1.0

###### i_cal_time_as_timet_with_zone

Returns the time as seconds past the UNIX epoch, using timezones.

since: 1.0

###### i_cal_time_clone

Creates a new `ICalTime`, copy of `timetype`.

since: 1.0

###### i_cal_time_compare

I_cal_time_compare returns an integer indicating the result of the comparison, as follow:.

since: 1.0

###### i_cal_time_compare_date_only

Like i_cal_time_compare(), but only use the date parts.

since: 1.0

###### i_cal_time_compare_date_only_tz

Like i_cal_time_compare_tz(), but only use the date parts; accepts timezone.

since: 1.0

###### i_cal_time_convert_timezone

Convert time from one timezone to another.

since: 1.0

###### i_cal_time_convert_to_zone

Converts `tt` to `zone` and return new `ICalTime` object.

since: 1.0

###### i_cal_time_convert_to_zone_inplace

Converts `tt` to `zone` and store the result into `tt`.

since: 3.0.5

###### i_cal_time_day_of_week

Returns the day of the week of the given time. Sunday is 1.

since: 1.0

###### i_cal_time_day_of_year

Returns the day of the year of the given time.

since: 1.0

###### i_cal_time_get_date

Gets the year/month/date parts of the `timetype` in one call.

since: 1.0

###### i_cal_time_get_day

Gets the day of `ICalTime`.

since: 1.0

###### i_cal_time_get_hour

Gets the hour of `ICalTime`.

since: 1.0

###### i_cal_time_get_minute

Gets the minute of `ICalTime`.

since: 1.0

###### i_cal_time_get_month

Gets the month of `ICalTime`.

since: 1.0

###### i_cal_time_get_second

Gets the second of `ICalTime`.

since: 1.0

###### i_cal_time_get_time

Gets the hour/minute/second parts of the `timetype` in one call.

since: 1.0

###### i_cal_time_get_timezone

Returns the timezone, the `ICalTimezone` object is cached and can be either unreferenced once the last instance is used or can be kept until `i_cal_object_free_global_objects()` is called (usually at the very end of the program).

since: 1.0

###### i_cal_time_get_tzid

Returns the tzid, or NULL for a floating time.

since: 1.0

###### i_cal_time_get_year

Gets the year of `ICalTime`.

since: 1.0

###### i_cal_time_is_date

Returns true if time is of DATE type, false if DATE-TIME.

since: 1.0

###### i_cal_time_is_daylight

Gets the is_daylight of `ICalTime`.

since: 1.0

###### i_cal_time_is_null_time

Returns true if the time is null.

since: 1.0

###### i_cal_time_is_utc

Returns true if time is relative to UTC zone.

since: 1.0

###### i_cal_time_is_valid_time

Returns true if the time is null.

since: 1.0

###### i_cal_time_normalize

Normalizes the icaltime, so that all fields are within the normal range.

since: 1.0

###### i_cal_time_normalize_inplace

Normalizes the `tt`, so that all fields are within the normal range.

since: 3.0.5

###### i_cal_time_set_date

Sets the year/month/date parts of the `timetype` in one call. This doesn’t verify validity of the given date.

since: 1.0

###### i_cal_time_set_day

Sets the day of `ICalTime`.

since: 1.0

###### i_cal_time_set_hour

Sets the hour of `ICalTime`.

since: 1.0

###### i_cal_time_set_is_date

Sets the is_date of `ICalTime`.

since: 1.0

###### i_cal_time_set_is_daylight

Sets the is_daylight of `ICalTime`.

since: 1.0

###### i_cal_time_set_minute

Sets the minute of `ICalTime`.

since: 1.0

###### i_cal_time_set_month

Sets the month of `ICalTime`.

since: 1.0

###### i_cal_time_set_second

Sets the second of `ICalTime`.

since: 1.0

###### i_cal_time_set_time

Sets the hour/minute/second parts of the `timetype` in one call. This doesn’t verify validity of the given time.

since: 1.0

###### i_cal_time_set_timezone

Sets the timezone of the `tt`.

since: 1.0

###### i_cal_time_set_year

Sets the year of `ICalTime`.

since: 1.0

###### i_cal_time_start_doy_week

Returns the day of the year for the first day of the week that the given time is within.

since: 1.0

##### Methods inherited from ICalObject (12)

###### i_cal_object_add_depender

Adds a `depender` into the list of objects which should not be destroyed before this `iobject`. It’s usually used for cases where the `iobject` uses native libical structure from the `depender`. The `depender` is referenced. It’s illegal to try to add one `depender` multiple times.

since: 1.0

###### i_cal_object_get_always_destroy

Obtain the `ICalObject`::always-destroy property value.

since: 3.0.11

###### i_cal_object_get_is_global_memory

Obtains whether the native libical structure is a global shared memory, thus should not be destroyed. This can be set only during construction time.

since: 1.0

###### i_cal_object_get_native

Obtain native libical structure pointer associated with this `iobject`.

since: 1.0

###### i_cal_object_get_native_destroy_func

Obtain a pointer to a function responsible to free the libical native structure.

since: 1.0

###### i_cal_object_ref_owner

Obtain current owner of the native libical structure. The returned pointer, if not NULL, is referenced for thread safety. Unref it with g_object_unref when done with it.

since: 1.0

###### i_cal_object_remove_depender

Removes a `depender` from the list of objects which should not be destroyed before this `iobject`, previously added with i_cal_object_add_depender(). It’s illegal to try to remove the `depender` which is not in the internal list.

since: 1.0

###### i_cal_object_remove_owner

Unref and remove the owner.

since: 1.0

###### i_cal_object_set_always_destroy

Sets the `ICalObject`::always-destroy property value. When `TRUE`, the native libical structure is always freed, even when an owner of the `iobject` is set.

since: 3.0.11

###### i_cal_object_set_native_destroy_func

Sets a function to be used to destroy the native libical structure.

since: 1.0

###### i_cal_object_set_owner

Sets an owner of the native libical structure, that is an object responsible for a destroy of the native libical structure.

since: 1.0

###### i_cal_object_steal_native

Obtain native libical structure pointer associated with this `iobject` and sets the one at `iobject` to NULL, thus it’s invalid since now on.

since: 1.0

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

Please see GObject for a full list of methods.

#### Properties

##### Properties inherited from ICalObject (5)

###### ICalGLib.Object:always-destroy

Whether free the native libical structure on `ICalObject`‘s finalize even if the object has set an owner.

since: 3.0.11

###### ICalGLib.Object:is-global-memory

Whether the native libical structure is from a global shared memory. If TRUE, then it is not freed on `ICalObject`‘s finalize.

###### ICalGLib.Object:native

The native libical structure for this ICalObject.

###### ICalGLib.Object:native-destroy-func

GDestroyNotify function to use to destroy the native libical pointer.

###### ICalGLib.Object:owner

Owner of the native libical structure. If set, then it is responsible for a free of the native libical structure.

#### 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 ICalGLibTimeClass {
      /* no available fields */
    }

This is the ICalTime class.