|
Libical API Documentation
3.0
|
Methods for working with durations in iCal. More...
Go to the source code of this file.
Data Structures | |
| struct | icaldurationtype |
| A struct representing a duration. More... | |
Macros | |
| #define | ICALDURATIONTYPE_INITIALIZER { 0, 0, 0, 0, 0, 0 } |
Functions | |
| char * | icaldurationtype_as_ical_string (struct icaldurationtype d) |
| char * | icaldurationtype_as_ical_string_r (struct icaldurationtype d) |
| int | icaldurationtype_as_int (struct icaldurationtype duration) |
Converts an icaldurationtype into the duration in seconds as int. More... | |
| struct icaldurationtype | icaldurationtype_bad_duration (void) |
| Creates a bad duration (used to indicate error). More... | |
| struct icaldurationtype | icaldurationtype_from_int (int t) |
| Creates a new icaldurationtype from a duration in seconds. More... | |
| struct icaldurationtype | icaldurationtype_from_string (const char *dur) |
| Creates a new icaldurationtype from a duration given as a string. More... | |
| int | icaldurationtype_is_bad_duration (struct icaldurationtype d) |
| Checks if a duration is a bad duration. More... | |
| int | icaldurationtype_is_null_duration (struct icaldurationtype d) |
| Checks if a duration is a null duration. More... | |
| struct icaldurationtype | icaldurationtype_null_duration (void) |
| Creates a duration with zero length. More... | |
| struct icaltimetype | icaltime_add (struct icaltimetype t, struct icaldurationtype d) |
| Adds a duration to an icaltime object and returns the result. More... | |
| struct icaldurationtype | icaltime_subtract (struct icaltimetype t1, struct icaltimetype t2) |
| Returns the difference between two icaltimetype as a duration. More... | |
Methods for working with durations in iCal.
| char* icaldurationtype_as_ical_string | ( | struct icaldurationtype | d | ) |
Converts an icaldurationtype into the iCal format as string.
| d | is the icaldurationtype to convert to iCal format |
d in iCal format free() after it's no longer needed.```c // create new duration struct icaldurationtype duration; duration = icaldurationtype_from_int(3424224);
// print as ical-formatted string char *ical = icaldurationtype_as_ical_string(duration); printf("%s\n", ical);
// release string free(ical);
| char* icaldurationtype_as_ical_string_r | ( | struct icaldurationtype | d | ) |
Converts an icaldurationtype into the iCal format as string.
| d | is the icaldurationtype to convert to iCal format |
d in iCal format ```c // create new duration struct icaldurationtype duration; duration = icaldurationtype_from_int(3424224);
// print as ical-formatted string printf("%s\n", icaldurationtype_as_ical_string(duration));
| int icaldurationtype_as_int | ( | struct icaldurationtype | duration | ) |
Converts an icaldurationtype into the duration in seconds as int.
| duration | The duration to convert to seconds |
int representing the duration in seconds```c // create icaldurationtype with given duration struct icaldurationtype duration; duration = icaldurationtype_from_int(3532342);
// get the duration in seconds and verify it assert(icaldurationtype_as_int(duration) == 3532342);
| struct icaldurationtype icaldurationtype_bad_duration | ( | void | ) |
Creates a bad duration (used to indicate error).
```c // create bad duration struct icaldurationtype duration; duration = icaldurationtype_bad_duration();
// make sure it's bad assert(icaldurationtype_is_bad_duration(duration));
| struct icaldurationtype icaldurationtype_from_int | ( | int | t | ) |
Creates a new icaldurationtype from a duration in seconds.
| t | The duration in seconds |
```c // create a new icaldurationtype with a duration of 60 seconds struct icaldurationtype duration; duration = icaldurationtype_from_int(60);
// verify that the duration is one minute assert(duration.minutes == 1);
| struct icaldurationtype icaldurationtype_from_string | ( | const char * | dur | ) |
Creates a new icaldurationtype from a duration given as a string.
| dur | The duration as a string |
```c // create a new icaldurationtype struct icaldurationtype duration; duration = icaldurationtype_from_string("+PT05M");
// verify that it's 5 minutes assert(duration.minutes == 5);
| int icaldurationtype_is_bad_duration | ( | struct icaldurationtype | d | ) |
Checks if a duration is a bad duration.
| d | The duration to check |
``` // make bad duration struct icaldurationtype duration; duration = icaldurationtype_bad_duration();
// check bad duration assert(icaldurationtype_is_bad_duration(duration));
| int icaldurationtype_is_null_duration | ( | struct icaldurationtype | d | ) |
Checks if a duration is a null duration.
| d | The duration to check |
``` // make null duration struct icaldurationtype duration; duration = icaldurationtype_null_duration();
// check null duration assert(icaldurationtype_is_null_duration(duration));
| struct icaldurationtype icaldurationtype_null_duration | ( | void | ) |
Creates a duration with zero length.
```c // create null duration struct icaldurationtype duration; duration = icaldurationtype_null_duration();
// make sure it's zero length assert(duration.days == 0); assert(duration.weeks == 0); assert(duration.hours == 0); assert(duration.minutes == 0); assert(duration.seconds == 0); assert(icalduration_is_null_duration(duration)); assert(icalduration_as_int(duration) == 0);
| struct icaltimetype icaltime_add | ( | struct icaltimetype | t, |
| struct icaldurationtype | d | ||
| ) |
Adds a duration to an icaltime object and returns the result.
| t | The time object to add the duration to |
| d | The duration to add to the time object |
```c struct icaltimetype time; struct icaldurationtype duration;
// create time and duration objects time = icaltime_today(); duration = icaldurationtype_from_int(60);
// add the duration to the time object time = icaltime_add(time, duration);
| struct icaldurationtype icaltime_subtract | ( | struct icaltimetype | t1, |
| struct icaltimetype | t2 | ||
| ) |
Returns the difference between two icaltimetype as a duration.
| t1 | The first point in time |
| t2 | The second point in time |
```c struct icaltimetype t1 = icaltime_from_day_of_year(111, 2018); struct icaltimetype t2 = icaltime_from_day_of_year(112, 2018); struct icaldurationtype duration;
// calculate duration between time points duration = icaltime_subtract(t1, t2);
1.8.10