icalcalendar.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*======================================================================
  2. FILE: icalcalendar.h
  3. CREATOR: eric 23 December 1999
  4. (C) COPYRIGHT 2000, Eric Busboom <eric@softwarestudio.org>
  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. The Original Code is eric. The Initial Developer of the Original
  13. Code is Eric Busboom
  14. ======================================================================*/
  15. #ifndef ICALCALENDAR_H
  16. #define ICALCALENDAR_H
  17. #include "libical_icalss_export.h"
  18. #include "icalset.h"
  19. /* icalcalendar
  20. * Routines for storing calendar data in a file system. The calendar
  21. * has two icaldirsets, one for incoming components and one for booked
  22. * components. It also has interfaces to access the free/busy list
  23. * and a list of calendar properties */
  24. typedef struct icalcalendar_impl icalcalendar;
  25. LIBICAL_ICALSS_EXPORT icalcalendar *icalcalendar_new(char *dir);
  26. LIBICAL_ICALSS_EXPORT void icalcalendar_free(icalcalendar *calendar);
  27. LIBICAL_ICALSS_EXPORT int icalcalendar_lock(icalcalendar *calendar);
  28. LIBICAL_ICALSS_EXPORT int icalcalendar_unlock(icalcalendar *calendar);
  29. LIBICAL_ICALSS_EXPORT int icalcalendar_islocked(icalcalendar *calendar);
  30. LIBICAL_ICALSS_EXPORT int icalcalendar_ownlock(icalcalendar *calendar);
  31. LIBICAL_ICALSS_EXPORT icalset *icalcalendar_get_booked(icalcalendar *calendar);
  32. LIBICAL_ICALSS_EXPORT icalset *icalcalendar_get_incoming(icalcalendar *calendar);
  33. LIBICAL_ICALSS_EXPORT icalset *icalcalendar_get_properties(icalcalendar *calendar);
  34. LIBICAL_ICALSS_EXPORT icalset *icalcalendar_get_freebusy(icalcalendar *calendar);
  35. #endif /* !ICALCALENDAR_H */