~ubuntu-branches/ubuntu/maverick/evolution-data-server/maverick-updates

« back to all changes in this revision

Viewing changes to docs/reference/camel/xml/camel-object.xml

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2009-08-10 15:05:30 UTC
  • mfrom: (1.1.71 upstream)
  • Revision ID: james.westby@ubuntu.com-20090810150530-91g7v606ee8ir474
Tags: 2.27.90-0ubuntu1
* New upstream version:
  Bug Fixes:
  Calendar:
  - #579965 - calendar file backend, update 'LAST-MODIFIED'
    when removing a recurring event instance 
  - #589984 - eds crash trying to create an event. 
  Mail:
  - #511283 - Some Images Do not Display in Evolution Mail Reader 
  Miscellaneous:
  - #590697 – Build regression detecting com_err.h 
  - #589388 – Build fixes / enhancements for EDS 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<refentry id="camel-CamelObject">
2
 
<refmeta>
3
 
<refentrytitle role="top_of_page" id="camel-CamelObject.top_of_page">CamelObject</refentrytitle>
4
 
<manvolnum>3</manvolnum>
5
 
<refmiscinfo>CAMEL Library</refmiscinfo>
6
 
</refmeta>
7
 
 
8
 
<refnamediv>
9
 
<refname>CamelObject</refname>
10
 
<refpurpose></refpurpose>
11
 
</refnamediv>
12
 
 
13
 
<refsynopsisdiv id="camel-CamelObject.synopsis" role="synopsis">
14
 
<title role="synopsis.title">Synopsis</title>
15
 
 
16
 
<synopsis>
17
 
#define             <link linkend="CAMEL-OBJECT-TRACK-INSTANCES--CAPS">CAMEL_OBJECT_TRACK_INSTANCES</link>
18
 
typedef             <link linkend="CamelType">CamelType</link>;
19
 
                    <link linkend="CamelObject">CamelObject</link>;
20
 
#define             <link linkend="CAMEL-CHECK-CAST--CAPS">CAMEL_CHECK_CAST</link>                    (obj, ctype, ptype)
21
 
#define             <link linkend="CAMEL-CHECK-CLASS-CAST--CAPS">CAMEL_CHECK_CLASS_CAST</link>              (klass, ctype, ptype)
22
 
#define             <link linkend="CAMEL-CHECK-TYPE--CAPS">CAMEL_CHECK_TYPE</link>                    (obj, ctype)
23
 
#define             <link linkend="CAMEL-CHECK-CLASS-TYPE--CAPS">CAMEL_CHECK_CLASS_TYPE</link>              (klass, ctype)
24
 
extern              CamelType <link linkend="camel-object-type">camel_object_type</link>;
25
 
#define             <link linkend="CAMEL-OBJECT-TYPE--CAPS">CAMEL_OBJECT_TYPE</link>
26
 
#define             <link linkend="CAMEL-OBJECT-GET-TYPE--CAPS">CAMEL_OBJECT_GET_TYPE</link>               (o)
27
 
typedef             <link linkend="CamelObjectHookID">CamelObjectHookID</link>;
28
 
                    <link linkend="CamelObjectMeta">CamelObjectMeta</link>;
29
 
extern              CamelType <link linkend="camel-interface-type">camel_interface_type</link>;
30
 
#define             <link linkend="CAMEL-INTERFACE-TYPE--CAPS">CAMEL_INTERFACE_TYPE</link>
31
 
                    <link linkend="CamelInterface">CamelInterface</link>;
32
 
<link linkend="void">void</link>                (<link linkend="CamelObjectClassInitFunc">*CamelObjectClassInitFunc</link>)         (<link linkend="CamelObjectClass">CamelObjectClass</link> *);
33
 
<link linkend="void">void</link>                (<link linkend="CamelObjectClassFinalizeFunc">*CamelObjectClassFinalizeFunc</link>)     (<link linkend="CamelObjectClass">CamelObjectClass</link> *);
34
 
<link linkend="void">void</link>                (<link linkend="CamelObjectInitFunc">*CamelObjectInitFunc</link>)              (<link linkend="CamelObject">CamelObject</link> *,
35
 
                                                         <link linkend="CamelObjectClass">CamelObjectClass</link> *);
36
 
<link linkend="void">void</link>                (<link linkend="CamelObjectFinalizeFunc">*CamelObjectFinalizeFunc</link>)          (<link linkend="CamelObject">CamelObject</link> *);
37
 
<link linkend="gboolean">gboolean</link>            (<link linkend="CamelObjectEventPrepFunc">*CamelObjectEventPrepFunc</link>)         (<link linkend="CamelObject">CamelObject</link> *,
38
 
                                                         <link linkend="gpointer">gpointer</link> );
39
 
<link linkend="void">void</link>                (<link linkend="CamelObjectEventHookFunc">*CamelObjectEventHookFunc</link>)         (<link linkend="CamelObject">CamelObject</link> *,
40
 
                                                         <link linkend="gpointer">gpointer</link> ,
41
 
                                                         <link linkend="gpointer">gpointer</link> );
42
 
#define             <link linkend="CAMEL-INVALID-TYPE--CAPS">CAMEL_INVALID_TYPE</link>
43
 
enum                <link linkend="CamelObjectFlags">CamelObjectFlags</link>;
44
 
<link linkend="void">void</link>                <link linkend="camel-type-init">camel_type_init</link>                     (void);
45
 
<link linkend="CamelType">CamelType</link>           <link linkend="camel-type-register">camel_type_register</link>                 (<link linkend="CamelType">CamelType</link> parent,
46
 
                                                         const <link linkend="gchar">gchar</link> *name,
47
 
                                                         <link linkend="gsize">gsize</link> instance_size,
48
 
                                                         <link linkend="gsize">gsize</link> classfuncs_size,
49
 
                                                         <link linkend="CamelObjectClassInitFunc">CamelObjectClassInitFunc</link> class_init,
50
 
                                                         <link linkend="CamelObjectClassFinalizeFunc">CamelObjectClassFinalizeFunc</link> class_finalize,
51
 
                                                         <link linkend="CamelObjectInitFunc">CamelObjectInitFunc</link> instance_init,
52
 
                                                         <link linkend="CamelObjectFinalizeFunc">CamelObjectFinalizeFunc</link> instance_finalize);
53
 
<link linkend="CamelType">CamelType</link>           <link linkend="camel-interface-register">camel_interface_register</link>            (<link linkend="CamelType">CamelType</link> parent,
54
 
                                                         const <link linkend="gchar">gchar</link> *name,
55
 
                                                         <link linkend="gsize">gsize</link> classfuncs_size,
56
 
                                                         <link linkend="CamelObjectClassInitFunc">CamelObjectClassInitFunc</link> class_init,
57
 
                                                         <link linkend="CamelObjectClassFinalizeFunc">CamelObjectClassFinalizeFunc</link> class_finalize);
58
 
#define             <link linkend="camel-type-get-global-classfuncs">camel_type_get_global_classfuncs</link>    (x)
59
 
const <link linkend="gchar">gchar</link> *       <link linkend="camel-type-to-name">camel_type_to_name</link>                  (<link linkend="CamelType">CamelType</link> type);
60
 
<link linkend="CamelType">CamelType</link>           <link linkend="camel-name-to-type">camel_name_to_type</link>                  (const <link linkend="gchar">gchar</link> *name);
61
 
<link linkend="void">void</link>                <link linkend="camel-object-class-add-event">camel_object_class_add_event</link>        (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
62
 
                                                         const <link linkend="gchar">gchar</link> *name,
63
 
                                                         <link linkend="CamelObjectEventPrepFunc">CamelObjectEventPrepFunc</link> prep);
64
 
<link linkend="void">void</link>                <link linkend="camel-object-class-add-interface">camel_object_class_add_interface</link>    (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
65
 
                                                         <link linkend="CamelType">CamelType</link> itype);
66
 
<link linkend="void">void</link>                <link linkend="camel-object-class-dump-tree">camel_object_class_dump_tree</link>        (<link linkend="CamelType">CamelType</link> root);
67
 
