ICalTime

ICalTime

Functions

ICalTime * i_cal_time_new ()
ICalTime * i_cal_time_clone ()
ICalTime * i_cal_time_new_null_time ()
ICalTime * i_cal_time_new_null_date ()
ICalTime * i_cal_time_new_current_with_zone ()
ICalTime * i_cal_time_new_today ()
ICalTime * i_cal_time_new_from_timet_with_zone ()
ICalTime * i_cal_time_new_from_string ()
ICalTime * i_cal_time_new_from_day_of_year ()
time_t i_cal_time_as_timet ()
time_t i_cal_time_as_timet_with_zone ()
gchar * i_cal_time_as_ical_string ()
ICalTimezone * i_cal_time_get_timezone ()
void i_cal_time_set_timezone ()
const gchar * i_cal_time_get_tzid ()
gint i_cal_time_day_of_year ()
gint i_cal_time_day_of_week ()
gint i_cal_time_start_doy_week ()
gint i_cal_time_week_number ()
gboolean i_cal_time_is_null_time ()
gboolean i_cal_time_is_valid_time ()
gboolean i_cal_time_is_date ()
gboolean i_cal_time_is_utc ()
gint i_cal_time_compare ()
gint i_cal_time_compare_date_only ()
gint i_cal_time_compare_date_only_tz ()
void i_cal_time_adjust ()
ICalTime * i_cal_time_normalize ()
void i_cal_time_normalize_inplace ()
ICalTime * i_cal_time_convert_to_zone ()
void i_cal_time_convert_to_zone_inplace ()
gint i_cal_time_days_in_month ()
gboolean i_cal_time_days_is_leap_year ()
gint i_cal_time_days_in_year ()
ICalTimeSpan * i_cal_time_span_new ()
gint i_cal_time_span_overlaps ()
gint i_cal_time_span_contains ()
ICalTime * i_cal_time_add ()
ICalDuration * i_cal_time_subtract ()
gint i_cal_time_get_year ()
void i_cal_time_set_year ()
gint i_cal_time_get_month ()
void i_cal_time_set_month ()
gint i_cal_time_get_day ()
void i_cal_time_set_day ()
gint i_cal_time_get_hour ()
void i_cal_time_set_hour ()
gint i_cal_time_get_minute ()
void i_cal_time_set_minute ()
gint i_cal_time_get_second ()
void i_cal_time_set_second ()
void i_cal_time_set_is_date ()
gboolean i_cal_time_is_daylight ()
void i_cal_time_set_is_daylight ()
void i_cal_time_get_date ()
void i_cal_time_set_date ()
void i_cal_time_get_time ()
void i_cal_time_set_time ()

Types and Values

Object Hierarchy

    GObject
    ╰── ICalObject
        ╰── ICalTime

Description

Functions

i_cal_time_new ()

ICalTime *
i_cal_time_new (void);

Create a new ICalTime.

Returns

The newly created ICalTime. It is a null time.

[transfer full]

Since: 1.0


i_cal_time_clone ()

ICalTime *
i_cal_time_clone (const ICalTime *timetype);

Create a new ICalTime, copy of timetype .

Parameters

timetype

The ICalTime to clone.

 

Returns

The newly created ICalTime, copy of timetype .

[transfer full]

Since: 1.0


i_cal_time_new_null_time ()

ICalTime *
i_cal_time_new_null_time (void);

Create a default time which is an epoch time

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_null_date ()

ICalTime *
i_cal_time_new_null_date (void);

Create a null date, which indicates no time has been set

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_current_with_zone ()

ICalTime *
i_cal_time_new_current_with_zone (ICalTimezone *zone);

Create a ICalTime according to the timezone and current time

Parameters

zone

The timezone used to create a ICalTime according to the current time.

[nullable]

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_today ()

ICalTime *
i_cal_time_new_today (void);

Create a ICalTime representing today

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_from_timet_with_zone ()

ICalTime *
i_cal_time_new_from_timet_with_zone (const time_t v,
                                     gint is_date,
                                     ICalTimezone *zone);

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

Parameters

v

The seconds past since epoch time

 

is_date

Whether it is a date type, 1 if yes, 0 if not.

 

zone

The timezone, or NULL.

[nullable]

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_from_string ()

ICalTime *
i_cal_time_new_from_string (const gchar *str);

create a time from an ISO format string

Parameters

str

The ISO format string

 

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_new_from_day_of_year ()

ICalTime *
i_cal_time_new_from_day_of_year (const gint day,
                                 const gint year);

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

Parameters

day

The day of a year

 

year

The year

 

Returns

The newly created ICalTime.

[transfer full]

Since: 1.0


