blob: e5f4cf7fadb81e752709a99a8bfce0c4043c7839 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#ifndef VCAL_H
#define VCAL_H
#include <stdlib.h>
#include "strbuf.h"
/*
* It's intentionall that there is no vevent_init. That since
* the length of the strings isn't known.
*/
typedef struct {
string dtstart;
string dtend;
string summary;
string description;
} vevent;
/*
* Deep copy from src -> dest
* Requires dest to be initialized beforehand
* TODO possibly remove this.
*/
int copy_vevent(vevent* dest, vevent* src);
/*
* Copies src -> dest, initializing all the strings along the way.
* Requires dest to be initialized.
*/
int vevent_init_copy(vevent* dest, vevent* src);
int free_vevent(vevent* ev);
typedef struct {
size_t n_events;
size_t alloc;
vevent* events;
} vcalendar;
int init_vcalendar(vcalendar* cal);
int free_vcalendar(vcalendar* cal);
int push_event(vcalendar* cal, vevent* ev);
#endif /* VCAL_H */
|