<link linkend="CamelObject">CamelObject</link> *       <link linkend="camel-object-cast">camel_object_cast</link>                   (<link linkend="CamelObject">CamelObject</link> *obj,
68
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
69
 
<link linkend="gboolean">gboolean</link>            <link linkend="camel-object-is">camel_object_is</link>                     (<link linkend="CamelObject">CamelObject</link> *obj,
70
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
71
 
<link linkend="CamelObjectClass">CamelObjectClass</link> *  <link linkend="camel-object-class-cast">camel_object_class_cast</link>             (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
72
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
73
 
<link linkend="gboolean">gboolean</link>            <link linkend="camel-object-class-is">camel_object_class_is</link>               (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
74
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
75
 
<link linkend="CamelObjectClass">CamelObjectClass</link> *  <link linkend="camel-interface-cast">camel_interface_cast</link>                (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
76
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
77
 
<link linkend="gboolean">gboolean</link>            <link linkend="camel-interface-is">camel_interface_is</link>                  (<link linkend="CamelObjectClass">CamelObjectClass</link> *k,
78
 
                                                         <link linkend="CamelType">CamelType</link> ctype);
79
 
<link linkend="CamelObject">CamelObject</link> *       <link linkend="camel-object-new">camel_object_new</link>                    (<link linkend="CamelType">CamelType</link> type);
80
 
<link linkend="void">void</link>                <link linkend="camel-object-ref">camel_object_ref</link>                    (<link linkend="gpointer">gpointer</link> );
81
 
<link linkend="void">void</link>                <link linkend="camel-object-unref">camel_object_unref</link>                  (<link linkend="gpointer">gpointer</link> );
82
 
<link linkend="CamelObjectHookID">CamelObjectHookID</link>   <link linkend="camel-object-hook-event">camel_object_hook_event</link>             (<link linkend="gpointer">gpointer</link> obj,
83
 
                                                         const <link linkend="gchar">gchar</link> *name,
84
 
                                                         <link linkend="CamelObjectEventHookFunc">CamelObjectEventHookFunc</link> hook,
85
 
                                                         <link linkend="gpointer">gpointer</link> data);
86
 
<link linkend="void">void</link>                <link linkend="camel-object-remove-event">camel_object_remove_event</link>           (<link linkend="gpointer">gpointer</link> obj,
87
 
                                                         <link linkend="CamelObjectHookID">CamelObjectHookID</link> id);
88
 
<link linkend="void">void</link>                <link linkend="camel-object-unhook-event">camel_object_unhook_event</link>           (<link linkend="gpointer">gpointer</link> obj,
89
 
                                                         const <link linkend="gchar">gchar</link> *name,
90
 
                                                         <link linkend="CamelObjectEventHookFunc">CamelObjectEventHookFunc</link> hook,
91
 
                                                         <link linkend="gpointer">gpointer</link> data);
92
 
<link linkend="void">void</link>                <link linkend="camel-object-trigger-event">camel_object_trigger_event</link>          (<link linkend="gpointer">gpointer</link> obj,
93
 
                                                         const <link linkend="gchar">gchar</link> *name,
94
 
                                                         <link linkend="gpointer">gpointer</link> event_data);
95
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-object-get-interface">camel_object_get_interface</link>          (<link linkend="gpointer">gpointer</link> vo,
96
 
                                                         <link linkend="CamelType">CamelType</link> itype);
97
 
<link linkend="gint">gint</link>                <link linkend="camel-object-set">camel_object_set</link>                    (<link linkend="gpointer">gpointer</link> obj,
98
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
99
 
                                                         ...);
100
 
<link linkend="gint">gint</link>                <link linkend="camel-object-setv">camel_object_setv</link>                   (<link linkend="gpointer">gpointer</link> obj,
101
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
102
 
                                                         <link linkend="CamelArgV">CamelArgV</link> *);
103
 
<link linkend="gint">gint</link>                <link linkend="camel-object-get">camel_object_get</link>                    (<link linkend="gpointer">gpointer</link> obj,
104
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
105
 
                                                         ...);
106
 
<link linkend="gint">gint</link>                <link linkend="camel-object-getv">camel_object_getv</link>                   (<link linkend="gpointer">gpointer</link> obj,
107
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
108
 
                                                         <link linkend="CamelArgGetV">CamelArgGetV</link> *);
109
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-object-get-ptr">camel_object_get_ptr</link>                (<link linkend="gpointer">gpointer</link> vo,
110
 
                                                         <link linkend="CamelException">CamelException</link> *ex,
111
 
                                                         <link linkend="gint">gint</link> tag);
112
 
<link linkend="gint">gint</link>                <link linkend="camel-object-get-int">camel_object_get_int</link>                (<link linkend="gpointer">gpointer</link> vo,
113
 
                                                         <link linkend="CamelException">CamelException</link> *ex,
114
 
                                                         <link linkend="gint">gint</link> tag);
115
 
<link linkend="gchar">gchar</link> *             <link linkend="camel-object-meta-get">camel_object_meta_get</link>               (<link linkend="gpointer">gpointer</link> vo,
116
 
                                                         const <link linkend="gchar">gchar</link> *name);
117
 
<link linkend="gboolean">gboolean</link>            <link linkend="camel-object-meta-set">camel_object_meta_set</link>               (<link linkend="gpointer">gpointer</link> vo,
118
 
                                                         const <link linkend="gchar">gchar</link> *name,
119
 
                                                         const <link linkend="gchar">gchar</link> *value);
120
 
<link linkend="gint">gint</link>                <link linkend="camel-object-state-read">camel_object_state_read</link>             (<link linkend="gpointer">gpointer</link> vo);
121
 
<link linkend="gint">gint</link>                <link linkend="camel-object-state-write">camel_object_state_write</link>            (<link linkend="gpointer">gpointer</link> vo);
122
 
<link linkend="void">void</link>                <link linkend="camel-object-free">camel_object_free</link>                   (<link linkend="gpointer">gpointer</link> vo,
123
 
                                                         <link linkend="guint32">guint32</link> tag,
124
 
                                                         <link linkend="gpointer">gpointer</link> value);
125
 
                    <link linkend="CamelObjectBag">CamelObjectBag</link>;
126
 
<link linkend="gpointer">gpointer</link>            (<link linkend="CamelCopyFunc">*CamelCopyFunc</link>)                    (<link linkend="gconstpointer">gconstpointer</link> vo);
127
 
<link linkend="CamelObjectBag">CamelObjectBag</link> *    <link linkend="camel-object-bag-new">camel_object_bag_new</link>                (<link linkend="GHashFunc">GHashFunc</link> hash,
128
 
                                                         <link linkend="GEqualFunc">GEqualFunc</link> equal,
129
 
                                                         <link linkend="CamelCopyFunc">CamelCopyFunc</link> keycopy,
130
 
                                                         <link linkend="GFreeFunc">GFreeFunc</link> keyfree);
131
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-object-bag-get">camel_object_bag_get</link>                (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
132
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);
133
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-object-bag-peek">camel_object_bag_peek</link>               (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
134
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);
135
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-object-bag-reserve">camel_object_bag_reserve</link>            (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
136
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);
137
 
<link linkend="void">void</link>                <link linkend="camel-object-bag-add">camel_object_bag_add</link>                (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
138
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key,
139
 
                                                         <link linkend="gpointer">gpointer</link> vo);
140
 
<link linkend="void">void</link>                <link linkend="camel-object-bag-abort">camel_object_bag_abort</link>              (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
141
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);
142
 
<link linkend="void">void</link>                <link linkend="camel-object-bag-rekey">camel_object_bag_rekey</link>              (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
143
 
                                                         <link linkend="gpointer">gpointer</link> o,
144
 
                                                         <link linkend="gconstpointer">gconstpointer</link> newkey);
145
 
<link linkend="GPtrArray">GPtrArray</link> *         <link linkend="camel-object-bag-list">camel_object_bag_list</link>               (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag);
146
 
<link linkend="void">void</link>                <link linkend="camel-object-bag-remove">camel_object_bag_remove</link>             (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
147
 
                                                         <link linkend="gpointer">gpointer</link> o);
148
 
<link linkend="void">void</link>                <link linkend="camel-object-bag-destroy">camel_object_bag_destroy</link>            (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag);
149
 
#define             <link linkend="CAMEL-MAKE-CLASS--CAPS">CAMEL_MAKE_CLASS</link>                    (type, tname, parent, pname)
150
 
                    <link linkend="CamelIteratorVTable">CamelIteratorVTable</link>;
151
 
                    <link linkend="CamelIterator">CamelIterator</link>;
152
 
<link linkend="gpointer">gpointer</link>            <link linkend="camel-iterator-new">camel_iterator_new</link>                  (<link linkend="CamelIteratorVTable">CamelIteratorVTable</link> *klass,
153
 
                                                         <link linkend="gsize">gsize</link> size);
154
 
<link linkend="void">void</link>                <link linkend="camel-iterator-free">camel_iterator_free</link>                 (<link linkend="gpointer">gpointer</link> it);
155
 
<link linkend="gconstpointer">gconstpointer</link>       <link linkend="camel-iterator-next">camel_iterator_next</link>                 (<link linkend="gpointer">gpointer</link> it,
156
 
                                                         <link linkend="CamelException">CamelException</link> *ex);
157
 
<link linkend="void">void</link>                <link linkend="camel-iterator-reset">camel_iterator_reset</link>                (<link linkend="gpointer">gpointer</link> it);
158
 
<link linkend="gint">gint</link>                <link linkend="camel-iterator-length">camel_iterator_length</link>               (<link linkend="gpointer">gpointer</link> it);
159
 
</synopsis>
160
 
</refsynopsisdiv>
161
 
 
162
 
 
163
 
 
164
 
 
165
 
 
166
 
 
167
 
 
168
 
 
169
 
 
170
 
<refsect1 id="camel-CamelObject.description" role="desc">
171
 
<title role="desc.title">Description</title>
172
 
<para>
173
 
</para>
174
 
</refsect1>
175
 
 
176
 
<refsect1 id="camel-CamelObject.details" role="details">
177
 
<title role="details.title">Details</title>
178
 
<refsect2 id="CAMEL-OBJECT-TRACK-INSTANCES--CAPS" role="macro">
179
 
<title>CAMEL_OBJECT_TRACK_INSTANCES</title>
180
 
<indexterm zone="CAMEL-OBJECT-TRACK-INSTANCES--CAPS"><primary sortas="CAMEL_OBJECT_TRACK_INSTANCES">CAMEL_OBJECT_TRACK_INSTANCES</primary></indexterm><programlisting>#define CAMEL_OBJECT_TRACK_INSTANCES
181
 
</programlisting>
182
 
<para>
183
 
</para></refsect2>
184
 
<refsect2 id="CamelType" role="typedef">
185
 
<title>CamelType</title>
186
 
<indexterm zone="CamelType"><primary sortas="CamelType">CamelType</primary></indexterm><programlisting>typedef struct _CamelObjectClass *CamelType;
187
 
</programlisting>
188
 
<para>
189
 
</para></refsect2>
190
 
<refsect2 id="CamelObject" role="struct">
191
 
<title>CamelObject</title>
192
 
<indexterm zone="CamelObject"><primary sortas="CamelObject">CamelObject</primary></indexterm><programlisting>typedef struct {
193
 
        struct _CamelObjectClass *klass;
194
 
 
195
 
        guint32 magic;          /* only really needed for debugging ... */
196
 
 
197
 
        /* current hooks on this object */
198
 
        struct _CamelHookList *hooks;
199
 
 
200
 
        guint32 ref_count:24;
201
 
        guint32 flags:8;
202
 
 
203
 
#ifdef CAMEL_OBJECT_TRACK_INSTANCES
204
 
        struct _CamelObject *next, *prev;
205
 
#endif
206
 
} CamelObject;
207
 
</programlisting>
208
 
<para>
209
 
</para></refsect2>
210
 
<refsect2 id="CAMEL-CHECK-CAST--CAPS" role="macro">
211
 
<title>CAMEL_CHECK_CAST()</title>
212
 
<indexterm zone="CAMEL-CHECK-CAST--CAPS"><primary sortas="CAMEL_CHECK_CAST">CAMEL_CHECK_CAST</primary></indexterm><programlisting>#define             CAMEL_CHECK_CAST(obj, ctype, ptype)</programlisting>
213
 
<para>
214
 
</para><variablelist role="params">
215
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
216
 
<listitem><simpara>
217
 
</simpara></listitem></varlistentry>
218
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
219
 
<listitem><simpara>
220
 
</simpara></listitem></varlistentry>
221
 
<varlistentry><term><parameter>ptype</parameter>&#160;:</term>
222
 
<listitem><simpara>
223
 
</simpara></listitem></varlistentry>
224
 
</variablelist></refsect2>
225
 
<refsect2 id="CAMEL-CHECK-CLASS-CAST--CAPS" role="macro">
226
 
<title>CAMEL_CHECK_CLASS_CAST()</title>
227
 
<indexterm zone="CAMEL-CHECK-CLASS-CAST--CAPS"><primary sortas="CAMEL_CHECK_CLASS_CAST">CAMEL_CHECK_CLASS_CAST</primary></indexterm><programlisting>#define             CAMEL_CHECK_CLASS_CAST(klass, ctype, ptype)</programlisting>
228
 
<para>
229
 
</para><variablelist role="params">
230
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
231
 
<listitem><simpara>
232
 