i_cal_time_as_timet ()

time_t
i_cal_time_as_timet (const ICalTime *tt);

Return the time as seconds past the UNIX epoch

Parameters

tt

The ICalTime to be converted

 

Returns

the time as seconds past the UNIX epoch

Since: 1.0


i_cal_time_as_timet_with_zone ()

time_t
i_cal_time_as_timet_with_zone (const ICalTime *tt,
                               const ICalTimezone *zone);

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

Parameters

tt

The ICalTime to be converted

 

zone

The timezone.

[nullable]

Returns

the time as seconds past the UNIX epoch

Since: 1.0


i_cal_time_as_ical_string ()

gchar *
i_cal_time_as_ical_string (const ICalTime *tt);

Return a string represention of the time, in RFC2445 format.

Parameters

tt

The ICalTime to be converted

 

Returns

The string representation.

[transfer full]

Since: 1.0


i_cal_time_get_timezone ()

ICalTimezone *
i_cal_time_get_timezone (const ICalTime *tt);

Return the timezone

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

Returns

The timezone information.

[transfer none]

Since: 1.0


i_cal_time_set_timezone ()

void
i_cal_time_set_timezone (ICalTime *tt,
                         const ICalTimezone *zone);

Set the timezone of the tt

Parameters

tt

The ICalTime

 

zone

The timezone.

[nullable]

Since: 1.0


i_cal_time_get_tzid ()

const gchar *
i_cal_time_get_tzid (const ICalTime *tt);

Return the tzid, or NULL for a floating time

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

Returns

The tzid of ICalTime, or NULL if floating type.

[allow-none][transfer none]

Since: 1.0


i_cal_time_day_of_year ()

gint
i_cal_time_day_of_year (const ICalTime *tt);

Return the day of the year of the given time

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

Returns

the day of the year of the given time

Since: 1.0


i_cal_time_day_of_week ()

gint
i_cal_time_day_of_week (const ICalTime *tt);

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

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

Returns

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

Since: 1.0


i_cal_time_start_doy_week ()

gint
i_cal_time_start_doy_week (const ICalTime *tt,
                           gint fdow);

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

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

fdow

The first day of the week

 

Returns

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

Since: 1.0


i_cal_time_week_number ()

gint
i_cal_time_week_number (const ICalTime *tt);

Return the week number for the week the given time is within.

Parameters

tt

The ICalTime to be queried.

[in][transfer none]

Returns

the week number for the week the given time is within.

Since: 1.0


i_cal_time_is_null_time ()

gboolean
i_cal_time_is_null_time (const ICalTime *tt);

Return true of the time is null.

Parameters

tt

The ICalTime to be checked.

[in][transfer none]

Returns

Whether tt is null_time. 1 if yes, 0 if not.

Since: 1.0


i_cal_time_is_valid_time ()

gboolean
i_cal_time_is_valid_time (const ICalTime *tt);

Return true of the time is null.

Parameters

tt

The ICalTime to be checked.

[in][transfer none]

Returns

Whether tt is null_time. 1 if yes, 0 if not.

Since: 1.0


i_cal_time_is_date ()

gboolean
i_cal_time_is_date (const ICalTime *tt);

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

Parameters

tt

The ICalTime to be checked.

[in][transfer none]

Returns

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

Since: 1.0


i_cal_time_is_utc ()

gboolean
i_cal_time_is_utc (const ICalTime *tt);

Returns true if time is relative to UTC zone.

Parameters

tt

The ICalTime to be checked.

[in][transfer none]

Returns

true if time is relative to UTC zone.

Since: 1.0


i_cal_time_compare ()

gint
i_cal_time_compare (const ICalTime *a,
                    const ICalTime *b);

Return -1, 0, or 1 to indicate that a less than b, a==b or a larger than b.

Parameters

a

The ICalTime to be compared.

[in][transfer none]

b

The ICalTime to be compared.

[in][transfer none]

Returns

-1, 0, or 1 to indicate that a less than b, a==b or a larger than b.

Since: 1.0


i_cal_time_compare_date_only ()

gint
i_cal_time_compare_date_only (const ICalTime *a,
                              const ICalTime *b);

like i_cal_time_compare, but only use the date parts.

Parameters

a

The ICalTime to be compared.

[in][transfer none]

b

The ICalTime to be compared.

[in][transfer none]

Returns

-1, 0, or 1 to indicate that a less than b, a==b or a larger than b.

Since: 1.0


i_cal_time_compare_date_only_tz ()

gint
i_cal_time_compare_date_only_tz (const ICalTime *a,
                                 const ICalTime *b,
                                 ICalTimezone *zone);

