icalcluster.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /*======================================================================
  2. FILE: icalcluster.h
  3. CREATOR: acampi 13 March 2002
  4. Copyright (C) 2002 Andrea Campi <a.campi@inet.it>
  5. This program is free software; you can redistribute it and/or modify
  6. it under the terms of either:
  7. The LGPL as published by the Free Software Foundation, version
  8. 2.1, available at: http://www.gnu.org/licenses/lgpl-2.1.html
  9. Or:
  10. The Mozilla Public License Version 1.0. You may obtain a copy of
  11. the License at http://www.mozilla.org/MPL/
  12. ======================================================================*/
  13. #ifndef ICALCLUSTER_H
  14. #define ICALCLUSTER_H
  15. #include "libical_icalss_export.h"
  16. #include "icalcomponent.h"
  17. #include "icalerror.h"
  18. typedef struct icalcluster_impl icalcluster;
  19. LIBICAL_ICALSS_EXPORT icalcluster *icalcluster_new(const char *key, icalcomponent *data);
  20. LIBICAL_ICALSS_EXPORT icalcluster *icalcluster_new_clone(const icalcluster *cluster);
  21. LIBICAL_ICALSS_EXPORT void icalcluster_free(icalcluster *cluster);
  22. LIBICAL_ICALSS_EXPORT const char *icalcluster_key(icalcluster *cluster);
  23. LIBICAL_ICALSS_EXPORT int icalcluster_is_changed(icalcluster *cluster);
  24. LIBICAL_ICALSS_EXPORT void icalcluster_mark(icalcluster *cluster);
  25. LIBICAL_ICALSS_EXPORT void icalcluster_commit(icalcluster *cluster);
  26. LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_component(icalcluster *cluster);
  27. LIBICAL_ICALSS_EXPORT int icalcluster_count_components(icalcluster *cluster,
  28. icalcomponent_kind kind);
  29. LIBICAL_ICALSS_EXPORT icalerrorenum icalcluster_add_component(icalcluster *cluster,
  30. icalcomponent *child);
  31. LIBICAL_ICALSS_EXPORT icalerrorenum icalcluster_remove_component(icalcluster *cluster,
  32. icalcomponent *child);
  33. LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_current_component(icalcluster *cluster);
  34. LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_first_component(icalcluster *cluster);
  35. LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_next_component(icalcluster *cluster);
  36. #endif /* !ICALCLUSTER_H */