"Fossies" - the Fresh Open Source Software Archive 
Member "evolution-mapi-3.46.1/src/camel/camel-mapi-store-summary.h" (2 Dec 2022, 3770 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-store-summary.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_STORE_SUMMARY_H
25 #define CAMEL_MAPI_STORE_SUMMARY_H
26
27 #include <camel/camel.h>
28
29 /* Standard GObject macros */
30 #define CAMEL_TYPE_MAPI_STORE_SUMMARY \
31 (camel_mapi_store_summary_get_type ())
32 #define CAMEL_MAPI_STORE_SUMMARY(obj) \
33 (G_TYPE_CHECK_INSTANCE_CAST \
34 ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummary))
35 #define CAMEL_MAPI_STORE_SUMMARY_CLASS(cls) \
36 (G_TYPE_CHECK_CLASS_CAST \
37 ((cls), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummaryClass))
38 #define CAMEL_IS_MAPI_STORE_SUMMARY(obj) \
39 (G_TYPE_CHECK_INSTANCE_TYPE \
40 ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY))
41 #define CAMEL_IS_MAPI_STORE_SUMMARY_CLASS(cls) \
42 (G_TYPE_CHECK_CLASS_TYPE \
43 ((cls), CAMEL_TYPE_MAPI_STORE_SUMMARY))
44 #define CAMEL_MAPI_STORE_SUMMARY_GET_CLASS(obj) \
45 (G_TYPE_INSTANCE_GET_CLASS \
46 ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummaryClass))
47
48 G_BEGIN_DECLS
49
50 typedef struct _CamelMapiStoreSummary CamelMapiStoreSummary;
51 typedef struct _CamelMapiStoreSummaryClass CamelMapiStoreSummaryClass;
52 typedef struct _CamelMapiStoreSummaryPrivate CamelMapiStoreSummaryPrivate;
53
54 typedef struct _CamelMapiStoreInfo CamelMapiStoreInfo;
55
56 enum CamelMapiStoreFolderFlags {
57 CAMEL_MAPI_STORE_FOLDER_FLAG_PERSONAL = 1 << 0,
58 CAMEL_MAPI_STORE_FOLDER_FLAG_PUBLIC = 1 << 1,
59 CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN = 1 << 2,
60 CAMEL_MAPI_STORE_FOLDER_FLAG_MAIL = 1 << 3,
61 CAMEL_MAPI_STORE_FOLDER_FLAG_PUBLIC_REAL = 1 << 4, /* real public folder; the unreal is that under Favorites */
62 CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN_WITH_SUBFOLDERS = 1 << 5
63 };
64
65 enum {
66 CAMEL_MAPI_STORE_INFO_FOREIGN_USERNAME = CAMEL_STORE_INFO_LAST,
67 CAMEL_MAPI_STORE_INFO_LAST
68 };
69
70 struct _CamelMapiStoreInfo {
71 CamelStoreInfo info;
72 mapi_id_t folder_id;
73 mapi_id_t parent_id;
74 guint32 camel_folder_flags; /* CamelFolderInfo::flags */
75 guint32 mapi_folder_flags; /* bit-or of CamelMapiStoreFolderFlags */
76 gchar *foreign_username; /* only if CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN is set */
77
78 /* these are not saved */
79 time_t latest_last_modify;
80 gint last_obj_total;
81 };
82
83 struct _CamelMapiStoreSummary {
84 CamelStoreSummary parent;
85 CamelMapiStoreSummaryPrivate *priv;
86 };
87
88 struct _CamelMapiStoreSummaryClass {
89 CamelStoreSummaryClass summary_class;
90 };
91
92 GType camel_mapi_store_summary_get_type (void);
93 CamelStoreSummary * camel_mapi_store_summary_new (void);
94 CamelStoreInfo * camel_mapi_store_summary_add_from_full (CamelStoreSummary *s,
95 const gchar *path,
96 mapi_id_t folder_id,
97 mapi_id_t parent_id,
98 guint32 camel_folder_flags, /* CamelFolderInfo::flags */
99 guint32 mapi_folder_flags, /* bit-or of CamelMapiStoreFolderFlags */
100 const gchar *foreign_username); /* only if CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN is set */
101 CamelStoreInfo * camel_mapi_store_summary_get_folder_id (CamelStoreSummary *s,
102 mapi_id_t folder_id);
103
104 G_END_DECLS
105
106 #endif /* CAMEL_MAPI_STORE_SUMMARY_H */