like i_cal_time_compare_tz, but only use the date parts.

Parameters

a

The ICalTime to be compared.

[in][transfer none]

b

The ICalTime to be compared.

[in][transfer none]

zone

The target timezone.

[nullable]

Returns

-1, 0, or 1 to indicate that a less than b, a==b or a larger than b.

Since: 1.0


i_cal_time_adjust ()

void
i_cal_time_adjust (ICalTime *tt,
                   const gint days,
                   const gint hours,
                   const gint minutes,
                   const gint seconds);

like i_cal_time_compare_tz, but only use the date parts.

Parameters

tt

The ICalTime to be set

 

days

difference of days adjusted

 

hours

difference of hours adjusted

 

minutes

difference of minutes adjusted

 

seconds

difference of seconds adjusted

 

Since: 1.0


i_cal_time_normalize ()

ICalTime *
i_cal_time_normalize (const ICalTime *t);

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

Parameters

t

The ICalTime to be normalized.

[in][transfer none]

Returns

The ICalTime normalized.

[transfer full]

Since: 1.0


i_cal_time_normalize_inplace ()

void
i_cal_time_normalize_inplace (ICalTime *tt);

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

Parameters

tt

The ICalTime to be normalized

 

Since: 3.0.5


i_cal_time_convert_to_zone ()

ICalTime *
i_cal_time_convert_to_zone (const ICalTime *tt,
                            ICalTimezone *zone);

Convert tt to zone and return new ICalTime object.

Parameters

tt

The ICalTime to be converted.

[in][transfer none]

zone

The target timezone.

[nullable]

Returns

The converted ICalTime.

[transfer full]

Since: 1.0


i_cal_time_convert_to_zone_inplace ()

void
i_cal_time_convert_to_zone_inplace (ICalTime *tt,
                                    ICalTimezone *zone);

Convert tt to zone and store the result into tt .

Parameters

tt

The ICalTime to be converted

 

zone

The target timezone.

[nullable]

Since: 3.0.5


i_cal_time_days_in_month ()

gint
i_cal_time_days_in_month (gint month,
                          gint year);

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

Parameters

month

The target month

 

year

The target year

 

Returns

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

Since: 1.0


i_cal_time_days_is_leap_year ()

gboolean
i_cal_time_days_is_leap_year (gint year);

Check whether a year is a leap year.

Parameters

year

The target year

 

Returns

whether the year is a leap year

Since: 1.0


i_cal_time_days_in_year ()

gint
i_cal_time_days_in_year (gint year);

Return the number of days in this year.

Parameters

year

The target year

 

Returns

Days in this year.

Since: 2.0


i_cal_time_span_new ()

ICalTimeSpan *
i_cal_time_span_new (ICalTime *dtstart,
                     ICalTime *dtend,
                     gint is_busy);

Create a new ICalTimeSpan.

Parameters

dtstart

The start of ICalTimeSpan

 

dtend

The end of ICalTimeSpan

 

is_busy

Whether this span is busy

 

Returns

The newly create ICalTimeSpan.

[transfer full]

Since: 1.0


i_cal_time_span_overlaps ()

gint
i_cal_time_span_overlaps (ICalTimeSpan *s1,
                          ICalTimeSpan *s2);

Check whether two spans overlap.

Parameters

s1

The first ICalTimeSpan

 

s2

The second ICalTimeSpan

 

Returns

Whether these two span are overlapped.

Since: 1.0


i_cal_time_span_contains ()

gint
i_cal_time_span_contains (ICalTimeSpan *s,
                          ICalTimeSpan *container);

Check whether one ICalTimeSpan is contained in another ICalTimeSpan.

Parameters

s

The test ICalTimeSpan

 

container

The target container of ICalTimeSpan

 

Returns

Whether one ICalTimeSpan is contained in another ICalTimeSpan.

Since: 1.0


i_cal_time_add ()

ICalTime *
i_cal_time_add (ICalTime *t,
                ICalDuration *d);

Add a time duration on the time.

Parameters

t

A ICalTime to be operated on.

 

d

A ICalDuration as the difference.

 

Returns

The ICalTime results. The native object is the same. But since it is a bare object, so it won't cause segmentation.

[transfer full]

Since: 2.0


i_cal_time_subtract ()

ICalDuration *
i_cal_time_subtract (ICalTime *t1,
                     ICalTime *t2);

Get the duration between two time.

Parameters

t1

The subtracted ICalTime.

 

t2

The subtracting ICalTime.

 

Returns

The ICalDuration between two ICalTime.

[transfer full]

Since: 2.0


i_cal_time_get_year ()

gint
i_cal_time_get_year (const ICalTime *timetype);