</simpara></listitem></varlistentry>
233
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
234
 
<listitem><simpara>
235
 
</simpara></listitem></varlistentry>
236
 
<varlistentry><term><parameter>ptype</parameter>&#160;:</term>
237
 
<listitem><simpara>
238
 
</simpara></listitem></varlistentry>
239
 
</variablelist></refsect2>
240
 
<refsect2 id="CAMEL-CHECK-TYPE--CAPS" role="macro">
241
 
<title>CAMEL_CHECK_TYPE()</title>
242
 
<indexterm zone="CAMEL-CHECK-TYPE--CAPS"><primary sortas="CAMEL_CHECK_TYPE">CAMEL_CHECK_TYPE</primary></indexterm><programlisting>#define CAMEL_CHECK_TYPE(obj, ctype)                (camel_object_is ((CamelObject *)(obj), (CamelType)(ctype) ))
243
 
</programlisting>
244
 
<para>
245
 
</para><variablelist role="params">
246
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
247
 
<listitem><simpara>
248
 
</simpara></listitem></varlistentry>
249
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
250
 
<listitem><simpara>
251
 
</simpara></listitem></varlistentry>
252
 
</variablelist></refsect2>
253
 
<refsect2 id="CAMEL-CHECK-CLASS-TYPE--CAPS" role="macro">
254
 
<title>CAMEL_CHECK_CLASS_TYPE()</title>
255
 
<indexterm zone="CAMEL-CHECK-CLASS-TYPE--CAPS"><primary sortas="CAMEL_CHECK_CLASS_TYPE">CAMEL_CHECK_CLASS_TYPE</primary></indexterm><programlisting>#define CAMEL_CHECK_CLASS_TYPE(klass, ctype)        (camel_object_class_is ((CamelObjectClass *)(klass), (CamelType)(ctype)))
256
 
</programlisting>
257
 
<para>
258
 
</para><variablelist role="params">
259
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
260
 
<listitem><simpara>
261
 
</simpara></listitem></varlistentry>
262
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
263
 
<listitem><simpara>
264
 
</simpara></listitem></varlistentry>
265
 
</variablelist></refsect2>
266
 
<refsect2 id="camel-object-type" role="variable">
267
 
<title>camel_object_type</title>
268
 
<indexterm zone="camel-object-type"><primary sortas="camel_object_type">camel_object_type</primary></indexterm><programlisting>extern CamelType camel_object_type;
269
 
</programlisting>
270
 
<para>
271
 
</para></refsect2>
272
 
<refsect2 id="CAMEL-OBJECT-TYPE--CAPS" role="macro">
273
 
<title>CAMEL_OBJECT_TYPE</title>
274
 
<indexterm zone="CAMEL-OBJECT-TYPE--CAPS"><primary sortas="CAMEL_OBJECT_TYPE">CAMEL_OBJECT_TYPE</primary></indexterm><programlisting>#define CAMEL_OBJECT_TYPE        (camel_object_type)
275
 
</programlisting>
276
 
<para>
277
 
</para></refsect2>
278
 
<refsect2 id="CAMEL-OBJECT-GET-TYPE--CAPS" role="macro">
279
 
<title>CAMEL_OBJECT_GET_TYPE()</title>
280
 
<indexterm zone="CAMEL-OBJECT-GET-TYPE--CAPS"><primary sortas="CAMEL_OBJECT_GET_TYPE">CAMEL_OBJECT_GET_TYPE</primary></indexterm><programlisting>#define CAMEL_OBJECT_GET_TYPE(o)  ((CamelType)(CAMEL_OBJECT(o))-&gt;klass)
281
 
</programlisting>
282
 
<para>
283
 
</para><variablelist role="params">
284
 
<varlistentry><term><parameter>o</parameter>&#160;:</term>
285
 
<listitem><simpara>
286
 
</simpara></listitem></varlistentry>
287
 
</variablelist></refsect2>
288
 
<refsect2 id="CamelObjectHookID" role="typedef">
289
 
<title>CamelObjectHookID</title>
290
 
<indexterm zone="CamelObjectHookID"><primary sortas="CamelObjectHookID">CamelObjectHookID</primary></indexterm><programlisting>typedef guint CamelObjectHookID;
291
 
</programlisting>
292
 
<para>
293
 
</para></refsect2>
294
 
<refsect2 id="CamelObjectMeta" role="struct" condition="deprecated:">
295
 
<title>CamelObjectMeta</title>
296
 
<indexterm zone="CamelObjectMeta" role="deprecated"><primary sortas="CamelObjectMeta">CamelObjectMeta</primary></indexterm><programlisting>typedef struct {
297
 
        struct _CamelObjectMeta *next;
298
 
 
299
 
        gchar *value;
300
 
        gchar name[1];          /* allocated as part of structure */
301
 
} CamelObjectMeta;
302
 
</programlisting>
303
 
<warning><para><literal>CamelObjectMeta</literal> is deprecated and should not be used in newly-written code.</para></warning>
304
 
<para>
305
 
</para></refsect2>
306
 
<refsect2 id="camel-interface-type" role="variable" condition="deprecated:">
307
 
<title>camel_interface_type</title>
308
 
<indexterm zone="camel-interface-type" role="deprecated"><primary sortas="camel_interface_type">camel_interface_type</primary></indexterm><programlisting>extern CamelType camel_interface_type;
309
 
</programlisting>
310
 
<warning><para><literal>camel_interface_type</literal> is deprecated and should not be used in newly-written code.</para></warning>
311
 
<para>
312
 
</para></refsect2>
313
 
<refsect2 id="CAMEL-INTERFACE-TYPE--CAPS" role="macro" condition="deprecated:">
314
 
<title>CAMEL_INTERFACE_TYPE</title>
315
 
<indexterm zone="CAMEL-INTERFACE-TYPE--CAPS" role="deprecated"><primary sortas="CAMEL_INTERFACE_TYPE">CAMEL_INTERFACE_TYPE</primary></indexterm><programlisting>#define CAMEL_INTERFACE_TYPE (camel_interface_type)
316
 
</programlisting>
317
 
<warning><para><literal>CAMEL_INTERFACE_TYPE</literal> is deprecated and should not be used in newly-written code.</para></warning>
318
 
<para>
319
 
</para></refsect2>
320
 
<refsect2 id="CamelInterface" role="struct" condition="deprecated:">
321
 
<title>CamelInterface</title>
322
 
<indexterm zone="CamelInterface" role="deprecated"><primary sortas="CamelInterface">CamelInterface</primary></indexterm><programlisting>typedef struct {
323
 
        struct _CamelObjectClass type;
324
 
} CamelInterface;
325
 
</programlisting>
326
 
<warning><para><literal>CamelInterface</literal> is deprecated and should not be used in newly-written code.</para></warning>
327
 
<para>
328
 
</para></refsect2>
329
 
<refsect2 id="CamelObjectClassInitFunc" role="function">
330
 
<title>CamelObjectClassInitFunc ()</title>
331
 
<indexterm zone="CamelObjectClassInitFunc"><primary sortas="CamelObjectClassInitFunc">CamelObjectClassInitFunc</primary></indexterm><programlisting><link linkend="void">void</link>                (*CamelObjectClassInitFunc)         (<link linkend="CamelObjectClass">CamelObjectClass</link> *);</programlisting>
332
 
<para>
333
 
</para><variablelist role="params">
334
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
335
 
<listitem><simpara>
336
 
</simpara></listitem></varlistentry>
337
 
</variablelist></refsect2>
338
 
<refsect2 id="CamelObjectClassFinalizeFunc" role="function">
339
 
<title>CamelObjectClassFinalizeFunc ()</title>
340
 
<indexterm zone="CamelObjectClassFinalizeFunc"><primary sortas="CamelObjectClassFinalizeFunc">CamelObjectClassFinalizeFunc</primary></indexterm><programlisting><link linkend="void">void</link>                (*CamelObjectClassFinalizeFunc)     (<link linkend="CamelObjectClass">CamelObjectClass</link> *);</programlisting>
341
 
<para>
342
 
</para><variablelist role="params">
343
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
344
 
<listitem><simpara>
345
 
</simpara></listitem></varlistentry>
346
 
</variablelist></refsect2>
347
 
<refsect2 id="CamelObjectInitFunc" role="function">
348
 
<title>CamelObjectInitFunc ()</title>
349
 
<indexterm zone="CamelObjectInitFunc"><primary sortas="CamelObjectInitFunc">CamelObjectInitFunc</primary></indexterm><programlisting><link linkend="void">void</link>                (*CamelObjectInitFunc)              (<link linkend="CamelObject">CamelObject</link> *,
350
 
                                                         <link linkend="CamelObjectClass">CamelObjectClass</link> *);</programlisting>
351
 
<para>
352
 
</para><variablelist role="params">
353
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
354
 
<listitem><simpara>
355
 
</simpara></listitem></varlistentry>
356
 
<varlistentry><term><parameter>Param2</parameter>&#160;:</term>
357
 
<listitem><simpara>
358
 
</simpara></listitem></varlistentry>
359
 
</variablelist></refsect2>
360
 
<refsect2 id="CamelObjectFinalizeFunc" role="function">
361
 
<title>CamelObjectFinalizeFunc ()</title>
362
 
<indexterm zone="CamelObjectFinalizeFunc"><primary sortas="CamelObjectFinalizeFunc">CamelObjectFinalizeFunc</primary></indexterm><programlisting><link linkend="void">void</link>                (*CamelObjectFinalizeFunc)          (<link linkend="CamelObject">CamelObject</link> *);</programlisting>
363
 
<para>
364
 
</para><variablelist role="params">
365
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
366
 
<listitem><simpara>
367
 
</simpara></listitem></varlistentry>
368
 
</variablelist></refsect2>
369
 
<refsect2 id="CamelObjectEventPrepFunc" role="function">
370
 
<title>CamelObjectEventPrepFunc ()</title>
371
 
<indexterm zone="CamelObjectEventPrepFunc"><primary sortas="CamelObjectEventPrepFunc">CamelObjectEventPrepFunc</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            (*CamelObjectEventPrepFunc)         (<link linkend="CamelObject">CamelObject</link> *,
372
 
                                                         <link linkend="gpointer">gpointer</link> );</programlisting>
373
 
<para>
374
 
</para><variablelist role="params">
375
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
376
 
<listitem><simpara>
377
 
</simpara></listitem></varlistentry>
378
 
<varlistentry><term><parameter>Param2</parameter>&#160;:</term>
379
 
<listitem><simpara>
380
 
</simpara></listitem></varlistentry>
381
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
382
 
</simpara></listitem></varlistentry>
383
 
</variablelist></refsect2>
384
 
<refsect2 id="CamelObjectEventHookFunc" role="function">
385
 
