"Fossies" - the Fresh Open Source Software Archive 
Member "evolution-mapi-3.46.1/src/libexchangemapi/e-mapi-cal-utils.h" (2 Dec 2022, 3109 Bytes) of package /linux/misc/evolution-mapi-3.46.1.tar.xz:
As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style:
standard) with prefixed line numbers and
code folding option.
Alternatively you can here
view or
download the uninterpreted source code file.
For more information about "e-mapi-cal-utils.h" see the
Fossies "Dox" file reference documentation.
1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2 /*
3 * This program is free software; you can redistribute it and/or
4 * modify it under the terms of the GNU Lesser General Public
5 * License as published by the Free Software Foundation; either
6 * version 2 of the License, or (at your option) version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public
14 * License along with the program; if not, see <http://www.gnu.org/licenses/>
15 *
16 *
17 * Authors:
18 * Suman Manjunath <msuman@novell.com>
19 *
20 * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
21 *
22 */
23
24 #ifndef E_MAPI_CAL_UTILS_H
25 #define E_MAPI_CAL_UTILS_H
26
27 #include <libecal/libecal.h>
28
29 #include "e-mapi-connection.h"
30 #include "e-mapi-defs.h"
31 #include "e-mapi-utils.h"
32
33 #include "e-mapi-cal-tz-utils.h"
34 #include "e-mapi-cal-recur-utils.h"
35
36 G_BEGIN_DECLS
37
38 typedef enum {
39 NOT_A_MEETING = (1 << 0),
40 MEETING_OBJECT = (1 << 1),
41 MEETING_OBJECT_SENT = (1 << 2),
42 MEETING_OBJECT_RCVD = (1 << 3),
43 MEETING_REQUEST = (1 << 4),
44 MEETING_REQUEST_RCVD = (1 << 5),
45 MEETING_RESPONSE = (1 << 6),
46 MEETING_RESPONSE_RCVD = (1 << 7),
47 MEETING_CANCEL = (1 << 8),
48 MEETING_CANCEL_RCVD = (1 << 9)
49 } MAPIMeetingOptions;
50
51 struct cal_cbdata {
52 ICalComponentKind kind;
53 ECalComponent *comp;
54 gboolean is_modify;
55
56 /* These are appt specific data */
57 MAPIMeetingOptions meeting_type;
58 uint32_t appt_id;
59 uint32_t appt_seq;
60 struct SBinary_short *globalid;
61 struct SBinary_short *cleanglobalid;
62
63 uint32_t msgflags;
64 OlResponseStatus resp;
65 gchar *username;
66 gchar *useridtype;
67 gchar *userid;
68 gchar *ownername;
69 gchar *owneridtype;
70 gchar *ownerid;
71
72 /* custom callback to get timezone from a backend */
73 gpointer get_tz_data;
74 ICalTimezone * (*get_timezone)(ETimezoneCache *get_tz_data, const gchar *tzid);
75 };
76
77 void e_mapi_cal_util_generate_globalobjectid (gboolean is_clean,
78 const gchar *uid,
79 const struct timeval *exception_replace_time,
80 const struct FILETIME *creation_time,
81 struct SBinary_short *sb);
82
83 uint32_t e_mapi_cal_util_get_new_appt_id (EMapiConnection *conn,
84 mapi_id_t fid);
85
86 gboolean e_mapi_cal_utils_get_free_busy_data (EMapiConnection *conn,
87 const GSList *users,
88 time_t start,
89 time_t end,
90 GSList **freebusy,
91 GCancellable *cancellable,
92 GError **mapi_error);
93
94 ECalComponent * e_mapi_cal_util_object_to_comp (EMapiConnection *conn,
95 EMapiObject *object,
96 ICalComponentKind kind,
97 gboolean is_reply,
98 const gchar *use_uid,
99 GSList **detached_components);
100
101 gboolean e_mapi_cal_utils_comp_to_object (EMapiConnection *conn,
102 TALLOC_CTX *mem_ctx,
103 EMapiObject **pobject, /* out */
104 gpointer user_data,
105 GCancellable *cancellable,
106 GError **perror);
107
108 G_END_DECLS
109
110 #endif