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@softwarestudio.org>
6  http://www.softwarestudio.org
7 
8  This library is free software; you can redistribute it and/or modify
9  it under the terms of either:
10 
11  The LGPL as published by the Free Software Foundation, version
12  2.1, available at: http://www.gnu.org/licenses/lgpl-2.1.html
13 
14  Or:
15 
16  The Mozilla Public License Version 2.0. You may obtain a copy of
17  the License at http://www.mozilla.org/MPL/
18 =========================================================================*/
19 #ifndef ICALSPANLIST_H
20 #define ICALSPANLIST_H
21 
22 #include "libical_icalss_export.h"
23 #include "icalset.h"
24 
29 typedef struct icalspanlist_impl icalspanlist;
30 
35 LIBICAL_ICALSS_EXPORT icalspanlist *icalspanlist_new(icalset *set,
36  struct icaltimetype start,
37  struct icaltimetype end);
38 
41 LIBICAL_ICALSS_EXPORT void icalspanlist_free(icalspanlist *spl);
42 
44 LIBICAL_ICALSS_EXPORT struct icalperiodtype icalspanlist_next_free_time(icalspanlist *sl,
45  struct icaltimetype t);
46 
47 LIBICAL_ICALSS_EXPORT void icalspanlist_dump(icalspanlist *s);
48 
50 LIBICAL_ICALSS_EXPORT icalcomponent *icalspanlist_as_vfreebusy(icalspanlist *sl,
51  const char *organizer,
52  const char *attendee);
53 
55 LIBICAL_ICALSS_EXPORT int *icalspanlist_as_freebusy_matrix(icalspanlist *span, int delta_t);
56 
58 LIBICAL_ICALSS_EXPORT icalspanlist *icalspanlist_from_vfreebusy(icalcomponent *comp);
59 
60 #endif
struct icaltimetype end
Definition: icalspanlist.c:33
Struct to represent a period in time.
Definition: icalperiod.h:38
Definition: icalspanlist.c:29
void icalspanlist_dump(icalspanlist *s)
(Debug) print out spanlist to stdout.
Definition: icalspanlist.c:233
icalspanlist * icalspanlist_from_vfreebusy(icalcomponent *comp)
Construct an icalspanlist from a VFREEBUSY component.
Definition: icalspanlist.c:477
struct icaltimetype start
Definition: icalspanlist.c:32
int * icalspanlist_as_freebusy_matrix(icalspanlist *span, int delta_t)
Return an integer matrix of total events per delta_t timespan.
Definition: icalspanlist.c:341
icalspanlist * icalspanlist_new(icalset *set, struct icaltimetype start, struct icaltimetype end)
Constructor Make a free list from a set of component. Start and end should be in UTC.
Definition: icalspanlist.c:103
Definition: icalcomponent.c:33
Definition: icaltime.h:105
Definition: icalset.h:60
struct icalperiodtype icalspanlist_next_free_time(icalspanlist *sl, struct icaltimetype t)
Find next free time span in a spanlist.
Definition: icalspanlist.c:258
icalcomponent * icalspanlist_as_vfreebusy(icalspanlist *sl, const char *organizer, const char *attendee)
Return a valid VFREEBUSY component for this span.
Definition: icalspanlist.c:417
void icalspanlist_free(icalspanlist *spl)
Destructor.
Definition: icalspanlist.c:211