<title>CamelObjectEventHookFunc ()</title>
386
 
<indexterm zone="CamelObjectEventHookFunc"><primary sortas="CamelObjectEventHookFunc">CamelObjectEventHookFunc</primary></indexterm><programlisting><link linkend="void">void</link>                (*CamelObjectEventHookFunc)         (<link linkend="CamelObject">CamelObject</link> *,
387
 
                                                         <link linkend="gpointer">gpointer</link> ,
388
 
                                                         <link linkend="gpointer">gpointer</link> );</programlisting>
389
 
<para>
390
 
</para><variablelist role="params">
391
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
392
 
<listitem><simpara>
393
 
</simpara></listitem></varlistentry>
394
 
<varlistentry><term><parameter>Param2</parameter>&#160;:</term>
395
 
<listitem><simpara>
396
 
</simpara></listitem></varlistentry>
397
 
<varlistentry><term><parameter>Param3</parameter>&#160;:</term>
398
 
<listitem><simpara>
399
 
</simpara></listitem></varlistentry>
400
 
</variablelist></refsect2>
401
 
<refsect2 id="CAMEL-INVALID-TYPE--CAPS" role="macro">
402
 
<title>CAMEL_INVALID_TYPE</title>
403
 
<indexterm zone="CAMEL-INVALID-TYPE--CAPS"><primary sortas="CAMEL_INVALID_TYPE">CAMEL_INVALID_TYPE</primary></indexterm><programlisting>#define CAMEL_INVALID_TYPE (NULL)
404
 
</programlisting>
405
 
<para>
406
 
</para></refsect2>
407
 
<refsect2 id="CamelObjectFlags" role="enum">
408
 
<title>enum CamelObjectFlags</title>
409
 
<indexterm zone="CamelObjectFlags"><primary sortas="CamelObjectFlags">CamelObjectFlags</primary></indexterm><programlisting>typedef enum _CamelObjectFlags {
410
 
        CAMEL_OBJECT_DESTROY = (1&lt;&lt;0)
411
 
} CamelObjectFlags;
412
 
</programlisting>
413
 
<para>
414
 
</para></refsect2>
415
 
<refsect2 id="camel-type-init" role="function">
416
 
<title>camel_type_init ()</title>
417
 
<indexterm zone="camel-type-init"><primary sortas="camel_type_init">camel_type_init</primary></indexterm><programlisting><link linkend="void">void</link>                camel_type_init                     (void);</programlisting>
418
 
<para>
419
 
</para></refsect2>
420
 
<refsect2 id="camel-type-register" role="function">
421
 
<title>camel_type_register ()</title>
422
 
<indexterm zone="camel-type-register"><primary sortas="camel_type_register">camel_type_register</primary></indexterm><programlisting><link linkend="CamelType">CamelType</link>           camel_type_register                 (<link linkend="CamelType">CamelType</link> parent,
423
 
                                                         const <link linkend="gchar">gchar</link> *name,
424
 
                                                         <link linkend="gsize">gsize</link> instance_size,
425
 
                                                         <link linkend="gsize">gsize</link> classfuncs_size,
426
 
                                                         <link linkend="CamelObjectClassInitFunc">CamelObjectClassInitFunc</link> class_init,
427
 
                                                         <link linkend="CamelObjectClassFinalizeFunc">CamelObjectClassFinalizeFunc</link> class_finalize,
428
 
                                                         <link linkend="CamelObjectInitFunc">CamelObjectInitFunc</link> instance_init,
429
 
                                                         <link linkend="CamelObjectFinalizeFunc">CamelObjectFinalizeFunc</link> instance_finalize);</programlisting>
430
 
<para>
431
 
</para><variablelist role="params">
432
 
<varlistentry><term><parameter>parent</parameter>&#160;:</term>
433
 
<listitem><simpara>
434
 
</simpara></listitem></varlistentry>
435
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
436
 
<listitem><simpara>
437
 
</simpara></listitem></varlistentry>
438
 
<varlistentry><term><parameter>instance_size</parameter>&#160;:</term>
439
 
<listitem><simpara>
440
 
</simpara></listitem></varlistentry>
441
 
<varlistentry><term><parameter>classfuncs_size</parameter>&#160;:</term>
442
 
<listitem><simpara>
443
 
</simpara></listitem></varlistentry>
444
 
<varlistentry><term><parameter>class_init</parameter>&#160;:</term>
445
 
<listitem><simpara>
446
 
</simpara></listitem></varlistentry>
447
 
<varlistentry><term><parameter>class_finalize</parameter>&#160;:</term>
448
 
<listitem><simpara>
449
 
</simpara></listitem></varlistentry>
450
 
<varlistentry><term><parameter>instance_init</parameter>&#160;:</term>
451
 
<listitem><simpara>
452
 
</simpara></listitem></varlistentry>
453
 
<varlistentry><term><parameter>instance_finalize</parameter>&#160;:</term>
454
 
<listitem><simpara>
455
 
</simpara></listitem></varlistentry>
456
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
457
 
</simpara></listitem></varlistentry>
458
 
</variablelist></refsect2>
459
 
<refsect2 id="camel-interface-register" role="function" condition="deprecated:">
460
 
<title>camel_interface_register ()</title>
461
 
<indexterm zone="camel-interface-register" role="deprecated"><primary sortas="camel_interface_register">camel_interface_register</primary></indexterm><programlisting><link linkend="CamelType">CamelType</link>           camel_interface_register            (<link linkend="CamelType">CamelType</link> parent,
462
 
                                                         const <link linkend="gchar">gchar</link> *name,
463
 
                                                         <link linkend="gsize">gsize</link> classfuncs_size,
464
 
                                                         <link linkend="CamelObjectClassInitFunc">CamelObjectClassInitFunc</link> class_init,
465
 
                                                         <link linkend="CamelObjectClassFinalizeFunc">CamelObjectClassFinalizeFunc</link> class_finalize);</programlisting>
466
 
<warning><para><literal>camel_interface_register</literal> is deprecated and should not be used in newly-written code.</para></warning>
467
 
<para>
468
 
</para><variablelist role="params">
469
 
<varlistentry><term><parameter>parent</parameter>&#160;:</term>
470
 
<listitem><simpara>
471
 
</simpara></listitem></varlistentry>
472
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
473
 
<listitem><simpara>
474
 
</simpara></listitem></varlistentry>
475
 
<varlistentry><term><parameter>classfuncs_size</parameter>&#160;:</term>
476
 
<listitem><simpara>
477
 
</simpara></listitem></varlistentry>
478
 
<varlistentry><term><parameter>class_init</parameter>&#160;:</term>
479
 
<listitem><simpara>
480
 
</simpara></listitem></varlistentry>
481
 
<varlistentry><term><parameter>class_finalize</parameter>&#160;:</term>
482
 
<listitem><simpara>
483
 
</simpara></listitem></varlistentry>
484
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
485
 
</simpara></listitem></varlistentry>
486
 
</variablelist></refsect2>
487
 
<refsect2 id="camel-type-get-global-classfuncs" role="macro">
488
 
<title>camel_type_get_global_classfuncs()</title>
489
 
<indexterm zone="camel-type-get-global-classfuncs"><primary sortas="camel_type_get_global_classfuncs">camel_type_get_global_classfuncs</primary></indexterm><programlisting>#define camel_type_get_global_classfuncs(x) ((CamelObjectClass *)(x))
490
 
</programlisting>
491
 
<para>
492
 
</para><variablelist role="params">
493
 
<varlistentry><term><parameter>x</parameter>&#160;:</term>
494
 
<listitem><simpara>
495
 
</simpara></listitem></varlistentry>
496
 
</variablelist></refsect2>
497
 
<refsect2 id="camel-type-to-name" role="function">
498
 
<title>camel_type_to_name ()</title>
499
 
<indexterm zone="camel-type-to-name"><primary sortas="camel_type_to_name">camel_type_to_name</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link> *       camel_type_to_name                  (<link linkend="CamelType">CamelType</link> type);</programlisting>
500
 
<para>
501
 
</para><variablelist role="params">
502
 
<varlistentry><term><parameter>type</parameter>&#160;:</term>
503
 
<listitem><simpara>
504
 
</simpara></listitem></varlistentry>
505
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
506
 
</simpara></listitem></varlistentry>
507
 
</variablelist></refsect2>
508
 
<refsect2 id="camel-name-to-type" role="function">
509
 
<title>camel_name_to_type ()</title>
510
 
<indexterm zone="camel-name-to-type"><primary sortas="camel_name_to_type">camel_name_to_type</primary></indexterm><programlisting><link linkend="CamelType">CamelType</link>           camel_name_to_type                  (const <link linkend="gchar">gchar</link> *name);</programlisting>
511
 
<para>
512
 
</para><variablelist role="params">
513
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
514
 
<listitem><simpara>
515
 
</simpara></listitem></varlistentry>
516
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
517
 
</simpara></listitem></varlistentry>
518
 
</variablelist></refsect2>
519
 
<refsect2 id="camel-object-class-add-event" role="function">
520
 
<title>camel_object_class_add_event ()</title>
521
 
<indexterm zone="camel-object-class-add-event"><primary sortas="camel_object_class_add_event">camel_object_class_add_event</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_class_add_event        (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
522
 
                                                         const <link linkend="gchar">gchar</link> *name,
523
 
                                                         <link linkend="CamelObjectEventPrepFunc">CamelObjectEventPrepFunc</link> prep);</programlisting>
524
 
<para>
525
 
</para><variablelist role="params">
526
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
527
 
<listitem><simpara>
528
 
</simpara></listitem></varlistentry>
529
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
530
 
<listitem><simpara>
531
 
</simpara></listitem></varlistentry>
532
 
<varlistentry><term><parameter>prep</parameter>&#160;:</term>
533
 
<listitem><simpara>
534
 
</simpara></listitem></varlistentry>
535
 
</variablelist></refsect2>
536
 
<refsect2 id="camel-object-class-add-interface" role="function" condition="deprecated:">
537
 
<title>camel_object_class_add_interface ()</title>
538
 
<indexterm zone="camel-object-class-add-interface" role="deprecated"><primary sortas="camel_object_class_add_interface">camel_object_class_add_interface</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_class_add_interface    (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
539
 
                                                         <link linkend="CamelType">CamelType</link> itype);</programlisting>
540
 
<warning><para><literal>camel_object_class_add_interface</literal> is deprecated and should not be used in newly-written code.</para></warning>
541
 
<para>
542
 
</para><variablelist role="params">
543
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
544
 
<listitem><simpara>
545
 
</simpara></listitem></varlistentry>
546
 
<varlistentry><term><parameter>itype</parameter>&#160;:</term>
547
 
<listitem><simpara>
548
 
</simpara></listitem></varlistentry>
549
 
