Back to index

lightning-sunbird  0.9+nobinonly
icalcalendar.h
Go to the documentation of this file.
00001 /* -*- Mode: C -*- */
00002 /*======================================================================
00003  FILE: icalcalendar.h
00004  CREATOR: eric 23 December 1999
00005 
00006 
00007  $Id: icalcalendar.h,v 1.2 2002/06/27 02:30:58 acampi Exp $
00008  $Locker:  $
00009 
00010  (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org
00011 
00012  This program is free software; you can redistribute it and/or modify
00013  it under the terms of either: 
00014 
00015     The LGPL as published by the Free Software Foundation, version
00016     2.1, available at: http://www.fsf.org/copyleft/lesser.html
00017 
00018   Or:
00019 
00020     The Mozilla Public License Version 1.0. You may obtain a copy of
00021     the License at http://www.mozilla.org/MPL/
00022 
00023  The Original Code is eric. The Initial Developer of the Original
00024  Code is Eric Busboom
00025 
00026 
00027 ======================================================================*/
00028 
00029 #ifndef ICALCALENDAR_H
00030 #define ICALCALENDAR_H
00031 
00032 #include "ical.h"
00033 #include "icalset.h"
00034 
00035 /* icalcalendar
00036  * Routines for storing calendar data in a file system. The calendar 
00037  * has two icaldirsets, one for incoming components and one for booked
00038  * components. It also has interfaces to access the free/busy list
00039  * and a list of calendar properties */
00040 
00041 typedef struct icalcalendar_impl icalcalendar;
00042 
00043 icalcalendar* icalcalendar_new(char* dir);
00044 
00045 void icalcalendar_free(icalcalendar* calendar);
00046 
00047 int icalcalendar_lock(icalcalendar* calendar);
00048 
00049 int icalcalendar_unlock(icalcalendar* calendar);
00050 
00051 int icalcalendar_islocked(icalcalendar* calendar);
00052 
00053 int icalcalendar_ownlock(icalcalendar* calendar);
00054 
00055 icalset* icalcalendar_get_booked(icalcalendar* calendar);
00056 
00057 icalset* icalcalendar_get_incoming(icalcalendar* calendar);
00058 
00059 icalset* icalcalendar_get_properties(icalcalendar* calendar);
00060 
00061 icalset* icalcalendar_get_freebusy(icalcalendar* calendar);
00062 
00063 
00064 #endif /* !ICALCALENDAR_H */
00065 
00066 
00067