libkcal
icalattachimpl.h
Go to the documentation of this file.00001 /* -*- Mode: C -*- */ 00002 /*====================================================================== 00003 FILE: icalattachimpl.h 00004 CREATOR: acampi 28 May 02 00005 00006 00007 00008 (C) COPYRIGHT 2000, Andrea Campi <a.campi@inet.it> 00009 00010 This program is free software; you can redistribute it and/or modify 00011 it under the terms of either: 00012 00013 The LGPL as published by the Free Software Foundation, version 00014 2.1, available at: http://www.fsf.org/copyleft/lesser.html 00015 00016 Or: 00017 00018 The Mozilla Public License Version 1.0. You may obtain a copy of 00019 the License at http://www.mozilla.org/MPL/ 00020 00021 The original code is icalattachimpl.h 00022 00023 00024 ======================================================================*/ 00025 00026 #ifdef HAVE_CONFIG_H 00027 #include <config.h> 00028 #endif 00029 00030 #ifndef ICALATTACHIMPL_H 00031 #define ICALATTACHIMPL_H 00032 00033 #include "icalattach.h" 00034 00035 /* Private structure for ATTACH values */ 00036 struct icalattach_impl { 00037 /* Reference count */ 00038 int refcount; 00039 00040 union { 00041 /* URL attachment data */ 00042 struct { 00043 char *url; 00044 } url; 00045 00046 /* Inline data */ 00047 struct { 00048 unsigned char *data; 00049 icalattach_free_fn_t free_fn; 00050 void *free_fn_data; 00051 } data; 00052 } u; 00053 00054 /* TRUE if URL, FALSE if inline data */ 00055 unsigned int is_url : 1; 00056 }; 00057 00058 #endif