fa8ce33bd136efdcbe9705d3512d78d6cb92b07e
[citadel.git] / webcit / vcard.h
1 /*
2  * $Id$
3  */
4 /**
5  * \defgroup VcardHeader vCard implementation for Citadel
6  *
7  * Copyright (C) 1999 by Art Cancro
8  * This code is freely redistributable under the terms of the GNU General
9  * Public License.  All other rights reserved.
10  */
11
12 /*@{ */
13 #define CTDL_VCARD_MAGIC        0xa1f9 /**< magic byte vcards start with??? */
14
15 /**
16  * \brief This data structure represents a vCard object currently in memory.
17  */
18 struct vCard {
19         int magic;          /**< the Magic Byte */
20         int numprops;       /**< number of properties this vcard will have */
21         struct vCardProp {  
22                 char *name;         /**< Keyname of the property */
23                 char *value;        /**< value of the property */
24         } *prop;            /**< Vcard Property. Linked list??? */
25 };
26
27
28 struct vCard *vcard_new(void);
29 struct vCard *vcard_load(char *);
30 void vcard_free(struct vCard *);
31 void vcard_set_prop(struct vCard *v, char *name, char *value, int append);
32 char *vcard_get_prop(struct vCard *v, char *propname, int is_partial,
33                         int instance, int return_propname);
34 char *vcard_serialize(struct vCard *);
35
36
37 /*@}*/