1/* -*- Mode: C -*- */ 2/*====================================================================== 3 FILE: icalvalue.h 4 CREATOR: eric 20 March 1999 5 6 7 $Id: icalderivedvalue.h.in,v 1.10 2007-04-30 13:57:48 artcancro Exp $ 8 $Locker: $ 9 10 11 12 (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org 13 14 This program is free software; you can redistribute it and/or modify 15 it under the terms of either: 16 17 The LGPL as published by the Free Software Foundation, version 18 2.1, available at: http://www.fsf.org/copyleft/lesser.html 19 20 Or: 21 22 The Mozilla Public License Version 1.0. You may obtain a copy of 23 the License at http://www.mozilla.org/MPL/ 24 25 The original code is icalvalue.h 26 27 ======================================================================*/ 28 29#ifndef ICALDERIVEDVALUE_H 30#define ICALDERIVEDVALUE_H 31 32#include "icaltypes.h" 33#include "icalrecur.h" 34#include "icaltime.h" 35#include "icalduration.h" 36#include "icalperiod.h" 37#include "icalattach.h" 38 39typedef struct icalvalue_impl icalvalue; 40 41void icalvalue_set_x(icalvalue* value, const char* v); 42icalvalue* icalvalue_new_x(const char* v); 43const char* icalvalue_get_x(const icalvalue* value); 44 45icalvalue* icalvalue_new_recur (struct icalrecurrencetype v); 46void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype v); 47struct icalrecurrencetype icalvalue_get_recur(const icalvalue* value); 48 49icalvalue* icalvalue_new_trigger (struct icaltriggertype v); 50void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v); 51struct icaltriggertype icalvalue_get_trigger(const icalvalue* value); 52 53icalvalue* icalvalue_new_datetime(struct icaltimetype v); 54struct icaltimetype icalvalue_get_datetime(const icalvalue* value); 55void icalvalue_set_datetime(icalvalue* value, struct icaltimetype v); 56 57icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v); 58void icalvalue_set_datetimeperiod(icalvalue* value, struct icaldatetimeperiodtype v); 59struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value); 60 61/* GEO */ 62icalvalue* icalvalue_new_geo(struct icalgeotype v); 63struct icalgeotype icalvalue_get_geo(const icalvalue* value); 64void icalvalue_set_geo(icalvalue* value, struct icalgeotype v); 65 66icalvalue *icalvalue_new_attach (icalattach *attach); 67void icalvalue_set_attach (icalvalue *value, icalattach *attach); 68icalattach *icalvalue_get_attach (const icalvalue *value); 69 70void icalvalue_reset_kind(icalvalue* value); 71 72<insert_code_here> 73 74 75icalvalue* icalvalue_new_class(enum icalproperty_class v); 76enum icalproperty_class icalvalue_get_class(const icalvalue* value); 77void icalvalue_set_class(icalvalue* value, enum icalproperty_class v); 78