summaryrefslogtreecommitdiffabout
path: root/libical/src/libicalss/icalspanlist.h
Unidiff
Diffstat (limited to 'libical/src/libicalss/icalspanlist.h') (more/less context) (ignore whitespace changes)
-rw-r--r--libical/src/libicalss/icalspanlist.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/libical/src/libicalss/icalspanlist.h b/libical/src/libicalss/icalspanlist.h
new file mode 100644
index 0000000..83cb1c8
--- a/dev/null
+++ b/libical/src/libicalss/icalspanlist.h
@@ -0,0 +1,54 @@
1/* -*- Mode: C -*- */
2/*======================================================================
3 FILE: icalspanlist.h
4 CREATOR: eric 21 Aug 2000
5
6
7 $Id$
8 $Locker$
9
10 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org
11
12 This program is free software; you can redistribute it and/or modify
13 it under the terms of either:
14
15 The LGPL as published by the Free Software Foundation, version
16 2.1, available at: http://www.fsf.org/copyleft/lesser.html
17
18 Or:
19
20 The Mozilla Public License Version 1.0. You may obtain a copy of
21 the License at http://www.mozilla.org/MPL/
22
23
24 =========================================================================*/
25#ifndef ICALSPANLIST_H
26#define ICALSPANLIST_H
27
28#include "ical.h"
29#include "icalset.h"
30
31typedef void icalspanlist;
32
33/* Make a free list from a set of component. Start and end should be in UTC */
34icalspanlist* icalspanlist_new(icalset *set,
35 struct icaltimetype start,
36 struct icaltimetype end);
37
38void icalspanlist_free(icalspanlist* spl);
39
40icalcomponent* icalspanlist_make_free_list(icalspanlist* sl);
41icalcomponent* icalspanlist_make_busy_list(icalspanlist* sl);
42
43/* Get first free or busy time after time t. all times are in UTC */
44struct icalperiodtype icalspanlist_next_free_time(icalspanlist* sl,
45 struct icaltimetype t);
46struct icalperiodtype icalspanlist_next_busy_time(icalspanlist* sl,
47 struct icaltimetype t);
48
49void icalspanlist_dump(icalspanlist* s);
50
51#endif
52
53
54