20 #ifndef ICALCOMPONENT_H
21 #define ICALCOMPONENT_H
23 #include "libical_ical_export.h"
24 #include "icalenums.h"
25 #include "icalproperty.h"
34 icalcomponent_kind kind;
39 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new(icalcomponent_kind kind);
43 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_from_string(
const char *str);
45 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_vanew(icalcomponent_kind kind, ...);
47 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_x(
const char *x_name);
49 LIBICAL_ICAL_EXPORT
void icalcomponent_free(
icalcomponent *component);
51 LIBICAL_ICAL_EXPORT
char *icalcomponent_as_ical_string(
icalcomponent *component);
53 LIBICAL_ICAL_EXPORT
char *icalcomponent_as_ical_string_r(
icalcomponent *component);
55 LIBICAL_ICAL_EXPORT
int icalcomponent_is_valid(
icalcomponent *component);
57 LIBICAL_ICAL_EXPORT icalcomponent_kind icalcomponent_isa(
const icalcomponent *component);
59 LIBICAL_ICAL_EXPORT
int icalcomponent_isa_component(
void *component);
65 LIBICAL_ICAL_EXPORT
void icalcomponent_add_property(
icalcomponent *component,
66 icalproperty *property);
68 LIBICAL_ICAL_EXPORT
void icalcomponent_remove_property(
icalcomponent *component,
69 icalproperty *property);
71 LIBICAL_ICAL_EXPORT
int icalcomponent_count_properties(
icalcomponent *component,
72 icalproperty_kind kind);
74 LIBICAL_ICAL_EXPORT
icalcomponent *icalproperty_get_parent(
const icalproperty *property);
77 LIBICAL_ICAL_EXPORT icalproperty *icalcomponent_get_current_property(
icalcomponent *component);
79 LIBICAL_ICAL_EXPORT icalproperty *icalcomponent_get_first_property(
icalcomponent *component,
80 icalproperty_kind kind);
81 LIBICAL_ICAL_EXPORT icalproperty *icalcomponent_get_next_property(
icalcomponent *component,
82 icalproperty_kind kind);
95 LIBICAL_ICAL_EXPORT
void icalcomponent_remove_component(
icalcomponent *parent,
98 LIBICAL_ICAL_EXPORT
int icalcomponent_count_components(
icalcomponent *component,
99 icalcomponent_kind kind);
105 LIBICAL_ICAL_EXPORT
void icalcomponent_merge_component(
icalcomponent *comp,
117 icalcomponent_kind kind);
119 icalcomponent_kind kind);
123 icalcomponent_kind kind);
126 icalcomponent_kind kind);
138 LIBICAL_ICAL_EXPORT
int icalcomponent_check_restrictions(
icalcomponent *comp);
141 LIBICAL_ICAL_EXPORT
int icalcomponent_count_errors(
icalcomponent *component);
144 LIBICAL_ICAL_EXPORT
void icalcomponent_strip_errors(
icalcomponent *component);
147 LIBICAL_ICAL_EXPORT
void icalcomponent_convert_errors(
icalcomponent *component);
152 LIBICAL_ICAL_EXPORT
void icalcomponent_set_parent(
icalcomponent *component,
157 LIBICAL_ICAL_EXPORT
int icalcomponent_kind_is_valid(
const icalcomponent_kind kind);
159 LIBICAL_ICAL_EXPORT icalcomponent_kind icalcomponent_string_to_kind(
const char *
string);
161 LIBICAL_ICAL_EXPORT
const char *icalcomponent_kind_to_string(icalcomponent_kind kind);
199 LIBICAL_ICAL_EXPORT
void icalcomponent_set_duration(
icalcomponent *comp,
204 LIBICAL_ICAL_EXPORT
void icalcomponent_set_method(
icalcomponent *comp, icalproperty_method method);
206 LIBICAL_ICAL_EXPORT icalproperty_method icalcomponent_get_method(
icalcomponent *comp);
212 LIBICAL_ICAL_EXPORT
void icalcomponent_set_summary(
icalcomponent *comp,
const char *v);
214 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_summary(
icalcomponent *comp);
216 LIBICAL_ICAL_EXPORT
void icalcomponent_set_comment(
icalcomponent *comp,
const char *v);
218 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_comment(
icalcomponent *comp);
220 LIBICAL_ICAL_EXPORT
void icalcomponent_set_uid(
icalcomponent *comp,
const char *v);
222 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_uid(
icalcomponent *comp);
224 LIBICAL_ICAL_EXPORT
void icalcomponent_set_relcalid(
icalcomponent *comp,
const char *v);
226 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_relcalid(
icalcomponent *comp);
228 LIBICAL_ICAL_EXPORT
void icalcomponent_set_recurrenceid(
icalcomponent *comp,
233 LIBICAL_ICAL_EXPORT
void icalcomponent_set_description(
icalcomponent *comp,
const char *v);
235 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_description(
icalcomponent *comp);
237 LIBICAL_ICAL_EXPORT
void icalcomponent_set_location(
icalcomponent *comp,
const char *v);
239 LIBICAL_ICAL_EXPORT
const char *icalcomponent_get_location(
icalcomponent *comp);
241 LIBICAL_ICAL_EXPORT
void icalcomponent_set_sequence(
icalcomponent *comp,
int v);
243 LIBICAL_ICAL_EXPORT
int icalcomponent_get_sequence(
icalcomponent *comp);
245 LIBICAL_ICAL_EXPORT
void icalcomponent_set_status(
icalcomponent *comp,
enum icalproperty_status v);
247 LIBICAL_ICAL_EXPORT
enum icalproperty_status icalcomponent_get_status(
icalcomponent *comp);
251 LIBICAL_ICAL_EXPORT
void icalcomponent_foreach_tzid(
icalcomponent *comp,
252 void (*callback) (icalparameter *param,
254 void *callback_data);
261 LIBICAL_ICAL_EXPORT
int icalproperty_recurrence_is_excluded(
icalcomponent *comp,
265 LIBICAL_ICAL_EXPORT
void icalcomponent_foreach_recurrence(
icalcomponent *comp,
271 void *callback_data);
275 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vcalendar(
void);
277 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vevent(
void);
279 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vtodo(
void);
281 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vjournal(
void);
283 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_valarm(
void);
285 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vfreebusy(
void);
287 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vtimezone(
void);
289 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_xstandard(
void);
291 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_xdaylight(
void);
293 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vagenda(
void);
295 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vquery(
void);
297 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vavailability(
void);
299 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_xavailable(
void);
301 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vpoll(
void);
303 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_vvoter(
void);
305 LIBICAL_ICAL_EXPORT
icalcomponent *icalcomponent_new_xvote(
void);
Definition: icaltime.h:99
Definition: icalduration.h:29
Definition: icalcomponent.c:33
Definition: icalcomponent.h:32
Definition: icaltime.h:114
Definition: icaltimezoneimpl.h:23