Libical API Documentation 3.0

icalspanlist.h
Go to the documentation of this file.
1/*======================================================================
2 FILE: icalspanlist.h
3 CREATOR: eric 21 Aug 2000
4
5 (C) COPYRIGHT 2000, Eric Busboom <eric@civicknowledge.com>
6
7 This library is free software; you can redistribute it and/or modify
8 it under the terms of either:
9
10 The LGPL as published by the Free Software Foundation, version
11 2.1, available at: https://www.gnu.org/licenses/lgpl-2.1.html
12
13 Or:
14
15 The Mozilla Public License Version 2.0. You may obtain a copy of
16 the License at https://www.mozilla.org/MPL/
17=========================================================================*/
18#ifndef ICALSPANLIST_H
19#define ICALSPANLIST_H
20
21#include "libical_icalss_export.h"
22#include "icalset.h"
23
28 typedef struct icalspanlist_impl icalspanlist;
29
42LIBICAL_ICALSS_EXPORT icalspanlist *icalspanlist_new(icalset *set,
43 struct icaltimetype start,
44 struct icaltimetype end);
45
51LIBICAL_ICALSS_EXPORT void icalspanlist_free(icalspanlist *spl);
52
61LIBICAL_ICALSS_EXPORT struct icalperiodtype icalspanlist_next_free_time(icalspanlist *sl,
62 struct icaltimetype t);
63
67LIBICAL_ICALSS_EXPORT void icalspanlist_dump(icalspanlist *s);
68
83LIBICAL_ICALSS_EXPORT icalcomponent *icalspanlist_as_vfreebusy(icalspanlist *sl,
84 const char *organizer,
85 const char *attendee);
86
106LIBICAL_ICALSS_EXPORT int *icalspanlist_as_freebusy_matrix(icalspanlist *span, int delta_t);
107
117LIBICAL_ICALSS_EXPORT icalspanlist *icalspanlist_from_vfreebusy(icalcomponent *comp);
118
119#endif
icalset.h
icalspanlist_dump
void icalspanlist_dump(icalspanlist *s)
(Debug) print out spanlist to STDOUT.
Definition: icalspanlist.c:210
icalspanlist_as_freebusy_matrix
int * icalspanlist_as_freebusy_matrix(icalspanlist *span, int delta_t)
Returns an hour-by-hour array of free/busy times over a given period.
Definition: icalspanlist.c:289
icalspanlist_from_vfreebusy
icalspanlist * icalspanlist_from_vfreebusy(icalcomponent *comp)
Constructs an icalspanlist from a VFREEBUSY component.
Definition: icalspanlist.c:401
icalspanlist_free
void icalspanlist_free(icalspanlist *spl)
Destructor.
Definition: icalspanlist.c:192
icalspanlist_new
icalspanlist * icalspanlist_new(icalset *set, struct icaltimetype start, struct icaltimetype end)
Makes a free list from a set of VEVENT components.
Definition: icalspanlist.c:90
icalspanlist_as_vfreebusy
icalcomponent * icalspanlist_as_vfreebusy(icalspanlist *sl, const char *organizer, const char *attendee)
Returns a VFREEBUSY component for a spanlist.
Definition: icalspanlist.c:350
icalspanlist_next_free_time
struct icalperiodtype icalspanlist_next_free_time(icalspanlist *sl, struct icaltimetype t)
Finds the next free time span in a spanlist.
Definition: icalspanlist.c:226
icalcomponent_impl
Definition: icalcomponent.c:36
icalperiodtype
Struct to represent a period in time.
Definition: icalperiod.h:38
icalset_impl
Definition: icalset.h:61
icalspanlist_impl
Definition: icalspanlist.c:29
icalspanlist_impl::start
struct icaltimetype start
Definition: icalspanlist.c:31
icalspanlist_impl::end
struct icaltimetype end
Definition: icalspanlist.c:32
icaltimetype
Definition: icaltime.h:105