"Fossies" - the Fresh Open Source Software Archive 
Member "evolution-mapi-3.46.1/src/camel/camel-mapi-folder.h" (2 Dec 2022, 2972 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 "camel-mapi-folder.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 * Johnny Jacob <jjohnny@novell.com>
19 *
20 * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
21 *
22 */
23
24 #ifndef CAMEL_MAPI_FOLDER_H
25 #define CAMEL_MAPI_FOLDER_H
26
27 #include <camel/camel.h>
28 #include <libmapi/libmapi.h>
29 #include <e-mapi-connection.h>
30
31 /* Standard GObject macros */
32 #define CAMEL_TYPE_MAPI_FOLDER \
33 (camel_mapi_folder_get_type ())
34 #define CAMEL_MAPI_FOLDER(obj) \
35 (G_TYPE_CHECK_INSTANCE_CAST \
36 ((obj), CAMEL_TYPE_MAPI_FOLDER, CamelMapiFolder))
37 #define CAMEL_MAPI_FOLDER_CLASS(cls) \
38 (G_TYPE_CHECK_CLASS_CAST \
39 ((cls), CAMEL_TYPE_MAPI_FOLDER, CamelMapiFolderClass))
40 #define CAMEL_IS_MAPI_FOLDER(obj) \
41 (G_TYPE_CHECK_INSTANCE_TYPE \
42 ((obj), CAMEL_TYPE_MAPI_FOLDER))
43 #define CAMEL_IS_MAPI_FOLDER_CLASS(cls) \
44 (G_TYPE_CHECK_CLASS_TYPE \
45 ((cls), CAMEL_TYPE_MAPI_FOLDER))
46 #define CAMEL_MAPI_FOLDER_GET_CLASS(obj) \
47 (G_TYPE_INSTANCE_GET_CLASS \
48 ((obj), CAMEL_TYPE_MAPI_FOLDER, CamelMapiFolderClass))
49
50 /**
51 * DATA STRUCTURES
52 */
53
54 G_BEGIN_DECLS
55
56 typedef struct _CamelMapiFolder CamelMapiFolder;
57 typedef struct _CamelMapiFolderClass CamelMapiFolderClass;
58 typedef struct _CamelMapiFolderPrivate CamelMapiFolderPrivate;
59
60 struct _CamelMapiFolder {
61 CamelOfflineFolder parent;
62 CamelMapiFolderPrivate *priv;
63
64 mapi_id_t folder_id;
65
66 CamelFolderSearch *search;
67
68 CamelDataCache *cache;
69
70 /* copied from CamelMapiStoreInfo */
71 guint32 mapi_folder_flags;
72 guint32 camel_folder_flags;
73
74 guint need_rescan:1;
75 guint need_refresh:1;
76 guint read_only:1;
77 };
78
79 struct _CamelMapiFolderClass {
80 CamelOfflineFolderClass parent_class;
81 };
82
83 typedef struct {
84 GSList *items_list;
85 GTimeVal last_modification_time;
86 CamelFolder *folder;
87 CamelFolderChangeInfo *changes;
88 }fetch_items_data;
89
90 GType camel_mapi_folder_get_type (void);
91
92 /* implemented */
93 CamelFolder *
94 camel_mapi_folder_new(CamelStore *store, const gchar *folder_name, const gchar *folder_dir, guint32 flags, GError **error);
95
96 void mapi_update_summary ( CamelFolder *folder, GList *item_list,GError **error);
97 gboolean mapi_refresh_folder(CamelFolder *folder, GCancellable *cancellable, GError **error);
98 gboolean camel_mapi_folder_fetch_summary (CamelFolder *folder, GCancellable *cancellable, GError **mapi_error);
99
100 G_END_DECLS
101
102 #endif /* CAMEL_MAPI_FOLDER_H */