2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
4
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
5
<!ENTITY version SYSTEM "version.xml">
9
<refentrytitle role="top_of_page" id="GMount.top_of_page">GMount</refentrytitle>
10
<manvolnum>3</manvolnum>
11
<refmiscinfo>GIO Library</refmiscinfo>
15
<refname>GMount</refname>
16
<refpurpose>Mount management</refpurpose>
19
<refsynopsisdiv id="GMount.synopsis" role="synopsis">
20
<title role="synopsis.title">Synopsis</title>
24
#include <gio/gio.h
25
@see also: GVolume>
26
#include <GUnixMount>
28
<link linkend="GMount-struct">GMount</link>;
29
<link linkend="GMountIface">GMountIface</link>;
30
<link linkend="char">char</link> * <link linkend="g-mount-get-name">g_mount_get_name</link> (<link linkend="GMount">GMount</link> *mount);
31
<link linkend="char">char</link> * <link linkend="g-mount-get-uuid">g_mount_get_uuid</link> (<link linkend="GMount">GMount</link> *mount);
32
<link linkend="GIcon">GIcon</link> * <link linkend="g-mount-get-icon">g_mount_get_icon</link> (<link linkend="GMount">GMount</link> *mount);
33
<link linkend="GDrive">GDrive</link> * <link linkend="g-mount-get-drive">g_mount_get_drive</link> (<link linkend="GMount">GMount</link> *mount);
34
<link linkend="GFile">GFile</link> * <link linkend="g-mount-get-root">g_mount_get_root</link> (<link linkend="GMount">GMount</link> *mount);
35
<link linkend="GVolume">GVolume</link> * <link linkend="g-mount-get-volume">g_mount_get_volume</link> (<link linkend="GMount">GMount</link> *mount);
36
<link linkend="GFile">GFile</link> * <link linkend="g-mount-get-default-location">g_mount_get_default_location</link> (<link linkend="GMount">GMount</link> *mount);
37
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-can-unmount">g_mount_can_unmount</link> (<link linkend="GMount">GMount</link> *mount);
38
enum <link linkend="GMountMountFlags">GMountMountFlags</link>;
39
enum <link linkend="GMountUnmountFlags">GMountUnmountFlags</link>;
40
<link linkend="void">void</link> <link linkend="g-mount-unmount">g_mount_unmount</link> (<link linkend="GMount">GMount</link> *mount,
41
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
42
<link linkend="GCancellable">GCancellable</link> *cancellable,
43
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
44
<link linkend="gpointer">gpointer</link> user_data);
45
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-unmount-finish">g_mount_unmount_finish</link> (<link linkend="GMount">GMount</link> *mount,
46
<link linkend="GAsyncResult">GAsyncResult</link> *result,
47
<link linkend="GError">GError</link> **error);
48
<link linkend="void">void</link> <link linkend="g-mount-unmount-with-operation">g_mount_unmount_with_operation</link> (<link linkend="GMount">GMount</link> *mount,
49
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
50
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
51
<link linkend="GCancellable">GCancellable</link> *cancellable,
52
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
53
<link linkend="gpointer">gpointer</link> user_data);
54
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-unmount-with-operation-finish">g_mount_unmount_with_operation_finish</link>
55
(<link linkend="GMount">GMount</link> *mount,
56
<link linkend="GAsyncResult">GAsyncResult</link> *result,
57
<link linkend="GError">GError</link> **error);
58
<link linkend="void">void</link> <link linkend="g-mount-remount">g_mount_remount</link> (<link linkend="GMount">GMount</link> *mount,
59
<link linkend="GMountMountFlags">GMountMountFlags</link> flags,
60
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
61
<link linkend="GCancellable">GCancellable</link> *cancellable,
62
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
63
<link linkend="gpointer">gpointer</link> user_data);
64
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-remount-finish">g_mount_remount_finish</link> (<link linkend="GMount">GMount</link> *mount,
65
<link linkend="GAsyncResult">GAsyncResult</link> *result,
66
<link linkend="GError">GError</link> **error);
67
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-can-eject">g_mount_can_eject</link> (<link linkend="GMount">GMount</link> *mount);
68
<link linkend="void">void</link> <link linkend="g-mount-eject">g_mount_eject</link> (<link linkend="GMount">GMount</link> *mount,
69
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
70
<link linkend="GCancellable">GCancellable</link> *cancellable,
71
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
72
<link linkend="gpointer">gpointer</link> user_data);
73
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-eject-finish">g_mount_eject_finish</link> (<link linkend="GMount">GMount</link> *mount,
74
<link linkend="GAsyncResult">GAsyncResult</link> *result,
75
<link linkend="GError">GError</link> **error);
76
<link linkend="void">void</link> <link linkend="g-mount-eject-with-operation">g_mount_eject_with_operation</link> (<link linkend="GMount">GMount</link> *mount,
77
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
78
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
79
<link linkend="GCancellable">GCancellable</link> *cancellable,
80
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
81
<link linkend="gpointer">gpointer</link> user_data);
82
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-eject-with-operation-finish">g_mount_eject_with_operation_finish</link> (<link linkend="GMount">GMount</link> *mount,
83
<link linkend="GAsyncResult">GAsyncResult</link> *result,
84
<link linkend="GError">GError</link> **error);
85
<link linkend="void">void</link> <link linkend="g-mount-guess-content-type">g_mount_guess_content_type</link> (<link linkend="GMount">GMount</link> *mount,
86
<link linkend="gboolean">gboolean</link> force_rescan,
87
<link linkend="GCancellable">GCancellable</link> *cancellable,
88
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
89
<link linkend="gpointer">gpointer</link> user_data);
90
<link linkend="gchar">gchar</link> ** <link linkend="g-mount-guess-content-type-finish">g_mount_guess_content_type_finish</link> (<link linkend="GMount">GMount</link> *mount,
91
<link linkend="GAsyncResult">GAsyncResult</link> *result,
92
<link linkend="GError">GError</link> **error);
93
<link linkend="gchar">gchar</link> ** <link linkend="g-mount-guess-content-type-sync">g_mount_guess_content_type_sync</link> (<link linkend="GMount">GMount</link> *mount,
94
<link linkend="gboolean">gboolean</link> force_rescan,
95
<link linkend="GCancellable">GCancellable</link> *cancellable,
96
<link linkend="GError">GError</link> **error);
97
<link linkend="gboolean">gboolean</link> <link linkend="g-mount-is-shadowed">g_mount_is_shadowed</link> (<link linkend="GMount">GMount</link> *mount);
98
<link linkend="void">void</link> <link linkend="g-mount-shadow">g_mount_shadow</link> (<link linkend="GMount">GMount</link> *mount);
99
<link linkend="void">void</link> <link linkend="g-mount-unshadow">g_mount_unshadow</link> (<link linkend="GMount">GMount</link> *mount);
103
<refsect1 id="GMount.object-hierarchy" role="object_hierarchy">
104
<title role="object_hierarchy.title">Object Hierarchy</title>
106
<link linkend="GInterface">GInterface</link>
111
<refsect1 id="GMount.prerequisites" role="prerequisites">
112
<title role="prerequisites.title">Prerequisites</title>
115
<link linkend="GObject">GObject</link>.</para>
122
<refsect1 id="GMount.signals" role="signal_proto">
123
<title role="signal_proto.title">Signals</title>
125
"<link linkend="GMount-changed">changed</link>" : Run Last
126
"<link linkend="GMount-pre-unmount">pre-unmount</link>" : Run Last
127
"<link linkend="GMount-unmounted">unmounted</link>" : Run Last
132
<refsect1 id="GMount.description" role="desc">
133
<title role="desc.title">Description</title>
135
The <link linkend="GMount"><type>GMount</type></link> interface represents user-visible mounts. Note, when
136
porting from GnomeVFS, <link linkend="GMount"><type>GMount</type></link> is the moral equivalent of <link linkend="GnomeVFSVolume"><type>GnomeVFSVolume</type></link>.
139
<link linkend="GMount"><type>GMount</type></link> is a "mounted" filesystem that you can access. Mounted is in
140
quotes because it's not the same as a unix mount, it might be a gvfs
141
mount, but you can still access the files on it if you use GIO. Might or
142
might not be related to a volume object.
145
Unmounting a <link linkend="GMount"><type>GMount</type></link> instance is an asynchronous operation. For
146
more information about asynchronous operations, see <link linkend="GAsyncReady"><type>GAsyncReady</type></link>
147
and <link linkend="GSimpleAsyncReady"><type>GSimpleAsyncReady</type></link>. To unmount a <link linkend="GMount"><type>GMount</type></link> instance, first call
148
<link linkend="g-mount-unmount-with-operation"><function>g_mount_unmount_with_operation()</function></link> with (at least) the <link linkend="GMount"><type>GMount</type></link> instance and a
149
<link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>. The callback will be fired when the
150
operation has resolved (either with success or failure), and a
151
<link linkend="GAsyncReady"><type>GAsyncReady</type></link> structure will be passed to the callback. That
152
callback should then call <link linkend="g-mount-unmount-with-operation-finish"><function>g_mount_unmount_with_operation_finish()</function></link> with the <link linkend="GMount"><type>GMount</type></link>
153
and the <link linkend="GAsyncReady"><type>GAsyncReady</type></link> data to see if the operation was completed
154
successfully. If an <parameter>error</parameter> is present when <link linkend="g-mount-unmount-with-operation-finish"><function>g_mount_unmount_with_operation_finish()</function></link>
155
is called, then it will be filled with any error information.</para>
160
<refsect1 id="GMount.details" role="details">
161
<title role="details.title">Details</title>
162
<refsect2 id="GMount-struct" role="struct">
163
<title>GMount</title>
164
<indexterm zone="GMount-struct"><primary sortas="Mount">GMount</primary></indexterm><programlisting>typedef struct _GMount GMount;</programlisting>
166
A handle to an object implementing the <link linkend="GMountIface"><type>GMountIface</type></link> interface.</para>
169
<refsect2 id="GMountIface" role="struct">
170
<title>GMountIface</title>
171
<indexterm zone="GMountIface"><primary sortas="MountIface">GMountIface</primary></indexterm><programlisting>typedef struct {
172
GTypeInterface g_iface;
176
void (* changed) (GMount *mount);
177
void (* unmounted) (GMount *mount);
181
GFile * (* get_root) (GMount *mount);
182
char * (* get_name) (GMount *mount);
183
GIcon * (* get_icon) (GMount *mount);
184
char * (* get_uuid) (GMount *mount);
185
GVolume * (* get_volume) (GMount *mount);
186
GDrive * (* get_drive) (GMount *mount);
187
gboolean (* can_unmount) (GMount *mount);
188
gboolean (* can_eject) (GMount *mount);
190
void (* unmount) (GMount *mount,
191
GMountUnmountFlags flags,
192
GCancellable *cancellable,
193
GAsyncReadyCallback callback,
195
gboolean (* unmount_finish) (GMount *mount,
196
GAsyncResult *result,
199
void (* eject) (GMount *mount,
200
GMountUnmountFlags flags,
201
GCancellable *cancellable,
202
GAsyncReadyCallback callback,
204
gboolean (* eject_finish) (GMount *mount,
205
GAsyncResult *result,
208
void (* remount) (GMount *mount,
209
GMountMountFlags flags,
210
GMountOperation *mount_operation,
211
GCancellable *cancellable,
212
GAsyncReadyCallback callback,
214
gboolean (* remount_finish) (GMount *mount,
215
GAsyncResult *result,
218
void (* guess_content_type) (GMount *mount,
219
gboolean force_rescan,
220
GCancellable *cancellable,
221
GAsyncReadyCallback callback,
223
gchar ** (* guess_content_type_finish) (GMount *mount,
224
GAsyncResult *result,
226
gchar ** (* guess_content_type_sync) (GMount *mount,
227
gboolean force_rescan,
228
GCancellable *cancellable,
231
/* Signal, not VFunc */
232
void (* pre_unmount) (GMount *mount);
234
void (* unmount_with_operation) (GMount *mount,
235
GMountUnmountFlags flags,
236
GMountOperation *mount_operation,
237
GCancellable *cancellable,
238
GAsyncReadyCallback callback,
240
gboolean (* unmount_with_operation_finish) (GMount *mount,
241
GAsyncResult *result,
244
void (* eject_with_operation) (GMount *mount,
245
GMountUnmountFlags flags,
246
GMountOperation *mount_operation,
247
GCancellable *cancellable,
248
GAsyncReadyCallback callback,
250
gboolean (* eject_with_operation_finish) (GMount *mount,
251
GAsyncResult *result,
253
GFile * (* get_default_location) (GMount *mount);
257
Interface for implementing operations for mounts.</para>
259
</para><variablelist role="struct">
261
<term><link linkend="GTypeInterface">GTypeInterface</link> <structfield>g_iface</structfield>;</term>
262
<listitem><simpara> The parent interface.
263
</simpara></listitem>
266
<term><structfield>changed</structfield> ()</term>
267
<listitem><simpara> Changed signal that is emitted when the mount's state has changed.
268
</simpara></listitem>
271
<term><structfield>unmounted</structfield> ()</term>
272
<listitem><simpara> The unmounted signal that is emitted when the <link linkend="GMount"><type>GMount</type></link> have been unmounted. If the recipient is holding references to the object they should release them so the object can be finalized.
273
</simpara></listitem>
276
<term><structfield>get_root</structfield> ()</term>
277
<listitem><simpara> Gets a <link linkend="GFile"><type>GFile</type></link> to the root directory of the <link linkend="GMount"><type>GMount</type></link>.
278
</simpara></listitem>
281
<term><structfield>get_name</structfield> ()</term>
282
<listitem><simpara> Gets a string containing the name of the <link linkend="GMount"><type>GMount</type></link>.
283
</simpara></listitem>
286
<term><structfield>get_icon</structfield> ()</term>
287
<listitem><simpara> Gets a <link linkend="GIcon"><type>GIcon</type></link> for the <link linkend="GMount"><type>GMount</type></link>.
288
</simpara></listitem>
291
<term><structfield>get_uuid</structfield> ()</term>
292
<listitem><simpara> Gets the UUID for the <link linkend="GMount"><type>GMount</type></link>. The reference is typically based on the file system UUID for the mount in question and should be considered an opaque string. Returns <link linkend="NULL--CAPS"><literal>NULL</literal></link> if there is no UUID available.
293
</simpara></listitem>
296
<term><structfield>get_volume</structfield> ()</term>
297
<listitem><simpara> Gets a <link linkend="GVolume"><type>GVolume</type></link> the mount is located on. Returns <link linkend="NULL--CAPS"><literal>NULL</literal></link> if the <link linkend="GMount"><type>GMount</type></link> is not associated with a <link linkend="GVolume"><type>GVolume</type></link>.
298
</simpara></listitem>
301
<term><structfield>get_drive</structfield> ()</term>
302
<listitem><simpara> Gets a <link linkend="GDrive"><type>GDrive</type></link> the volume of the mount is located on. Returns <link linkend="NULL--CAPS"><literal>NULL</literal></link> if the <link linkend="GMount"><type>GMount</type></link> is not associated with a <link linkend="GDrive"><type>GDrive</type></link> or a <link linkend="GVolume"><type>GVolume</type></link>. This is convenience method for getting the <link linkend="GVolume"><type>GVolume</type></link> and using that to get the <link linkend="GDrive"><type>GDrive</type></link>.
303
</simpara></listitem>
306
<term><structfield>can_unmount</structfield> ()</term>
307
<listitem><simpara> Checks if a <link linkend="GMount"><type>GMount</type></link> can be unmounted.
308
</simpara></listitem>
311
<term><structfield>can_eject</structfield> ()</term>
312
<listitem><simpara> Checks if a <link linkend="GMount"><type>GMount</type></link> can be ejected.
313
</simpara></listitem>
316
<term><structfield>unmount</structfield> ()</term>
317
<listitem><simpara> Starts unmounting a <link linkend="GMount"><type>GMount</type></link>.
318
</simpara></listitem>
321
<term><structfield>unmount_finish</structfield> ()</term>
322
<listitem><simpara> Finishes an unmounting operation.
323
</simpara></listitem>
326
<term><structfield>eject</structfield> ()</term>
327
<listitem><simpara> Starts ejecting a <link linkend="GMount"><type>GMount</type></link>.
328
</simpara></listitem>
331
<term><structfield>eject_finish</structfield> ()</term>
332
<listitem><simpara> Finishes an eject operation.
333
</simpara></listitem>
336
<term><structfield>remount</structfield> ()</term>
337
<listitem><simpara> Starts remounting a <link linkend="GMount"><type>GMount</type></link>.
338
</simpara></listitem>
341
<term><structfield>remount_finish</structfield> ()</term>
342
<listitem><simpara> Finishes a remounting operation.
343
</simpara></listitem>
346
<term><structfield>guess_content_type</structfield> ()</term>
347
<listitem><simpara> Starts guessing the type of the content of a <link linkend="GMount"><type>GMount</type></link>.
348
See <link linkend="g-mount-guess-content-type"><function>g_mount_guess_content_type()</function></link> for more information on content
349
type guessing. This operation was added in 2.18.
350
</simpara></listitem>
353
<term><structfield>guess_content_type_finish</structfield> ()</term>
354
<listitem><simpara> Finishes a contenet type guessing operation. Added in 2.18.
355
</simpara></listitem>
358
<term><structfield>guess_content_type_sync</structfield> ()</term>
359
<listitem><simpara> Synchronous variant of <parameter>guess_content_type</parameter>. Added in 2.18
360
</simpara></listitem>
363
<term><structfield>pre_unmount</structfield> ()</term>
364
<listitem><simpara> The pre_unmout signal that is emitted when the <link linkend="GMount"><type>GMount</type></link> will soon be emitted. If the recipient is somehow holding the mount open by keeping an open file on it it should close the file.
365
</simpara></listitem>
368
<term><structfield>unmount_with_operation</structfield> ()</term>
369
<listitem><simpara> Starts unmounting a <link linkend="GMount"><type>GMount</type></link> using a <link linkend="GMountOperation"><type>GMountOperation</type></link>. Since 2.22.
370
</simpara></listitem>
373
<term><structfield>unmount_with_operation_finish</structfield> ()</term>
374
<listitem><simpara> Finishes an unmounting operation using a <link linkend="GMountOperation"><type>GMountOperation</type></link>. Since 2.22.
375
</simpara></listitem>
378
<term><structfield>eject_with_operation</structfield> ()</term>
379
<listitem><simpara> Starts ejecting a <link linkend="GMount"><type>GMount</type></link> using a <link linkend="GMountOperation"><type>GMountOperation</type></link>. Since 2.22.
380
</simpara></listitem>
383
<term><structfield>eject_with_operation_finish</structfield> ()</term>
384
<listitem><simpara> Finishes an eject operation using a <link linkend="GMountOperation"><type>GMountOperation</type></link>. Since 2.22.
385
</simpara></listitem>
388
<term><structfield>get_default_location</structfield> ()</term>
389
<listitem><simpara> Gets a <link linkend="GFile"><type>GFile</type></link> indication a start location that can be use as the entry point for this mount. Since 2.24.
390
</simpara></listitem>
392
</variablelist></refsect2>
393
<refsect2 id="g-mount-get-name" role="function">
394
<title>g_mount_get_name ()</title>
395
<indexterm zone="g-mount-get-name"><primary sortas="mount_get_name">g_mount_get_name</primary></indexterm><programlisting><link linkend="char">char</link> * g_mount_get_name (<link linkend="GMount">GMount</link> *mount);</programlisting>
397
Gets the name of <parameter>mount</parameter>.</para>
399
</para><variablelist role="params">
400
<varlistentry><term><parameter>mount</parameter> :</term>
401
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
402
</simpara></listitem></varlistentry>
403
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the name for the given <parameter>mount</parameter>.
404
The returned string should be freed with <link linkend="g-free"><function>g_free()</function></link>
405
when no longer needed.
406
</simpara></listitem></varlistentry>
407
</variablelist></refsect2>
408
<refsect2 id="g-mount-get-uuid" role="function">
409
<title>g_mount_get_uuid ()</title>
410
<indexterm zone="g-mount-get-uuid"><primary sortas="mount_get_uuid">g_mount_get_uuid</primary></indexterm><programlisting><link linkend="char">char</link> * g_mount_get_uuid (<link linkend="GMount">GMount</link> *mount);</programlisting>
412
Gets the UUID for the <parameter>mount</parameter>. The reference is typically based on
413
the file system UUID for the mount in question and should be
414
considered an opaque string. Returns <link linkend="NULL--CAPS"><literal>NULL</literal></link> if there is no UUID
417
</para><variablelist role="params">
418
<varlistentry><term><parameter>mount</parameter> :</term>
419
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
420
</simpara></listitem></varlistentry>
421
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> the UUID for <parameter>mount</parameter> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if no UUID can be computed.
422
The returned string should be freed with <link linkend="g-free"><function>g_free()</function></link>
423
when no longer needed.
424
</simpara></listitem></varlistentry>
425
</variablelist></refsect2>
426
<refsect2 id="g-mount-get-icon" role="function">
427
<title>g_mount_get_icon ()</title>
428
<indexterm zone="g-mount-get-icon"><primary sortas="mount_get_icon">g_mount_get_icon</primary></indexterm><programlisting><link linkend="GIcon">GIcon</link> * g_mount_get_icon (<link linkend="GMount">GMount</link> *mount);</programlisting>
430
Gets the icon for <parameter>mount</parameter>.</para>
432
</para><variablelist role="params">
433
<varlistentry><term><parameter>mount</parameter> :</term>
434
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
435
</simpara></listitem></varlistentry>
436
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GIcon"><type>GIcon</type></link>.
437
The returned object should be unreffed with
438
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.
439
</simpara></listitem></varlistentry>
440
</variablelist></refsect2>
441
<refsect2 id="g-mount-get-drive" role="function">
442
<title>g_mount_get_drive ()</title>
443
<indexterm zone="g-mount-get-drive"><primary sortas="mount_get_drive">g_mount_get_drive</primary></indexterm><programlisting><link linkend="GDrive">GDrive</link> * g_mount_get_drive (<link linkend="GMount">GMount</link> *mount);</programlisting>
445
Gets the drive for the <parameter>mount</parameter>.
448
This is a convenience method for getting the <link linkend="GVolume"><type>GVolume</type></link> and then
449
using that object to get the <link linkend="GDrive"><type>GDrive</type></link>.</para>
451
</para><variablelist role="params">
452
<varlistentry><term><parameter>mount</parameter> :</term>
453
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
454
</simpara></listitem></varlistentry>
455
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GDrive"><type>GDrive</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if <parameter>mount</parameter> is not associated with a volume or a drive.
456
The returned object should be unreffed with
457
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.
458
</simpara></listitem></varlistentry>
459
</variablelist></refsect2>
460
<refsect2 id="g-mount-get-root" role="function">
461
<title>g_mount_get_root ()</title>
462
<indexterm zone="g-mount-get-root"><primary sortas="mount_get_root">g_mount_get_root</primary></indexterm><programlisting><link linkend="GFile">GFile</link> * g_mount_get_root (<link linkend="GMount">GMount</link> *mount);</programlisting>
464
Gets the root directory on <parameter>mount</parameter>.</para>
466
</para><variablelist role="params">
467
<varlistentry><term><parameter>mount</parameter> :</term>
468
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
469
</simpara></listitem></varlistentry>
470
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GFile"><type>GFile</type></link>.
471
The returned object should be unreffed with
472
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.
473
</simpara></listitem></varlistentry>
474
</variablelist></refsect2>
475
<refsect2 id="g-mount-get-volume" role="function">
476
<title>g_mount_get_volume ()</title>
477
<indexterm zone="g-mount-get-volume"><primary sortas="mount_get_volume">g_mount_get_volume</primary></indexterm><programlisting><link linkend="GVolume">GVolume</link> * g_mount_get_volume (<link linkend="GMount">GMount</link> *mount);</programlisting>
479
Gets the volume for the <parameter>mount</parameter>.</para>
481
</para><variablelist role="params">
482
<varlistentry><term><parameter>mount</parameter> :</term>
483
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
484
</simpara></listitem></varlistentry>
485
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GVolume"><type>GVolume</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if <parameter>mount</parameter> is not associated with a volume.
486
The returned object should be unreffed with
487
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.
488
</simpara></listitem></varlistentry>
489
</variablelist></refsect2>
490
<refsect2 id="g-mount-get-default-location" role="function">
491
<title>g_mount_get_default_location ()</title>
492
<indexterm zone="g-mount-get-default-location"><primary sortas="mount_get_default_location">g_mount_get_default_location</primary></indexterm><programlisting><link linkend="GFile">GFile</link> * g_mount_get_default_location (<link linkend="GMount">GMount</link> *mount);</programlisting>
494
Gets the default location of <parameter>mount</parameter>. The default location of the given
495
<parameter>mount</parameter> is a path that reflects the main entry point for the user (e.g.
496
the home directory, or the root of the volume).</para>
498
</para><variablelist role="params">
499
<varlistentry><term><parameter>mount</parameter> :</term>
500
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
501
</simpara></listitem></varlistentry>
502
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="GFile"><type>GFile</type></link>.
503
The returned object should be unreffed with
504
<link linkend="g-object-unref"><function>g_object_unref()</function></link> when no longer needed.
505
</simpara></listitem></varlistentry>
506
</variablelist></refsect2>
507
<refsect2 id="g-mount-can-unmount" role="function">
508
<title>g_mount_can_unmount ()</title>
509
<indexterm zone="g-mount-can-unmount"><primary sortas="mount_can_unmount">g_mount_can_unmount</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_can_unmount (<link linkend="GMount">GMount</link> *mount);</programlisting>
511
Checks if <parameter>mount</parameter> can be mounted.</para>
513
</para><variablelist role="params">
514
<varlistentry><term><parameter>mount</parameter> :</term>
515
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
516
</simpara></listitem></varlistentry>
517
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the <parameter>mount</parameter> can be unmounted.
518
</simpara></listitem></varlistentry>
519
</variablelist></refsect2>
520
<refsect2 id="GMountMountFlags" role="enum">
521
<title>enum GMountMountFlags</title>
522
<indexterm zone="GMountMountFlags"><primary sortas="MountMountFlags">GMountMountFlags</primary></indexterm><programlisting>typedef enum {
523
G_MOUNT_MOUNT_NONE = 0
527
Flags used when mounting a mount.</para>
529
</para><variablelist role="enum">
530
<varlistentry id="G-MOUNT-MOUNT-NONE--CAPS" role="constant">
531
<term><literal>G_MOUNT_MOUNT_NONE</literal></term>
532
<listitem><simpara> No flags set.
533
</simpara></listitem>
535
</variablelist></refsect2>
536
<refsect2 id="GMountUnmountFlags" role="enum">
537
<title>enum GMountUnmountFlags</title>
538
<indexterm zone="GMountUnmountFlags"><primary sortas="MountUnmountFlags">GMountUnmountFlags</primary></indexterm><programlisting>typedef enum {
539
G_MOUNT_UNMOUNT_NONE = 0,
540
G_MOUNT_UNMOUNT_FORCE = (1 << 0)
541
} GMountUnmountFlags;
544
Flags used when an unmounting a mount.</para>
546
</para><variablelist role="enum">
547
<varlistentry id="G-MOUNT-UNMOUNT-NONE--CAPS" role="constant">
548
<term><literal>G_MOUNT_UNMOUNT_NONE</literal></term>
549
<listitem><simpara> No flags set.
550
</simpara></listitem>
552
<varlistentry id="G-MOUNT-UNMOUNT-FORCE--CAPS" role="constant">
553
<term><literal>G_MOUNT_UNMOUNT_FORCE</literal></term>
554
<listitem><simpara> Unmount even if there are outstanding
555
file operations on the mount.
556
</simpara></listitem>
558
</variablelist></refsect2>
559
<refsect2 id="g-mount-unmount" role="function" condition="deprecated:2.22: Use g_mount_unmount_with_operation() instead.">
560
<title>g_mount_unmount ()</title>
561
<indexterm zone="g-mount-unmount" role="deprecated"><primary sortas="mount_unmount">g_mount_unmount</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_unmount (<link linkend="GMount">GMount</link> *mount,
562
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
563
<link linkend="GCancellable">GCancellable</link> *cancellable,
564
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
565
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
566
<warning><para><literal>g_mount_unmount</literal> has been deprecated since version 2.22 and should not be used in newly-written code. Use <link linkend="g-mount-unmount-with-operation"><function>g_mount_unmount_with_operation()</function></link> instead.</para></warning>
568
Unmounts a mount. This is an asynchronous operation, and is
569
finished by calling <link linkend="g-mount-unmount-finish"><function>g_mount_unmount_finish()</function></link> with the <parameter>mount</parameter>
570
and <link linkend="GAsyncResult"><type>GAsyncResult</type></link> data returned in the <parameter>callback</parameter>.</para>
572
</para><variablelist role="params">
573
<varlistentry><term><parameter>mount</parameter> :</term>
574
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
575
</simpara></listitem></varlistentry>
576
<varlistentry><term><parameter>flags</parameter> :</term>
577
<listitem><simpara> flags affecting the operation
578
</simpara></listitem></varlistentry>
579
<varlistentry><term><parameter>cancellable</parameter> :</term>
580
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
581
</simpara></listitem></varlistentry>
582
<varlistentry><term><parameter>callback</parameter> :</term>
583
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
584
</simpara></listitem></varlistentry>
585
<varlistentry><term><parameter>user_data</parameter> :</term>
586
<listitem><simpara> user data passed to <parameter>callback</parameter>.
587
</simpara></listitem></varlistentry>
588
</variablelist></refsect2>
589
<refsect2 id="g-mount-unmount-finish" role="function" condition="deprecated:2.22: Use g_mount_unmount_with_operation_finish() instead.">
590
<title>g_mount_unmount_finish ()</title>
591
<indexterm zone="g-mount-unmount-finish" role="deprecated"><primary sortas="mount_unmount_finish">g_mount_unmount_finish</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_unmount_finish (<link linkend="GMount">GMount</link> *mount,
592
<link linkend="GAsyncResult">GAsyncResult</link> *result,
593
<link linkend="GError">GError</link> **error);</programlisting>
594
<warning><para><literal>g_mount_unmount_finish</literal> has been deprecated since version 2.22 and should not be used in newly-written code. Use <link linkend="g-mount-unmount-with-operation-finish"><function>g_mount_unmount_with_operation_finish()</function></link> instead.</para></warning>
596
Finishes unmounting a mount. If any errors occurred during the operation,
597
<parameter>error</parameter> will be set to contain the errors and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned.</para>
599
</para><variablelist role="params">
600
<varlistentry><term><parameter>mount</parameter> :</term>
601
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
602
</simpara></listitem></varlistentry>
603
<varlistentry><term><parameter>result</parameter> :</term>
604
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>.
605
</simpara></listitem></varlistentry>
606
<varlistentry><term><parameter>error</parameter> :</term>
607
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
609
</simpara></listitem></varlistentry>
610
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the mount was successfully unmounted. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
612
</simpara></listitem></varlistentry>
613
</variablelist></refsect2>
614
<refsect2 id="g-mount-unmount-with-operation" role="function" condition="since:2.22">
615
<title>g_mount_unmount_with_operation ()</title>
616
<indexterm zone="g-mount-unmount-with-operation" role="2.22"><primary sortas="mount_unmount_with_operation">g_mount_unmount_with_operation</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_unmount_with_operation (<link linkend="GMount">GMount</link> *mount,
617
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
618
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
619
<link linkend="GCancellable">GCancellable</link> *cancellable,
620
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
621
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
623
Unmounts a mount. This is an asynchronous operation, and is
624
finished by calling <link linkend="g-mount-unmount-with-operation-finish"><function>g_mount_unmount_with_operation_finish()</function></link> with the <parameter>mount</parameter>
625
and <link linkend="GAsyncResult"><type>GAsyncResult</type></link> data returned in the <parameter>callback</parameter>.</para>
627
</para><variablelist role="params">
628
<varlistentry><term><parameter>mount</parameter> :</term>
629
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
630
</simpara></listitem></varlistentry>
631
<varlistentry><term><parameter>flags</parameter> :</term>
632
<listitem><simpara> flags affecting the operation
633
</simpara></listitem></varlistentry>
634
<varlistentry><term><parameter>mount_operation</parameter> :</term>
635
<listitem><simpara> a <link linkend="GMountOperation"><type>GMountOperation</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to avoid user interaction.
636
</simpara></listitem></varlistentry>
637
<varlistentry><term><parameter>cancellable</parameter> :</term>
638
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
639
</simpara></listitem></varlistentry>
640
<varlistentry><term><parameter>callback</parameter> :</term>
641
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
642
</simpara></listitem></varlistentry>
643
<varlistentry><term><parameter>user_data</parameter> :</term>
644
<listitem><simpara> user data passed to <parameter>callback</parameter>.
645
</simpara></listitem></varlistentry>
646
</variablelist><para role="since">Since 2.22</para></refsect2>
647
<refsect2 id="g-mount-unmount-with-operation-finish" role="function" condition="since:2.22">
648
<title>g_mount_unmount_with_operation_finish ()</title>
649
<indexterm zone="g-mount-unmount-with-operation-finish" role="2.22"><primary sortas="mount_unmount_with_operation_finish">g_mount_unmount_with_operation_finish</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_unmount_with_operation_finish
650
(<link linkend="GMount">GMount</link> *mount,
651
<link linkend="GAsyncResult">GAsyncResult</link> *result,
652
<link linkend="GError">GError</link> **error);</programlisting>
654
Finishes unmounting a mount. If any errors occurred during the operation,
655
<parameter>error</parameter> will be set to contain the errors and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned.</para>
657
</para><variablelist role="params">
658
<varlistentry><term><parameter>mount</parameter> :</term>
659
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
660
</simpara></listitem></varlistentry>
661
<varlistentry><term><parameter>result</parameter> :</term>
662
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>.
663
</simpara></listitem></varlistentry>
664
<varlistentry><term><parameter>error</parameter> :</term>
665
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
667
</simpara></listitem></varlistentry>
668
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the mount was successfully unmounted. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
670
</simpara></listitem></varlistentry>
671
</variablelist><para role="since">Since 2.22</para></refsect2>
672
<refsect2 id="g-mount-remount" role="function">
673
<title>g_mount_remount ()</title>
674
<indexterm zone="g-mount-remount"><primary sortas="mount_remount">g_mount_remount</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_remount (<link linkend="GMount">GMount</link> *mount,
675
<link linkend="GMountMountFlags">GMountMountFlags</link> flags,
676
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
677
<link linkend="GCancellable">GCancellable</link> *cancellable,
678
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
679
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
681
Remounts a mount. This is an asynchronous operation, and is
682
finished by calling <link linkend="g-mount-remount-finish"><function>g_mount_remount_finish()</function></link> with the <parameter>mount</parameter>
683
and <link linkend="GAsyncResults"><type>GAsyncResults</type></link> data returned in the <parameter>callback</parameter>.
686
Remounting is useful when some setting affecting the operation
687
of the volume has been changed, as these may need a remount to
688
take affect. While this is semantically equivalent with unmounting
689
and then remounting not all backends might need to actually be
692
</para><variablelist role="params">
693
<varlistentry><term><parameter>mount</parameter> :</term>
694
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
695
</simpara></listitem></varlistentry>
696
<varlistentry><term><parameter>flags</parameter> :</term>
697
<listitem><simpara> flags affecting the operation
698
</simpara></listitem></varlistentry>
699
<varlistentry><term><parameter>mount_operation</parameter> :</term>
700
<listitem><simpara> a <link linkend="GMountOperation"><type>GMountOperation</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to avoid user interaction.
701
</simpara></listitem></varlistentry>
702
<varlistentry><term><parameter>cancellable</parameter> :</term>
703
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
704
</simpara></listitem></varlistentry>
705
<varlistentry><term><parameter>callback</parameter> :</term>
706
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
707
</simpara></listitem></varlistentry>
708
<varlistentry><term><parameter>user_data</parameter> :</term>
709
<listitem><simpara> user data passed to <parameter>callback</parameter>.
710
</simpara></listitem></varlistentry>
711
</variablelist></refsect2>
712
<refsect2 id="g-mount-remount-finish" role="function">
713
<title>g_mount_remount_finish ()</title>
714
<indexterm zone="g-mount-remount-finish"><primary sortas="mount_remount_finish">g_mount_remount_finish</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_remount_finish (<link linkend="GMount">GMount</link> *mount,
715
<link linkend="GAsyncResult">GAsyncResult</link> *result,
716
<link linkend="GError">GError</link> **error);</programlisting>
718
Finishes remounting a mount. If any errors occurred during the operation,
719
<parameter>error</parameter> will be set to contain the errors and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned.</para>
721
</para><variablelist role="params">
722
<varlistentry><term><parameter>mount</parameter> :</term>
723
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
724
</simpara></listitem></varlistentry>
725
<varlistentry><term><parameter>result</parameter> :</term>
726
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>.
727
</simpara></listitem></varlistentry>
728
<varlistentry><term><parameter>error</parameter> :</term>
729
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
731
</simpara></listitem></varlistentry>
732
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the mount was successfully remounted. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
733
</simpara></listitem></varlistentry>
734
</variablelist></refsect2>
735
<refsect2 id="g-mount-can-eject" role="function">
736
<title>g_mount_can_eject ()</title>
737
<indexterm zone="g-mount-can-eject"><primary sortas="mount_can_eject">g_mount_can_eject</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_can_eject (<link linkend="GMount">GMount</link> *mount);</programlisting>
739
Checks if <parameter>mount</parameter> can be eject.</para>
741
</para><variablelist role="params">
742
<varlistentry><term><parameter>mount</parameter> :</term>
743
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
744
</simpara></listitem></varlistentry>
745
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the <parameter>mount</parameter> can be ejected.
746
</simpara></listitem></varlistentry>
747
</variablelist></refsect2>
748
<refsect2 id="g-mount-eject" role="function" condition="deprecated:2.22: Use g_mount_eject_with_operation() instead.">
749
<title>g_mount_eject ()</title>
750
<indexterm zone="g-mount-eject" role="deprecated"><primary sortas="mount_eject">g_mount_eject</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_eject (<link linkend="GMount">GMount</link> *mount,
751
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
752
<link linkend="GCancellable">GCancellable</link> *cancellable,
753
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
754
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
755
<warning><para><literal>g_mount_eject</literal> has been deprecated since version 2.22 and should not be used in newly-written code. Use <link linkend="g-mount-eject-with-operation"><function>g_mount_eject_with_operation()</function></link> instead.</para></warning>
757
Ejects a mount. This is an asynchronous operation, and is
758
finished by calling <link linkend="g-mount-eject-finish"><function>g_mount_eject_finish()</function></link> with the <parameter>mount</parameter>
759
and <link linkend="GAsyncResult"><type>GAsyncResult</type></link> data returned in the <parameter>callback</parameter>.</para>
761
</para><variablelist role="params">
762
<varlistentry><term><parameter>mount</parameter> :</term>
763
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
764
</simpara></listitem></varlistentry>
765
<varlistentry><term><parameter>flags</parameter> :</term>
766
<listitem><simpara> flags affecting the unmount if required for eject
767
</simpara></listitem></varlistentry>
768
<varlistentry><term><parameter>cancellable</parameter> :</term>
769
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
770
</simpara></listitem></varlistentry>
771
<varlistentry><term><parameter>callback</parameter> :</term>
772
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
773
</simpara></listitem></varlistentry>
774
<varlistentry><term><parameter>user_data</parameter> :</term>
775
<listitem><simpara> user data passed to <parameter>callback</parameter>.
776
</simpara></listitem></varlistentry>
777
</variablelist></refsect2>
778
<refsect2 id="g-mount-eject-finish" role="function" condition="deprecated:2.22: Use g_mount_eject_with_operation_finish() instead.">
779
<title>g_mount_eject_finish ()</title>
780
<indexterm zone="g-mount-eject-finish" role="deprecated"><primary sortas="mount_eject_finish">g_mount_eject_finish</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_eject_finish (<link linkend="GMount">GMount</link> *mount,
781
<link linkend="GAsyncResult">GAsyncResult</link> *result,
782
<link linkend="GError">GError</link> **error);</programlisting>
783
<warning><para><literal>g_mount_eject_finish</literal> has been deprecated since version 2.22 and should not be used in newly-written code. Use <link linkend="g-mount-eject-with-operation-finish"><function>g_mount_eject_with_operation_finish()</function></link> instead.</para></warning>
785
Finishes ejecting a mount. If any errors occurred during the operation,
786
<parameter>error</parameter> will be set to contain the errors and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned.</para>
788
</para><variablelist role="params">
789
<varlistentry><term><parameter>mount</parameter> :</term>
790
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
791
</simpara></listitem></varlistentry>
792
<varlistentry><term><parameter>result</parameter> :</term>
793
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>.
794
</simpara></listitem></varlistentry>
795
<varlistentry><term><parameter>error</parameter> :</term>
796
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
798
</simpara></listitem></varlistentry>
799
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the mount was successfully ejected. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
801
</simpara></listitem></varlistentry>
802
</variablelist></refsect2>
803
<refsect2 id="g-mount-eject-with-operation" role="function" condition="since:2.22">
804
<title>g_mount_eject_with_operation ()</title>
805
<indexterm zone="g-mount-eject-with-operation" role="2.22"><primary sortas="mount_eject_with_operation">g_mount_eject_with_operation</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_eject_with_operation (<link linkend="GMount">GMount</link> *mount,
806
<link linkend="GMountUnmountFlags">GMountUnmountFlags</link> flags,
807
<link linkend="GMountOperation">GMountOperation</link> *mount_operation,
808
<link linkend="GCancellable">GCancellable</link> *cancellable,
809
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
810
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
812
Ejects a mount. This is an asynchronous operation, and is
813
finished by calling <link linkend="g-mount-eject-with-operation-finish"><function>g_mount_eject_with_operation_finish()</function></link> with the <parameter>mount</parameter>
814
and <link linkend="GAsyncResult"><type>GAsyncResult</type></link> data returned in the <parameter>callback</parameter>.</para>
816
</para><variablelist role="params">
817
<varlistentry><term><parameter>mount</parameter> :</term>
818
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
819
</simpara></listitem></varlistentry>
820
<varlistentry><term><parameter>flags</parameter> :</term>
821
<listitem><simpara> flags affecting the unmount if required for eject
822
</simpara></listitem></varlistentry>
823
<varlistentry><term><parameter>mount_operation</parameter> :</term>
824
<listitem><simpara> a <link linkend="GMountOperation"><type>GMountOperation</type></link> or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to avoid user interaction.
825
</simpara></listitem></varlistentry>
826
<varlistentry><term><parameter>cancellable</parameter> :</term>
827
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore.
828
</simpara></listitem></varlistentry>
829
<varlistentry><term><parameter>callback</parameter> :</term>
830
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
831
</simpara></listitem></varlistentry>
832
<varlistentry><term><parameter>user_data</parameter> :</term>
833
<listitem><simpara> user data passed to <parameter>callback</parameter>.
834
</simpara></listitem></varlistentry>
835
</variablelist><para role="since">Since 2.22</para></refsect2>
836
<refsect2 id="g-mount-eject-with-operation-finish" role="function" condition="since:2.22">
837
<title>g_mount_eject_with_operation_finish ()</title>
838
<indexterm zone="g-mount-eject-with-operation-finish" role="2.22"><primary sortas="mount_eject_with_operation_finish">g_mount_eject_with_operation_finish</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_eject_with_operation_finish (<link linkend="GMount">GMount</link> *mount,
839
<link linkend="GAsyncResult">GAsyncResult</link> *result,
840
<link linkend="GError">GError</link> **error);</programlisting>
842
Finishes ejecting a mount. If any errors occurred during the operation,
843
<parameter>error</parameter> will be set to contain the errors and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned.</para>
845
</para><variablelist role="params">
846
<varlistentry><term><parameter>mount</parameter> :</term>
847
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>.
848
</simpara></listitem></varlistentry>
849
<varlistentry><term><parameter>result</parameter> :</term>
850
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>.
851
</simpara></listitem></varlistentry>
852
<varlistentry><term><parameter>error</parameter> :</term>
853
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
855
</simpara></listitem></varlistentry>
856
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the mount was successfully ejected. <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise.
858
</simpara></listitem></varlistentry>
859
</variablelist><para role="since">Since 2.22</para></refsect2>
860
<refsect2 id="g-mount-guess-content-type" role="function" condition="since:2.18">
861
<title>g_mount_guess_content_type ()</title>
862
<indexterm zone="g-mount-guess-content-type" role="2.18"><primary sortas="mount_guess_content_type">g_mount_guess_content_type</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_guess_content_type (<link linkend="GMount">GMount</link> *mount,
863
<link linkend="gboolean">gboolean</link> force_rescan,
864
<link linkend="GCancellable">GCancellable</link> *cancellable,
865
<link linkend="GAsyncReadyCallback">GAsyncReadyCallback</link> callback,
866
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
868
Tries to guess the type of content stored on <parameter>mount</parameter>. Returns one or
869
more textual identifiers of well-known content types (typically
870
prefixed with "x-content/"), e.g. x-content/image-dcf for camera
871
memory cards. See the <ulink url="http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec">shared-mime-info</ulink>
872
specification for more on x-content types.
875
This is an asynchronous operation (see
876
<link linkend="g-mount-guess-content-type-sync"><function>g_mount_guess_content_type_sync()</function></link> for the synchronous version), and
877
is finished by calling <link linkend="g-mount-guess-content-type-finish"><function>g_mount_guess_content_type_finish()</function></link> with the
878
<parameter>mount</parameter> and <link linkend="GAsyncResult"><type>GAsyncResult</type></link> data returned in the <parameter>callback</parameter>.</para>
880
</para><variablelist role="params">
881
<varlistentry><term><parameter>mount</parameter> :</term>
882
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>
883
</simpara></listitem></varlistentry>
884
<varlistentry><term><parameter>force_rescan</parameter> :</term>
885
<listitem><simpara> Whether to force a rescan of the content.
886
Otherwise a cached result will be used if available
887
</simpara></listitem></varlistentry>
888
<varlistentry><term><parameter>cancellable</parameter> :</term>
889
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore
890
</simpara></listitem></varlistentry>
891
<varlistentry><term><parameter>callback</parameter> :</term>
892
<listitem><simpara> a <link linkend="GAsyncReadyCallback"><type>GAsyncReadyCallback</type></link>
893
</simpara></listitem></varlistentry>
894
<varlistentry><term><parameter>user_data</parameter> :</term>
895
<listitem><simpara> user data passed to <parameter>callback</parameter>
896
</simpara></listitem></varlistentry>
897
</variablelist><para role="since">Since 2.18</para></refsect2>
898
<refsect2 id="g-mount-guess-content-type-finish" role="function" condition="since:2.18">
899
<title>g_mount_guess_content_type_finish ()</title>
900
<indexterm zone="g-mount-guess-content-type-finish" role="2.18"><primary sortas="mount_guess_content_type_finish">g_mount_guess_content_type_finish</primary></indexterm><programlisting><link linkend="gchar">gchar</link> ** g_mount_guess_content_type_finish (<link linkend="GMount">GMount</link> *mount,
901
<link linkend="GAsyncResult">GAsyncResult</link> *result,
902
<link linkend="GError">GError</link> **error);</programlisting>
904
Finishes guessing content types of <parameter>mount</parameter>. If any errors occured
905
during the operation, <parameter>error</parameter> will be set to contain the errors and
906
<link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned. In particular, you may get an
907
<link linkend="G-IO-ERROR-NOT-SUPPORTED--CAPS"><literal>G_IO_ERROR_NOT_SUPPORTED</literal></link> if the mount does not support content
910
</para><variablelist role="params">
911
<varlistentry><term><parameter>mount</parameter> :</term>
912
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>
913
</simpara></listitem></varlistentry>
914
<varlistentry><term><parameter>result</parameter> :</term>
915
<listitem><simpara> a <link linkend="GAsyncResult"><type>GAsyncResult</type></link>
916
</simpara></listitem></varlistentry>
917
<varlistentry><term><parameter>error</parameter> :</term>
918
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
920
</simpara></listitem></varlistentry>
921
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="NULL--CAPS"><literal>NULL</literal></link>-terminated array of content types or <link linkend="NULL--CAPS"><literal>NULL</literal></link> on error.
922
Caller should free this array with <link linkend="g-strfreev"><function>g_strfreev()</function></link> when done with it.
924
</simpara></listitem></varlistentry>
925
</variablelist><para role="since">Since 2.18</para></refsect2>
926
<refsect2 id="g-mount-guess-content-type-sync" role="function" condition="since:2.18">
927
<title>g_mount_guess_content_type_sync ()</title>
928
<indexterm zone="g-mount-guess-content-type-sync" role="2.18"><primary sortas="mount_guess_content_type_sync">g_mount_guess_content_type_sync</primary></indexterm><programlisting><link linkend="gchar">gchar</link> ** g_mount_guess_content_type_sync (<link linkend="GMount">GMount</link> *mount,
929
<link linkend="gboolean">gboolean</link> force_rescan,
930
<link linkend="GCancellable">GCancellable</link> *cancellable,
931
<link linkend="GError">GError</link> **error);</programlisting>
933
Tries to guess the type of content stored on <parameter>mount</parameter>. Returns one or
934
more textual identifiers of well-known content types (typically
935
prefixed with "x-content/"), e.g. x-content/image-dcf for camera
936
memory cards. See the <ulink url="http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec">shared-mime-info</ulink>
937
specification for more on x-content types.
940
This is an synchronous operation and as such may block doing IO;
941
see <link linkend="g-mount-guess-content-type"><function>g_mount_guess_content_type()</function></link> for the asynchronous version.</para>
943
</para><variablelist role="params">
944
<varlistentry><term><parameter>mount</parameter> :</term>
945
<listitem><simpara> a <link linkend="GMount"><type>GMount</type></link>
946
</simpara></listitem></varlistentry>
947
<varlistentry><term><parameter>force_rescan</parameter> :</term>
948
<listitem><simpara> Whether to force a rescan of the content.
949
Otherwise a cached result will be used if available
950
</simpara></listitem></varlistentry>
951
<varlistentry><term><parameter>cancellable</parameter> :</term>
952
<listitem><simpara> optional <link linkend="GCancellable"><type>GCancellable</type></link> object, <link linkend="NULL--CAPS"><literal>NULL</literal></link> to ignore
953
</simpara></listitem></varlistentry>
954
<varlistentry><term><parameter>error</parameter> :</term>
955
<listitem><simpara> a <link linkend="GError"><type>GError</type></link> location to store the error occuring, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> to
957
</simpara></listitem></varlistentry>
958
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a <link linkend="NULL--CAPS"><literal>NULL</literal></link>-terminated array of content types or <link linkend="NULL--CAPS"><literal>NULL</literal></link> on error.
959
Caller should free this array with <link linkend="g-strfreev"><function>g_strfreev()</function></link> when done with it.
961
</simpara></listitem></varlistentry>
962
</variablelist><para role="since">Since 2.18</para></refsect2>
963
<refsect2 id="g-mount-is-shadowed" role="function" condition="since:2.20">
964
<title>g_mount_is_shadowed ()</title>
965
<indexterm zone="g-mount-is-shadowed" role="2.20"><primary sortas="mount_is_shadowed">g_mount_is_shadowed</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_mount_is_shadowed (<link linkend="GMount">GMount</link> *mount);</programlisting>
967
Determines if <parameter>mount</parameter> is shadowed. Applications or libraries should
968
avoid displaying <parameter>mount</parameter> in the user interface if it is shadowed.
971
A mount is said to be shadowed if there exists one or more user
972
visible objects (currently <link linkend="GMount"><type>GMount</type></link> objects) with a root that is
973
inside the root of <parameter>mount</parameter>.
976
One application of shadow mounts is when exposing a single file
977
system that is used to address several logical volumes. In this
978
situation, a <link linkend="GVolumeMonitor"><type>GVolumeMonitor</type></link> implementation would create two
979
<link linkend="GVolume"><type>GVolume</type></link> objects (for example, one for the camera functionality of
980
the device and one for a SD card reader on the device) with
981
activation URIs <literal>gphoto2://[usb:001,002]/store1/</literal>
982
and <literal>gphoto2://[usb:001,002]/store2/</literal>. When the
983
underlying mount (with root
984
<literal>gphoto2://[usb:001,002]/</literal>) is mounted, said
985
<link linkend="GVolumeMonitor"><type>GVolumeMonitor</type></link> implementation would create two <link linkend="GMount"><type>GMount</type></link> objects
986
(each with their root matching the corresponding volume activation
987
root) that would shadow the original mount.
990
The proxy monitor in GVfs 2.26 and later, automatically creates and
991
manage shadow mounts (and shadows the underlying mount) if the
992
activation root on a <link linkend="GVolume"><type>GVolume</type></link> is set.</para>
994
</para><variablelist role="params">
995
<varlistentry><term><parameter>mount</parameter> :</term>
996
<listitem><simpara> A <link linkend="GMount"><type>GMount</type></link>.
997
</simpara></listitem></varlistentry>
998
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>mount</parameter> is shadowed.
1000
</simpara></listitem></varlistentry>
1001
</variablelist><para role="since">Since 2.20</para></refsect2>
1002
<refsect2 id="g-mount-shadow" role="function" condition="since:2.20">
1003
<title>g_mount_shadow ()</title>
1004
<indexterm zone="g-mount-shadow" role="2.20"><primary sortas="mount_shadow">g_mount_shadow</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_shadow (<link linkend="GMount">GMount</link> *mount);</programlisting>
1006
Increments the shadow count on <parameter>mount</parameter>. Usually used by
1007
<link linkend="GVolumeMonitor"><type>GVolumeMonitor</type></link> implementations when creating a shadow mount for
1008
<parameter>mount</parameter>, see <link linkend="g-mount-is-shadowed"><function>g_mount_is_shadowed()</function></link> for more information. The caller
1009
will need to emit the <link linkend="GMount-changed"><type>"changed"</type></link> signal on <parameter>mount</parameter> manually.</para>
1011
</para><variablelist role="params">
1012
<varlistentry><term><parameter>mount</parameter> :</term>
1013
<listitem><simpara> A <link linkend="GMount"><type>GMount</type></link>.
1014
</simpara></listitem></varlistentry>
1015
</variablelist><para role="since">Since 2.20</para></refsect2>
1016
<refsect2 id="g-mount-unshadow" role="function" condition="since:2.20">
1017
<title>g_mount_unshadow ()</title>
1018
<indexterm zone="g-mount-unshadow" role="2.20"><primary sortas="mount_unshadow">g_mount_unshadow</primary></indexterm><programlisting><link linkend="void">void</link> g_mount_unshadow (<link linkend="GMount">GMount</link> *mount);</programlisting>
1020
Decrements the shadow count on <parameter>mount</parameter>. Usually used by
1021
<link linkend="GVolumeMonitor"><type>GVolumeMonitor</type></link> implementations when destroying a shadow mount for
1022
<parameter>mount</parameter>, see <link linkend="g-mount-is-shadowed"><function>g_mount_is_shadowed()</function></link> for more information. The caller
1023
will need to emit the <link linkend="GMount-changed"><type>"changed"</type></link> signal on <parameter>mount</parameter> manually.</para>
1025
</para><variablelist role="params">
1026
<varlistentry><term><parameter>mount</parameter> :</term>
1027
<listitem><simpara> A <link linkend="GMount"><type>GMount</type></link>.
1028
</simpara></listitem></varlistentry>
1029
</variablelist><para role="since">Since 2.20</para></refsect2>
1033
<refsect1 id="GMount.signal-details" role="signals">
1034
<title role="signals.title">Signal Details</title>
1035
<refsect2 id="GMount-changed" role="signal"><title>The <literal>"changed"</literal> signal</title>
1036
<indexterm zone="GMount-changed"><primary sortas="Mount::changed">GMount::changed</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="GMount">GMount</link> *mount,
1037
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
1039
Emitted when the mount has been changed.</para>
1041
</para><variablelist role="params">
1042
<varlistentry><term><parameter>mount</parameter> :</term>
1043
<listitem><simpara> the object on which the signal is emitted
1044
</simpara></listitem></varlistentry>
1045
<varlistentry><term><parameter>user_data</parameter> :</term>
1046
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
1047
</variablelist></refsect2><refsect2 id="GMount-pre-unmount" role="signal"><title>The <literal>"pre-unmount"</literal> signal</title>
1048
<indexterm zone="GMount-pre-unmount" role="2.22"><primary sortas="Mount::pre-unmount">GMount::pre-unmount</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="GMount">GMount</link> *mount,
1049
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
1051
This signal is emitted when the <link linkend="GMount"><type>GMount</type></link> is about to be
1054
</para><variablelist role="params">
1055
<varlistentry><term><parameter>mount</parameter> :</term>
1056
<listitem><simpara> the object on which the signal is emitted
1057
</simpara></listitem></varlistentry>
1058
<varlistentry><term><parameter>user_data</parameter> :</term>
1059
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
1060
</variablelist><para>Since 2.22</para></refsect2><refsect2 id="GMount-unmounted" role="signal"><title>The <literal>"unmounted"</literal> signal</title>
1061
<indexterm zone="GMount-unmounted"><primary sortas="Mount::unmounted">GMount::unmounted</primary></indexterm><programlisting><link linkend="void">void</link> user_function (<link linkend="GMount">GMount</link> *mount,
1062
<link linkend="gpointer">gpointer</link> user_data) : Run Last</programlisting>
1064
This signal is emitted when the <link linkend="GMount"><type>GMount</type></link> have been
1065
unmounted. If the recipient is holding references to the
1066
object they should release them so the object can be
1069
</para><variablelist role="params">
1070
<varlistentry><term><parameter>mount</parameter> :</term>
1071
<listitem><simpara> the object on which the signal is emitted
1072
</simpara></listitem></varlistentry>
1073
<varlistentry><term><parameter>user_data</parameter> :</term>
1074
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
1075
</variablelist></refsect2>