</variablelist></refsect2>
550
 
<refsect2 id="camel-object-class-dump-tree" role="function">
551
 
<title>camel_object_class_dump_tree ()</title>
552
 
<indexterm zone="camel-object-class-dump-tree"><primary sortas="camel_object_class_dump_tree">camel_object_class_dump_tree</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_class_dump_tree        (<link linkend="CamelType">CamelType</link> root);</programlisting>
553
 
<para>
554
 
</para><variablelist role="params">
555
 
<varlistentry><term><parameter>root</parameter>&#160;:</term>
556
 
<listitem><simpara>
557
 
</simpara></listitem></varlistentry>
558
 
</variablelist></refsect2>
559
 
<refsect2 id="camel-object-cast" role="function">
560
 
<title>camel_object_cast ()</title>
561
 
<indexterm zone="camel-object-cast"><primary sortas="camel_object_cast">camel_object_cast</primary></indexterm><programlisting><link linkend="CamelObject">CamelObject</link> *       camel_object_cast                   (<link linkend="CamelObject">CamelObject</link> *obj,
562
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
563
 
<para>
564
 
</para><variablelist role="params">
565
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
566
 
<listitem><simpara>
567
 
</simpara></listitem></varlistentry>
568
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
569
 
<listitem><simpara>
570
 
</simpara></listitem></varlistentry>
571
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
572
 
</simpara></listitem></varlistentry>
573
 
</variablelist></refsect2>
574
 
<refsect2 id="camel-object-is" role="function">
575
 
<title>camel_object_is ()</title>
576
 
<indexterm zone="camel-object-is"><primary sortas="camel_object_is">camel_object_is</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            camel_object_is                     (<link linkend="CamelObject">CamelObject</link> *obj,
577
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
578
 
<para>
579
 
</para><variablelist role="params">
580
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
581
 
<listitem><simpara>
582
 
</simpara></listitem></varlistentry>
583
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
584
 
<listitem><simpara>
585
 
</simpara></listitem></varlistentry>
586
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
587
 
</simpara></listitem></varlistentry>
588
 
</variablelist></refsect2>
589
 
<refsect2 id="camel-object-class-cast" role="function">
590
 
<title>camel_object_class_cast ()</title>
591
 
<indexterm zone="camel-object-class-cast"><primary sortas="camel_object_class_cast">camel_object_class_cast</primary></indexterm><programlisting><link linkend="CamelObjectClass">CamelObjectClass</link> *  camel_object_class_cast             (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
592
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
593
 
<para>
594
 
</para><variablelist role="params">
595
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
596
 
<listitem><simpara>
597
 
</simpara></listitem></varlistentry>
598
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
599
 
<listitem><simpara>
600
 
</simpara></listitem></varlistentry>
601
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
602
 
</simpara></listitem></varlistentry>
603
 
</variablelist></refsect2>
604
 
<refsect2 id="camel-object-class-is" role="function">
605
 
<title>camel_object_class_is ()</title>
606
 
<indexterm zone="camel-object-class-is"><primary sortas="camel_object_class_is">camel_object_class_is</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            camel_object_class_is               (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
607
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
608
 
<para>
609
 
</para><variablelist role="params">
610
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
611
 
<listitem><simpara>
612
 
</simpara></listitem></varlistentry>
613
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
614
 
<listitem><simpara>
615
 
</simpara></listitem></varlistentry>
616
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
617
 
</simpara></listitem></varlistentry>
618
 
</variablelist></refsect2>
619
 
<refsect2 id="camel-interface-cast" role="function" condition="deprecated:">
620
 
<title>camel_interface_cast ()</title>
621
 
<indexterm zone="camel-interface-cast" role="deprecated"><primary sortas="camel_interface_cast">camel_interface_cast</primary></indexterm><programlisting><link linkend="CamelObjectClass">CamelObjectClass</link> *  camel_interface_cast                (<link linkend="CamelObjectClass">CamelObjectClass</link> *klass,
622
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
623
 
<warning><para><literal>camel_interface_cast</literal> is deprecated and should not be used in newly-written code.</para></warning>
624
 
<para>
625
 
</para><variablelist role="params">
626
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
627
 
<listitem><simpara>
628
 
</simpara></listitem></varlistentry>
629
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
630
 
<listitem><simpara>
631
 
</simpara></listitem></varlistentry>
632
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
633
 
</simpara></listitem></varlistentry>
634
 
</variablelist></refsect2>
635
 
<refsect2 id="camel-interface-is" role="function" condition="deprecated:">
636
 
<title>camel_interface_is ()</title>
637
 
<indexterm zone="camel-interface-is" role="deprecated"><primary sortas="camel_interface_is">camel_interface_is</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            camel_interface_is                  (<link linkend="CamelObjectClass">CamelObjectClass</link> *k,
638
 
                                                         <link linkend="CamelType">CamelType</link> ctype);</programlisting>
639
 
<warning><para><literal>camel_interface_is</literal> is deprecated and should not be used in newly-written code.</para></warning>
640
 
<para>
641
 
</para><variablelist role="params">
642
 
<varlistentry><term><parameter>k</parameter>&#160;:</term>
643
 
<listitem><simpara>
644
 
</simpara></listitem></varlistentry>
645
 
<varlistentry><term><parameter>ctype</parameter>&#160;:</term>
646
 
<listitem><simpara>
647
 
</simpara></listitem></varlistentry>
648
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
649
 
</simpara></listitem></varlistentry>
650
 
</variablelist></refsect2>
651
 
<refsect2 id="camel-object-new" role="function">
652
 
<title>camel_object_new ()</title>
653
 
<indexterm zone="camel-object-new"><primary sortas="camel_object_new">camel_object_new</primary></indexterm><programlisting><link linkend="CamelObject">CamelObject</link> *       camel_object_new                    (<link linkend="CamelType">CamelType</link> type);</programlisting>
654
 
<para>
655
 
</para><variablelist role="params">
656
 
<varlistentry><term><parameter>type</parameter>&#160;:</term>
657
 
<listitem><simpara>
658
 
</simpara></listitem></varlistentry>
659
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
660
 
</simpara></listitem></varlistentry>
661
 
</variablelist></refsect2>
662
 
<refsect2 id="camel-object-ref" role="function">
663
 
<title>camel_object_ref ()</title>
664
 
<indexterm zone="camel-object-ref"><primary sortas="camel_object_ref">camel_object_ref</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_ref                    (<link linkend="gpointer">gpointer</link> );</programlisting>
665
 
<para>
666
 
</para><variablelist role="params">
667
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
668
 
<listitem><simpara>
669
 
</simpara></listitem></varlistentry>
670
 
</variablelist></refsect2>
671
 
<refsect2 id="camel-object-unref" role="function">
672
 
<title>camel_object_unref ()</title>
673
 
<indexterm zone="camel-object-unref"><primary sortas="camel_object_unref">camel_object_unref</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_unref                  (<link linkend="gpointer">gpointer</link> );</programlisting>
674
 
<para>
675
 
</para><variablelist role="params">
676
 
<varlistentry><term><parameter>Param1</parameter>&#160;:</term>
677
 
<listitem><simpara>
678
 
</simpara></listitem></varlistentry>
679
 
</variablelist></refsect2>
680
 
<refsect2 id="camel-object-hook-event" role="function">
681
 
<title>camel_object_hook_event ()</title>
682
 
<indexterm zone="camel-object-hook-event"><primary sortas="camel_object_hook_event">camel_object_hook_event</primary></indexterm><programlisting><link linkend="CamelObjectHookID">CamelObjectHookID</link>   camel_object_hook_event             (<link linkend="gpointer">gpointer</link> obj,
683
 
                                                         const <link linkend="gchar">gchar</link> *name,
684
 
                                                         <link linkend="CamelObjectEventHookFunc">CamelObjectEventHookFunc</link> hook,
685
 
                                                         <link linkend="gpointer">gpointer</link> data);</programlisting>
686
 
<para>
687
 
</para><variablelist role="params">
688
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
689
 
<listitem><simpara>
690
 
</simpara></listitem></varlistentry>
691
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
692
 
<listitem><simpara>
693
 
</simpara></listitem></varlistentry>
694
 
<varlistentry><term><parameter>hook</parameter>&#160;:</term>
695
 
<listitem><simpara>
696
 
</simpara></listitem></varlistentry>
697
 
<varlistentry><term><parameter>data</parameter>&#160;:</term>
698
 
<listitem><simpara>
699
 
</simpara></listitem></varlistentry>
700
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
701
 
</simpara></listitem></varlistentry>
702
 
</variablelist></refsect2>
703
 
<refsect2 id="camel-object-remove-event" role="function">
704
 
<title>camel_object_remove_event ()</title>
705
 
<indexterm zone="camel-object-remove-event"><primary sortas="camel_object_remove_event">camel_object_remove_event</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_remove_event           (<link linkend="gpointer">gpointer</link> obj,
706
 
                                                         <link linkend="CamelObjectHookID">CamelObjectHookID</link> id);</programlisting>
707
 
<para>
708
 
</para><variablelist role="params">
709
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
710
 
<listitem><simpara>
711
 
</simpara></listitem></varlistentry>
712
 
<varlistentry><term><parameter>id</parameter>&#160;:</term>
713
 
<listitem><simpara>
714
 
</simpara></listitem></varlistentry>
715
 
</variablelist></refsect2>
716
 
<refsect2 id="camel-object-unhook-event" role="function">
717
 
<title>camel_object_unhook_event ()</title>
718
 
<indexterm zone="camel-object-unhook-event"><primary sortas="camel_object_unhook_event">camel_object_unhook_event</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_unhook_event           (<link linkend="gpointer">gpointer</link> obj,
719
 
                                                         const <link linkend="gchar">gchar</link> *name,
720
 
                                                         <link linkend="CamelObjectEventHookFunc">CamelObjectEventHookFunc</link> hook,
721
 
                                                         <link linkend="gpointer">gpointer</link> data);</programlisting>
722
 
<para>
723
 
</para><variablelist role="params">
724
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
725
 
<listitem><simpara>
726
 
</simpara></listitem></varlistentry>
727
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
728
 
<listitem><simpara>
729
 
</simpara></listitem></varlistentry>
730
 
<varlistentry><term><parameter>hook</parameter>&#160;:</term>
731
 
<listitem><simpara>
732
 
</simpara></listitem></varlistentry>
733
 
<varlistentry><term><parameter>data</parameter>&#160;:</term>
734
 
<listitem><simpara>
735
 
</simpara></listitem></varlistentry>
736
 
</variablelist></refsect2>
737
 
<refsect2 id="camel-object-trigger-event" role="function">
738
 
<title>camel_object_trigger_event ()</title>
739
 
<indexterm zone="camel-object-trigger-event"><primary sortas="camel_object_trigger_event">camel_object_trigger_event</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_trigger_event          (<link linkend="gpointer">gpointer</link> obj,
740
 
                                                         const <link linkend="gchar">gchar</link> *name,
741
 
                                                         <link linkend="gpointer">gpointer</link> event_data);</programlisting>
742
 
<para>
743
 
</para><variablelist role="params">
744
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
745
 
<listitem><simpara>
746
 
</simpara></listitem></varlistentry>
747
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
748
 
<listitem><simpara>
749
 
</simpara></listitem></varlistentry>
750
 
<varlistentry><term><parameter>event_data</parameter>&#160;:</term>
751
 
<listitem><simpara>
752
 
</simpara></listitem></varlistentry>
753
 
</variablelist></refsect2>
754
 
<refsect2 id="camel-object-get-interface" role="function" condition="deprecated:">
755
 
<title>camel_object_get_interface ()</title>
756
 
<indexterm zone="camel-object-get-interface" role="deprecated"><primary sortas="camel_object_get_interface">camel_object_get_interface</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_object_get_interface          (<link linkend="gpointer">gpointer</link> vo,
757
 
                                                         <link linkend="CamelType">CamelType</link> itype);</programlisting>
758
 
<warning><para><literal>camel_object_get_interface</literal> is deprecated and should not be used in newly-written code.</para></warning>
759
 
<para>
760
 
</para><variablelist role="params">
761
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
762
 
<listitem><simpara>
763
 
</simpara></listitem></varlistentry>
764
 
<varlistentry><term><parameter>itype</parameter>&#160;:</term>
765
 
<listitem><simpara>
766
 
</simpara></listitem></varlistentry>
767
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
768
 
</simpara></listitem></varlistentry>
769
 
</variablelist></refsect2>
770
 
<refsect2 id="camel-object-set" role="function">
771
 
<title>camel_object_set ()</title>
772
 
<indexterm zone="camel-object-set"><primary sortas="camel_object_set">camel_object_set</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_set                    (<link linkend="gpointer">gpointer</link> obj,
773
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
774
 
                                                         ...);</programlisting>
775
 
<para>
776
 
</para><variablelist role="params">
777
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
778
 
<listitem><simpara>
779
 
</simpara></listitem></varlistentry>
780
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
781
 
<listitem><simpara>
782
 
</simpara></listitem></varlistentry>
783
 
<varlistentry><term><parameter>...</parameter>&#160;:</term>
784
 
<listitem><simpara>
785
 
</simpara></listitem></varlistentry>
786
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
787
 
</simpara></listitem></varlistentry>
788
 
</variablelist></refsect2>
789
 
<refsect2 id="camel-object-setv" role="function">
790
 
<title>camel_object_setv ()</title>
791
 
<indexterm zone="camel-object-setv"><primary sortas="camel_object_setv">camel_object_setv</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_setv                   (<link linkend="gpointer">gpointer</link> obj,
792
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
793
 
                                                         <link linkend="CamelArgV">CamelArgV</link> *);</programlisting>
794
 
<para>
795
 
</para><variablelist role="params">
796
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
797
 
<listitem><simpara>
798
 
</simpara></listitem></varlistentry>
799
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
800
 
<listitem><simpara>
801
 
</simpara></listitem></varlistentry>
802
 
<varlistentry><term><parameter>Param3</parameter>&#160;:</term>
803
 
<listitem><simpara>
804
 
</simpara></listitem></varlistentry>
805
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
806
 
</simpara></listitem></varlistentry>
807
 
</variablelist></refsect2>
808
 
<refsect2 id="camel-object-get" role="function">
809
 
<title>camel_object_get ()</title>
810
 
<indexterm zone="camel-object-get"><primary sortas="camel_object_get">camel_object_get</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_get                    (<link linkend="gpointer">gpointer</link> obj,
811
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
812
 
                                                         ...);</programlisting>
813
 
<para>
814
 
</para><variablelist role="params">
815
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
816
 
<listitem><simpara>
817
 
</simpara></listitem></varlistentry>
818
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
819
 
<listitem><simpara>
820
 
</simpara></listitem></varlistentry>
821
 
<varlistentry><term><parameter>...</parameter>&#160;:</term>
822
 
<listitem><simpara>
823
 
</simpara></listitem></varlistentry>
824
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
825
 
</simpara></listitem></varlistentry>
826
 
</variablelist></refsect2>
827
 
<refsect2 id="camel-object-getv" role="function">
828
 
<title>camel_object_getv ()</title>
829
 
<indexterm zone="camel-object-getv"><primary sortas="camel_object_getv">camel_object_getv</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_getv                   (<link linkend="gpointer">gpointer</link> obj,
830
 
                                                         <link linkend="struct--CamelException">struct _CamelException</link> *ex,
831
 
                                                         <link linkend="CamelArgGetV">CamelArgGetV</link> *);</programlisting>
832
 
<para>
833
 
</para><variablelist role="params">
834
 
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
835
 
<listitem><simpara>
836
 
</simpara></listitem></varlistentry>
837
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
838
 
<listitem><simpara>
839
 
</simpara></listitem></varlistentry>
840
 
<varlistentry><term><parameter>Param3</parameter>&#160;:</term>
841
 
<listitem><simpara>
842
 
</simpara></listitem></varlistentry>
843
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
844
 
</simpara></listitem></varlistentry>
845
 
</variablelist></refsect2>
846
 
<refsect2 id="camel-object-get-ptr" role="function">
847
 
<title>camel_object_get_ptr ()</title>
848
 
<indexterm zone="camel-object-get-ptr"><primary sortas="camel_object_get_ptr">camel_object_get_ptr</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_object_get_ptr                (<link linkend="gpointer">gpointer</link> vo,
849
 
                                                         <link linkend="CamelException">CamelException</link> *ex,
850
 
                                                         <link linkend="gint">gint</link> tag);</programlisting>
851
 
<para>
852
 
</para><variablelist role="params">
853
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
854
 
<listitem><simpara>
855
 
</simpara></listitem></varlistentry>
856
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
857
 
<listitem><simpara>
858
 
</simpara></listitem></varlistentry>
859
 
<varlistentry><term><parameter>tag</parameter>&#160;:</term>
860
 
<listitem><simpara>
861
 
</simpara></listitem></varlistentry>
862
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
863
 
</simpara></listitem></varlistentry>
864
 
</variablelist></refsect2>
865
 
<refsect2 id="camel-object-get-int" role="function">
866
 
<title>camel_object_get_int ()</title>
867
 
<indexterm zone="camel-object-get-int"><primary sortas="camel_object_get_int">camel_object_get_int</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_get_int                (<link linkend="gpointer">gpointer</link> vo,
868
 
                                                         <link linkend="CamelException">CamelException</link> *ex,
869
 
                                                         <link linkend="gint">gint</link> tag);</programlisting>
870
 
<para>
871
 
</para><variablelist role="params">
872
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
873
 
<listitem><simpara>
874
 
</simpara></listitem></varlistentry>
875
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
876
 
<listitem><simpara>
877
 
</simpara></listitem></varlistentry>
878
 
<varlistentry><term><parameter>tag</parameter>&#160;:</term>
879
 
<listitem><simpara>
880
 
</simpara></listitem></varlistentry>
881
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
882
 
</simpara></listitem></varlistentry>
883
 
</variablelist></refsect2>
884
 
<refsect2 id="camel-object-meta-get" role="function">
885
 
<title>camel_object_meta_get ()</title>
886
 
<indexterm zone="camel-object-meta-get"><primary sortas="camel_object_meta_get">camel_object_meta_get</primary></indexterm><programlisting><link linkend="gchar">gchar</link> *             camel_object_meta_get               (<link linkend="gpointer">gpointer</link> vo,
887
 
                                                         const <link linkend="gchar">gchar</link> *name);</programlisting>
888
 
<para>
889
 
Get a meta-data on an object.</para>
890
 
<para>
891
 
</para><variablelist role="params">
892
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
893
 
<listitem><simpara>
894
 
</simpara></listitem></varlistentry>
895
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
896
 
<listitem><simpara>
897
 
</simpara></listitem></varlistentry>
898
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> NULL if the meta-data is not set.
899
 
</simpara></listitem></varlistentry>
900
 
</variablelist></refsect2>
901
 
<refsect2 id="camel-object-meta-set" role="function">
902
 
<title>camel_object_meta_set ()</title>
903
 
<indexterm zone="camel-object-meta-set"><primary sortas="camel_object_meta_set">camel_object_meta_set</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            camel_object_meta_set               (<link linkend="gpointer">gpointer</link> vo,
904
 
                                                         const <link linkend="gchar">gchar</link> *name,
905
 
                                                         const <link linkend="gchar">gchar</link> *value);</programlisting>
906
 
<para>
907
 
Set a meta-data item on an object.  If the object supports persistent
908
 
data, then the meta-data will be persistent across sessions.
909
 
</para>
910
 
<para>
911
 
If the meta-data changes, is added, or removed, then a
912
 
"meta_changed" event will be triggered with the name of the changed
913
 
data.</para>
914
 
<para>
915
 
</para><variablelist role="params">
916
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
917
 
<listitem><simpara>
918
 
</simpara></listitem></varlistentry>
919
 
<varlistentry><term><parameter>name</parameter>&#160;:</term>
920
 
<listitem><simpara> Name of meta-data.  Should be prefixed with class of setter.
921
 
</simpara></listitem></varlistentry>
922
 
<varlistentry><term><parameter>value</parameter>&#160;:</term>
923
 
<listitem><simpara> Value to set.  If NULL, then the meta-data is removed.
924
 
</simpara></listitem></varlistentry>
925
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> TRUE if the setting caused a change to the object's
926
 
metadata.
927
 
</simpara></listitem></varlistentry>
928
 
</variablelist></refsect2>
929
 
<refsect2 id="camel-object-state-read" role="function">
930
 
<title>camel_object_state_read ()</title>
931
 
<indexterm zone="camel-object-state-read"><primary sortas="camel_object_state_read">camel_object_state_read</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_state_read             (<link linkend="gpointer">gpointer</link> vo);</programlisting>
932
 
<para>
933
 
Read persistent object state from object_set(CAMEL_OBJECT_STATE_FILE).</para>
934
 
<para>
935
 
</para><variablelist role="params">
936
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
937
 
<listitem><simpara>
938
 
</simpara></listitem></varlistentry>
939
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> -1 on error.
940
 
</simpara></listitem></varlistentry>
941
 
</variablelist></refsect2>
942
 
<refsect2 id="camel-object-state-write" role="function">
943
 
<title>camel_object_state_write ()</title>
944
 
<indexterm zone="camel-object-state-write"><primary sortas="camel_object_state_write">camel_object_state_write</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_object_state_write            (<link linkend="gpointer">gpointer</link> vo);</programlisting>
945
 
<para>
946
 
Write persistent state to the file as set by object_set(CAMEL_OBJECT_STATE_FILE).</para>
947
 
<para>
948
 
</para><variablelist role="params">
949
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
950
 
<listitem><simpara>
951
 
</simpara></listitem></varlistentry>
952
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> -1 on error.
953
 
</simpara></listitem></varlistentry>
954
 
</variablelist></refsect2>
955
 
<refsect2 id="camel-object-free" role="function">
956
 
<title>camel_object_free ()</title>
957
 
<indexterm zone="camel-object-free"><primary sortas="camel_object_free">camel_object_free</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_free                   (<link linkend="gpointer">gpointer</link> vo,
958
 
                                                         <link linkend="guint32">guint32</link> tag,
959
 
                                                         <link linkend="gpointer">gpointer</link> value);</programlisting>
960
 
<para>
961
 
</para><variablelist role="params">
962
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
963
 
<listitem><simpara>
964
 
</simpara></listitem></varlistentry>
965
 
<varlistentry><term><parameter>tag</parameter>&#160;:</term>
966
 
<listitem><simpara>
967
 
</simpara></listitem></varlistentry>
968
 
<varlistentry><term><parameter>value</parameter>&#160;:</term>
969
 
<listitem><simpara>
970
 
</simpara></listitem></varlistentry>
971
 
</variablelist></refsect2>
972
 
<refsect2 id="CamelObjectBag" role="struct">
973
 
<title>CamelObjectBag</title>
974
 
<indexterm zone="CamelObjectBag"><primary sortas="CamelObjectBag">CamelObjectBag</primary></indexterm><programlisting>typedef struct _CamelObjectBag CamelObjectBag;</programlisting>
975
 
<para>
976
 
</para></refsect2>
977
 
<refsect2 id="CamelCopyFunc" role="function">
978
 
<title>CamelCopyFunc ()</title>
979
 
<indexterm zone="CamelCopyFunc"><primary sortas="CamelCopyFunc">CamelCopyFunc</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            (*CamelCopyFunc)                    (<link linkend="gconstpointer">gconstpointer</link> vo);</programlisting>
980
 
<para>
981
 
</para><variablelist role="params">
982
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
983
 
<listitem><simpara>
984
 
</simpara></listitem></varlistentry>
985
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
986
 
</simpara></listitem></varlistentry>
987
 
</variablelist></refsect2>
988
 
<refsect2 id="camel-object-bag-new" role="function">
989
 
<title>camel_object_bag_new ()</title>
990
 
<indexterm zone="camel-object-bag-new"><primary sortas="camel_object_bag_new">camel_object_bag_new</primary></indexterm><programlisting><link linkend="CamelObjectBag">CamelObjectBag</link> *    camel_object_bag_new                (<link linkend="GHashFunc">GHashFunc</link> hash,
991
 
                                                         <link linkend="GEqualFunc">GEqualFunc</link> equal,
992
 
                                                         <link linkend="CamelCopyFunc">CamelCopyFunc</link> keycopy,
993
 
                                                         <link linkend="GFreeFunc">GFreeFunc</link> keyfree);</programlisting>
994
 
<para>
995
 
Allocate a new object bag.  Object bag's are key'd hash tables of
996
 
camel-objects which can be updated atomically using transaction
997
 
semantics.</para>
998
 
<para>
999
 
</para><variablelist role="params">
1000
 
<varlistentry><term><parameter>hash</parameter>&#160;:</term>
1001
 
<listitem><simpara>
1002
 
</simpara></listitem></varlistentry>
1003
 
<varlistentry><term><parameter>equal</parameter>&#160;:</term>
1004
 
<listitem><simpara>
1005
 
</simpara></listitem></varlistentry>
1006
 
<varlistentry><term><parameter>keycopy</parameter>&#160;:</term>
1007
 
<listitem><simpara>
1008
 
</simpara></listitem></varlistentry>
1009
 
<varlistentry><term><parameter>keyfree</parameter>&#160;:</term>
1010
 
<listitem><simpara>
1011
 
</simpara></listitem></varlistentry>
1012
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1013
 
</simpara></listitem></varlistentry>
1014
 
</variablelist></refsect2>
1015
 
<refsect2 id="camel-object-bag-get" role="function">
1016
 
<title>camel_object_bag_get ()</title>
1017
 
<indexterm zone="camel-object-bag-get"><primary sortas="camel_object_bag_get">camel_object_bag_get</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_object_bag_get                (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1018
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);</programlisting>
1019
 
<para>
1020
 
Lookup an object by <parameter>key</parameter>.  If the key is currently reserved, then
1021
 
wait until the key has been committed before continuing.</para>
1022
 
<para>
1023
 
</para><variablelist role="params">
1024
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1025
 
<listitem><simpara>
1026
 
</simpara></listitem></varlistentry>
1027
 
<varlistentry><term><parameter>key</parameter>&#160;:</term>
1028
 
<listitem><simpara>
1029
 
</simpara></listitem></varlistentry>
1030
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> NULL if the object corresponding to <parameter>key</parameter> is not
1031
 
in the bag.  Otherwise a ref'd object pointer which the caller owns
1032
 
the ref to.
1033
 
</simpara></listitem></varlistentry>
1034
 
</variablelist></refsect2>
1035
 
<refsect2 id="camel-object-bag-peek" role="function">
1036
 
<title>camel_object_bag_peek ()</title>
1037
 
<indexterm zone="camel-object-bag-peek"><primary sortas="camel_object_bag_peek">camel_object_bag_peek</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_object_bag_peek               (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1038
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);</programlisting>
1039
 
<para>
1040
 
Lookup the object <parameter>key</parameter> in <parameter>bag</parameter>, ignoring any reservations.  If it
1041
 
isn't committed, then it isn't considered.  This should only be
1042
 
used where reliable transactional-based state is not required.
1043
 
</para>
1044
 
<para>
1045
 
Unlike other 'peek' operations, the object is still reffed if
1046
 
found.</para>
1047
 
<para>
1048
 
</para><variablelist role="params">
1049
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1050
 
<listitem><simpara>
1051
 
</simpara></listitem></varlistentry>
1052
 
<varlistentry><term><parameter>key</parameter>&#160;:</term>
1053
 
<listitem><simpara>
1054
 
</simpara></listitem></varlistentry>
1055
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A referenced object, or NULL if <parameter>key</parameter> is not
1056
 
present in the bag.
1057
 
</simpara></listitem></varlistentry>
1058
 
</variablelist></refsect2>
1059
 
<refsect2 id="camel-object-bag-reserve" role="function">
1060
 
<title>camel_object_bag_reserve ()</title>
1061
 
<indexterm zone="camel-object-bag-reserve"><primary sortas="camel_object_bag_reserve">camel_object_bag_reserve</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_object_bag_reserve            (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1062
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);</programlisting>
1063
 
<para>
1064
 
Reserve a key in the object bag.  If the key is already reserved in
1065
 
another thread, then wait until the reservation has been committed.
1066
 
</para>
1067
 
<para>
1068
 
After reserving a key, you either get a reffed pointer to the
1069
 
object corresponding to the key, similar to object_bag_get, or you
1070
 
get NULL, signifying that you then MIST call either object_bag_add
1071
 
or object_bag_abort.
1072
 
</para>
1073
 
<para>
1074
 
You may reserve multiple keys from the same thread, but they should
1075
 
always be reserved in the same order, to avoid deadlocks.</para>
1076
 
<para>
1077
 
</para><variablelist role="params">
1078
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1079
 
<listitem><simpara>
1080
 
</simpara></listitem></varlistentry>
1081
 
<varlistentry><term><parameter>key</parameter>&#160;:</term>
1082
 
<listitem><simpara>
1083
 
</simpara></listitem></varlistentry>
1084
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1085
 
</simpara></listitem></varlistentry>
1086
 
</variablelist></refsect2>
1087
 
<refsect2 id="camel-object-bag-add" role="function">
1088
 
<title>camel_object_bag_add ()</title>
1089
 
<indexterm zone="camel-object-bag-add"><primary sortas="camel_object_bag_add">camel_object_bag_add</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_bag_add                (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1090
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key,
1091
 
                                                         <link linkend="gpointer">gpointer</link> vo);</programlisting>
1092
 
<para>
1093
 
Add an object <parameter>vo</parameter> to the object bag <parameter>bag</parameter>.  The <parameter>key</parameter> MUST have
1094
 
previously been reserved using <link linkend="camel-object-bag-reserve"><function>camel_object_bag_reserve()</function></link>.</para>
1095
 
<para>
1096
 
</para><variablelist role="params">
1097
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1098
 
<listitem><simpara>
1099
 
</simpara></listitem></varlistentry>
1100
 
<varlistentry><term><parameter>key</parameter>&#160;:</term>
1101
 
<listitem><simpara>
1102
 
</simpara></listitem></varlistentry>
1103
 
<varlistentry><term><parameter>vo</parameter>&#160;:</term>
1104
 
<listitem><simpara>
1105
 
</simpara></listitem></varlistentry>
1106
 
</variablelist></refsect2>
1107
 
<refsect2 id="camel-object-bag-abort" role="function">
1108
 
<title>camel_object_bag_abort ()</title>
1109
 
<indexterm zone="camel-object-bag-abort"><primary sortas="camel_object_bag_abort">camel_object_bag_abort</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_bag_abort              (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1110
 
                                                         <link linkend="gconstpointer">gconstpointer</link> key);</programlisting>
1111
 
<para>
1112
 
Abort a key reservation.</para>
1113
 
<para>
1114
 
</para><variablelist role="params">
1115
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1116
 
<listitem><simpara>
1117
 
</simpara></listitem></varlistentry>
1118
 
<varlistentry><term><parameter>key</parameter>&#160;:</term>
1119
 
<listitem><simpara>
1120
 
</simpara></listitem></varlistentry>
1121
 
</variablelist></refsect2>
1122
 
<refsect2 id="camel-object-bag-rekey" role="function">
1123
 
<title>camel_object_bag_rekey ()</title>
1124
 
<indexterm zone="camel-object-bag-rekey"><primary sortas="camel_object_bag_rekey">camel_object_bag_rekey</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_bag_rekey              (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1125
 
                                                         <link linkend="gpointer">gpointer</link> o,
1126
 
                                                         <link linkend="gconstpointer">gconstpointer</link> newkey);</programlisting>
1127
 
<para>
1128
 
Re-key an object, atomically.  The key for object <parameter>o</parameter> is set to
1129
 
<parameter>newkey</parameter>, in an atomic manner.
1130
 
</para>
1131
 
<para>
1132
 
It is an api (fatal) error if <parameter>o</parameter> is not currently in the bag.</para>
1133
 
<para>
1134
 
</para><variablelist role="params">
1135
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1136
 
<listitem><simpara>
1137
 
</simpara></listitem></varlistentry>
1138
 
<varlistentry><term><parameter>o</parameter>&#160;:</term>
1139
 
<listitem><simpara>
1140
 
</simpara></listitem></varlistentry>
1141
 
<varlistentry><term><parameter>newkey</parameter>&#160;:</term>
1142
 
<listitem><simpara>
1143
 
</simpara></listitem></varlistentry>
1144
 
</variablelist></refsect2>
1145
 
<refsect2 id="camel-object-bag-list" role="function">
1146
 
<title>camel_object_bag_list ()</title>
1147
 
<indexterm zone="camel-object-bag-list"><primary sortas="camel_object_bag_list">camel_object_bag_list</primary></indexterm><programlisting><link linkend="GPtrArray">GPtrArray</link> *         camel_object_bag_list               (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag);</programlisting>
1148
 
<para>
1149
 
</para><variablelist role="params">
1150
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1151
 
<listitem><simpara>
1152
 
</simpara></listitem></varlistentry>
1153
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1154
 
</simpara></listitem></varlistentry>
1155
 
</variablelist></refsect2>
1156
 
<refsect2 id="camel-object-bag-remove" role="function">
1157
 
<title>camel_object_bag_remove ()</title>
1158
 
<indexterm zone="camel-object-bag-remove"><primary sortas="camel_object_bag_remove">camel_object_bag_remove</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_bag_remove             (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag,
1159
 
                                                         <link linkend="gpointer">gpointer</link> o);</programlisting>
1160
 
<para>
1161
 
</para><variablelist role="params">
1162
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1163
 
<listitem><simpara>
1164
 
</simpara></listitem></varlistentry>
1165
 
<varlistentry><term><parameter>o</parameter>&#160;:</term>
1166
 
<listitem><simpara>
1167
 
</simpara></listitem></varlistentry>
1168
 
</variablelist></refsect2>
1169
 
<refsect2 id="camel-object-bag-destroy" role="function">
1170
 
<title>camel_object_bag_destroy ()</title>
1171
 
<indexterm zone="camel-object-bag-destroy"><primary sortas="camel_object_bag_destroy">camel_object_bag_destroy</primary></indexterm><programlisting><link linkend="void">void</link>                camel_object_bag_destroy            (<link linkend="CamelObjectBag">CamelObjectBag</link> *bag);</programlisting>
1172
 
<para>
1173
 
</para><variablelist role="params">
1174
 
<varlistentry><term><parameter>bag</parameter>&#160;:</term>
1175
 
<listitem><simpara>
1176
 
</simpara></listitem></varlistentry>
1177
 
</variablelist></refsect2>
1178
 
<refsect2 id="CAMEL-MAKE-CLASS--CAPS" role="macro">
1179
 
<title>CAMEL_MAKE_CLASS()</title>
1180
 
<indexterm zone="CAMEL-MAKE-CLASS--CAPS"><primary sortas="CAMEL_MAKE_CLASS">CAMEL_MAKE_CLASS</primary></indexterm><programlisting>#define             CAMEL_MAKE_CLASS(type, tname, parent, pname)</programlisting>
1181
 
<para>
1182
 
</para><variablelist role="params">
1183
 
<varlistentry><term><parameter>type</parameter>&#160;:</term>
1184
 
<listitem><simpara>
1185
 
</simpara></listitem></varlistentry>
1186
 
<varlistentry><term><parameter>tname</parameter>&#160;:</term>
1187
 
<listitem><simpara>
1188
 
</simpara></listitem></varlistentry>
1189
 
<varlistentry><term><parameter>parent</parameter>&#160;:</term>
1190
 
<listitem><simpara>
1191
 
</simpara></listitem></varlistentry>
1192
 
<varlistentry><term><parameter>pname</parameter>&#160;:</term>
1193
 
<listitem><simpara>
1194
 
</simpara></listitem></varlistentry>
1195
 
</variablelist></refsect2>
1196
 
<refsect2 id="CamelIteratorVTable" role="struct" condition="deprecated:">
1197
 
<title>CamelIteratorVTable</title>
1198
 
<indexterm zone="CamelIteratorVTable" role="deprecated"><primary sortas="CamelIteratorVTable">CamelIteratorVTable</primary></indexterm><programlisting>typedef struct {
1199
 
        /* free fields, dont free base object */
1200
 
        void (*free)(gpointer it);
1201
 
        /* go to the next messageinfo */
1202
 
        gconstpointer (*next)(gpointer it, CamelException *ex);
1203
 
        /* go back to the start */
1204
 
        void (*reset)(gpointer it);
1205
 
        /* *ESTIMATE* how many results are in the iterator */
1206
 
        gint (*length)(gpointer it);
1207
 
} CamelIteratorVTable;
1208
 
</programlisting>
1209
 
<warning><para><literal>CamelIteratorVTable</literal> is deprecated and should not be used in newly-written code.</para></warning>
1210
 
<para>
1211
 
</para></refsect2>
1212
 
<refsect2 id="CamelIterator" role="struct" condition="deprecated:">
1213
 
<title>CamelIterator</title>
1214
 
<indexterm zone="CamelIterator" role="deprecated"><primary sortas="CamelIterator">CamelIterator</primary></indexterm><programlisting>typedef struct {
1215
 
        CamelIteratorVTable *klass;
1216
 
 
1217
 
        /* subclasses adds new fields afterwards */
1218
 
} CamelIterator;
1219
 
</programlisting>
1220
 
<warning><para><literal>CamelIterator</literal> is deprecated and should not be used in newly-written code.</para></warning>
1221
 
<para>
1222
 
</para></refsect2>
1223
 
<refsect2 id="camel-iterator-new" role="function" condition="deprecated:">
1224
 
<title>camel_iterator_new ()</title>
1225
 
<indexterm zone="camel-iterator-new" role="deprecated"><primary sortas="camel_iterator_new">camel_iterator_new</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            camel_iterator_new                  (<link linkend="CamelIteratorVTable">CamelIteratorVTable</link> *klass,
1226
 
                                                         <link linkend="gsize">gsize</link> size);</programlisting>
1227
 
<warning><para><literal>camel_iterator_new</literal> is deprecated and should not be used in newly-written code.</para></warning>
1228
 
<para>
1229
 
</para><variablelist role="params">
1230
 
<varlistentry><term><parameter>klass</parameter>&#160;:</term>
1231
 
<listitem><simpara>
1232
 
</simpara></listitem></varlistentry>
1233
 
<varlistentry><term><parameter>size</parameter>&#160;:</term>
1234
 
<listitem><simpara>
1235
 
</simpara></listitem></varlistentry>
1236
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1237
 
</simpara></listitem></varlistentry>
1238
 
</variablelist></refsect2>
1239
 
<refsect2 id="camel-iterator-free" role="function" condition="deprecated:">
1240
 
<title>camel_iterator_free ()</title>
1241
 
<indexterm zone="camel-iterator-free" role="deprecated"><primary sortas="camel_iterator_free">camel_iterator_free</primary></indexterm><programlisting><link linkend="void">void</link>                camel_iterator_free                 (<link linkend="gpointer">gpointer</link> it);</programlisting>
1242
 
<warning><para><literal>camel_iterator_free</literal> is deprecated and should not be used in newly-written code.</para></warning>
1243
 
<para>
1244
 
</para><variablelist role="params">
1245
 
<varlistentry><term><parameter>it</parameter>&#160;:</term>
1246
 
<listitem><simpara>
1247
 
</simpara></listitem></varlistentry>
1248
 
</variablelist></refsect2>
1249
 
<refsect2 id="camel-iterator-next" role="function" condition="deprecated:">
1250
 
<title>camel_iterator_next ()</title>
1251
 
<indexterm zone="camel-iterator-next" role="deprecated"><primary sortas="camel_iterator_next">camel_iterator_next</primary></indexterm><programlisting><link linkend="gconstpointer">gconstpointer</link>       camel_iterator_next                 (<link linkend="gpointer">gpointer</link> it,
1252
 
                                                         <link linkend="CamelException">CamelException</link> *ex);</programlisting>
1253
 
<warning><para><literal>camel_iterator_next</literal> is deprecated and should not be used in newly-written code.</para></warning>
1254
 
<para>
1255
 
</para><variablelist role="params">
1256
 
<varlistentry><term><parameter>it</parameter>&#160;:</term>
1257
 
<listitem><simpara>
1258
 
</simpara></listitem></varlistentry>
1259
 
<varlistentry><term><parameter>ex</parameter>&#160;:</term>
1260
 
<listitem><simpara>
1261
 
</simpara></listitem></varlistentry>
1262
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1263
 
</simpara></listitem></varlistentry>
1264
 
</variablelist></refsect2>
1265
 
<refsect2 id="camel-iterator-reset" role="function" condition="deprecated:">
1266
 
<title>camel_iterator_reset ()</title>
1267
 
<indexterm zone="camel-iterator-reset" role="deprecated"><primary sortas="camel_iterator_reset">camel_iterator_reset</primary></indexterm><programlisting><link linkend="void">void</link>                camel_iterator_reset                (<link linkend="gpointer">gpointer</link> it);</programlisting>
1268
 
<warning><para><literal>camel_iterator_reset</literal> is deprecated and should not be used in newly-written code.</para></warning>
1269
 
<para>
1270
 
</para><variablelist role="params">
1271
 
<varlistentry><term><parameter>it</parameter>&#160;:</term>
1272
 
<listitem><simpara>
1273
 
</simpara></listitem></varlistentry>
1274
 
</variablelist></refsect2>
1275
 
<refsect2 id="camel-iterator-length" role="function" condition="deprecated:">
1276
 
<title>camel_iterator_length ()</title>
1277
 
<indexterm zone="camel-iterator-length" role="deprecated"><primary sortas="camel_iterator_length">camel_iterator_length</primary></indexterm><programlisting><link linkend="gint">gint</link>                camel_iterator_length               (<link linkend="gpointer">gpointer</link> it);</programlisting>
1278
 
<warning><para><literal>camel_iterator_length</literal> is deprecated and should not be used in newly-written code.</para></warning>
1279
 
<para>
1280
 
</para><variablelist role="params">
1281
 
<varlistentry><term><parameter>it</parameter>&#160;:</term>
1282
 
<listitem><simpara>
1283
 
</simpara></listitem></varlistentry>
1284
 
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
1285
 
</simpara></listitem></varlistentry>
1286
 
</variablelist></refsect2>
1287
 
 
1288
 
</refsect1>
1289
 
 
1290
 
 
1291
 
 
1292
 
 
1293
 
</refentry>