Get the year of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The year.

Since: 1.0


i_cal_time_set_year ()

void
i_cal_time_set_year (ICalTime *timetype,
                     gint year);

Set the year of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

year

The year.

 

Since: 1.0


i_cal_time_get_month ()

gint
i_cal_time_get_month (const ICalTime *timetype);

Get the month of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The month.

Since: 1.0


i_cal_time_set_month ()

void
i_cal_time_set_month (ICalTime *timetype,
                      gint month);

Set the month of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

month

The month.

 

Since: 1.0


i_cal_time_get_day ()

gint
i_cal_time_get_day (const ICalTime *timetype);

Get the day of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The day.

Since: 1.0


i_cal_time_set_day ()

void
i_cal_time_set_day (ICalTime *timetype,
                    gint day);

Set the day of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

day

The day.

 

Since: 1.0


i_cal_time_get_hour ()

gint
i_cal_time_get_hour (const ICalTime *timetype);

Get the hour of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The hour.

Since: 1.0


i_cal_time_set_hour ()

void
i_cal_time_set_hour (ICalTime *timetype,
                     gint hour);

Set the hour of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

hour

The hour.

 

Since: 1.0


i_cal_time_get_minute ()

gint
i_cal_time_get_minute (const ICalTime *timetype);

Get the minute of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The minute.

Since: 1.0


i_cal_time_set_minute ()

void
i_cal_time_set_minute (ICalTime *timetype,
                       gint minute);

Set the minute of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

minute

The minute.

 

Since: 1.0


i_cal_time_get_second ()

gint
i_cal_time_get_second (const ICalTime *timetype);

Get the second of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The second.

Since: 1.0


i_cal_time_set_second ()

void
i_cal_time_set_second (ICalTime *timetype,
                       gint second);

Set the second of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

second

The second.

 

Since: 1.0


i_cal_time_set_is_date ()

void
i_cal_time_set_is_date (ICalTime *timetype,
                        gboolean is_date);

Set the is_date of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

is_date

The is_date.

 

Since: 1.0


i_cal_time_is_daylight ()

gboolean
i_cal_time_is_daylight (const ICalTime *timetype);

Get the is_daylight of ICalTime.

Parameters

timetype

The ICalTime to be queried.

 

Returns

The is_daylight.

Since: 1.0


i_cal_time_set_is_daylight ()

void
i_cal_time_set_is_daylight (ICalTime *timetype,
                            gboolean is_daylight);

Set the is_daylight of ICalTime.

Parameters

timetype

The ICalTime to be set.

 

is_daylight

The is_daylight.

 

Since: 1.0


i_cal_time_get_date ()

void
i_cal_time_get_date (const ICalTime *timetype,
                     gint *year,
                     gint *month,
                     gint *day);

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

Parameters

timetype

The ICalTime to be queried.

 

year

Out parameter for the 'year' part of the date.

[out caller-allocates][optional]

month

Out parameter for the 'month' part of the date.

[out caller-allocates][optional]

day

Out parameter for the 'day' part of the date.

[out caller-allocates][optional]

Since: 1.0


i_cal_time_set_date ()

void
i_cal_time_set_date (ICalTime *timetype,
                     gint year,
                     gint month,
                     gint day);

Set the year/month/date parts of the timetype in one call. This doesn't verify validity of the given date.

Parameters

timetype

The ICalTime to be set to.

 

year

The 'year' part of the date.

 

month

The 'month' part of the date.

 

day

The 'day' part of the date.

 

Since: 1.0


i_cal_time_get_time ()

void
i_cal_time_get_time (const ICalTime *timetype,
                     gint *hour,
                     gint *minute,
                     gint *second);

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

Parameters

timetype

The ICalTime to be queried.

 

hour

Out parameter for the 'hour' part of the time.

[out caller-allocates][optional]

minute

Out parameter for the 'minute' part of the time.

[out caller-allocates][optional]

second

Out parameter for the 'second' part of the time.

[out caller-allocates][optional]

Since: 1.0


i_cal_time_set_time ()

void
i_cal_time_set_time (ICalTime *timetype,
                     gint hour,
                     gint minute,
                     gint second);

Set the hour/minute/second parts of the timetype in one call. This doesn't verify validity of the given time.

Parameters

timetype

The ICalTime to be set to.

 

hour

The 'hour' part of the time.

 

minute

The 'minute' part of the time.

 

second

The 'second' part of the time.

 

Since: 1.0

Types and Values

ICalTime

typedef struct _ICalTime ICalTime;

This is the ICalTime instance.


struct ICalTimeClass

struct ICalTimeClass {
};

This is the ICalTime class.