/* GIO - GLib Input, Output and Streaming Library * * Copyright (C) 2006-2007 Red Hat, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, see <http://www.gnu.org/licenses/>. * * Author: Alexander Larsson <alexl@redhat.com> * David Zeuthen <davidz@redhat.com> */ #ifndef __G_VOLUME_H__ #define __G_VOLUME_H__ #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) #error "Only <gio/gio.h> can be included directly." #endif #include <gio/giotypes.h> G_BEGIN_DECLS /** * G_VOLUME_IDENTIFIER_KIND_HAL_UDI: * * The string used to obtain a Hal UDI with g_volume_get_identifier(). */ #define G_VOLUME_IDENTIFIER_KIND_HAL_UDI "hal-udi" /** * G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE: * * The string used to obtain a Unix device path with g_volume_get_identifier(). */ #define G_VOLUME_IDENTIFIER_KIND_UNIX_DEVICE "unix-device" /** * G_VOLUME_IDENTIFIER_KIND_LABEL: * * The string used to obtain a filesystem label with g_volume_get_identifier(). */ #define G_VOLUME_IDENTIFIER_KIND_LABEL "label" /** * G_VOLUME_IDENTIFIER_KIND_UUID: * * The string used to obtain a UUID with g_volume_get_identifier(). */ #define G_VOLUME_IDENTIFIER_KIND_UUID "uuid" /** * G_VOLUME_IDENTIFIER_KIND_NFS_MOUNT: * * The string used to obtain a NFS mount with g_volume_get_identifier(). */ #define G_VOLUME_IDENTIFIER_KIND_NFS_MOUNT "nfs-mount" /** * G_VOLUME_IDENTIFIER_KIND_CLASS: * * The string used to obtain the volume class with g_volume_get_identifier(). * * Known volume classes include `device` and `network`. Other classes may * be added in the future. * * This is intended to be used by applications to classify #GVolume * instances into different sections - for example a file manager or * file chooser can use this information to show `network` volumes under * a "Network" heading and `device` volumes under a "Devices" heading. */ #define G_VOLUME_IDENTIFIER_KIND_CLASS "class" #define G_TYPE_VOLUME (g_volume_get_type ()) #define G_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), G_TYPE_VOLUME, GVolume)) #define G_IS_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), G_TYPE_VOLUME)) #define G_VOLUME_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), G_TYPE_VOLUME, GVolumeIface)) /** * GVolumeIface: * @g_iface: The parent interface. * @changed: Changed signal that is emitted when the volume's state has changed. * @removed: The removed signal that is emitted when the #GVolume have been removed. If the recipient is holding references to the object they should release them so the object can be finalized. * @get_name: Gets a string containing the name of the #GVolume. * @get_icon: Gets a #GIcon for the #GVolume. * @get_uuid: Gets the UUID for the #GVolume. The reference is typically based on the file system UUID for the mount in question and should be considered an opaque string. Returns %NULL if there is no UUID available. * @get_drive: Gets a #GDrive the volume is located on. Returns %NULL if the #GVolume is not associated with a #GDrive. * @get_mount: Gets a #GMount representing the mounted volume. Returns %NULL if the #GVolume is not mounted. * @can_mount: Returns %TRUE if the #GVolume can be mounted. * @can_eject: Checks if a #GVolume can be ejected. * @mount_fn: Mounts a given #GVolume. * #GVolume implementations must emit the #GMountOperation::aborted * signal before completing a mount operation that is aborted while * awaiting input from the user through a #GMountOperation instance. * @mount_finish: Finishes a mount operation. * @eject: Ejects a given #GVolume. * @eject_finish: Finishes an eject operation. * @get_identifier: Returns the [identifier][volume-identifier] of the given kind, or %NULL if * the #GVolume doesn't have one. * @enumerate_identifiers: Returns an array strings listing the kinds * of [identifiers][volume-identifier] which the #GVolume has. * @should_automount: Returns %TRUE if the #GVolume should be automatically mounted. * @get_activation_root: Returns the activation root for the #GVolume if it is known in advance or %NULL if * it is not known. * @eject_with_operation: Starts ejecting a #GVolume using a #GMountOperation. Since 2.22. * @eject_with_operation_finish: Finishes an eject operation using a #GMountOperation. Since 2.22. * @get_sort_key: Gets a key used for sorting #GVolume instance or %NULL if no such key exists. Since 2.32. * @get_symbolic_icon: Gets a symbolic #GIcon for the #GVolume. Since 2.34. * * Interface for implementing operations for mountable volumes. **/ typedef struct _GVolumeIface GVolumeIface; struct _GVolumeIface { GTypeInterface g_iface; /* signals */ void (* changed) (GVolume *volume); void (* removed) (GVolume *volume); /* Virtual Table */ char * (* get_name) (GVolume *volume); GIcon * (* get_icon) (GVolume *volume); char * (* get_uuid) (GVolume *volume); GDrive * (* get_drive) (GVolume *volume); GMount * (* get_mount) (GVolume *volume); gboolean (* can_mount) (GVolume *volume); gboolean (* can_eject) (GVolume *volume); void (* mount_fn) (GVolume *volume, GMountMountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); gboolean (* mount_finish) (GVolume *volume, GAsyncResult *result, GError **error); void (* eject) (GVolume *volume, GMountUnmountFlags flags, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); gboolean (* eject_finish) (GVolume *volume, GAsyncResult *result, GError **error); char * (* get_identifier) (GVolume *volume, const char *kind); char ** (* enumerate_identifiers) (GVolume *volume); gboolean (* should_automount) (GVolume *volume); GFile * (* get_activation_root) (GVolume *volume); void (* eject_with_operation) (GVolume *volume, GMountUnmountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); gboolean (* eject_with_operation_finish) (GVolume *volume, GAsyncResult *result, GError **error); const gchar * (* get_sort_key) (GVolume *volume); GIcon * (* get_symbolic_icon) (GVolume *volume); }; GLIB_AVAILABLE_IN_ALL GType g_volume_get_type (void) G_GNUC_CONST; GLIB_AVAILABLE_IN_ALL char * g_volume_get_name (GVolume *volume); GLIB_AVAILABLE_IN_ALL GIcon * g_volume_get_icon (GVolume *volume); GLIB_AVAILABLE_IN_ALL GIcon * g_volume_get_symbolic_icon (GVolume *volume); GLIB_AVAILABLE_IN_ALL char * g_volume_get_uuid (GVolume *volume); GLIB_AVAILABLE_IN_ALL GDrive * g_volume_get_drive (GVolume *volume); GLIB_AVAILABLE_IN_ALL GMount * g_volume_get_mount (GVolume *volume); GLIB_AVAILABLE_IN_ALL gboolean g_volume_can_mount (GVolume *volume); GLIB_AVAILABLE_IN_ALL gboolean g_volume_can_eject (GVolume *volume); GLIB_AVAILABLE_IN_ALL gboolean g_volume_should_automount (GVolume *volume); GLIB_AVAILABLE_IN_ALL void g_volume_mount (GVolume *volume, GMountMountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); GLIB_AVAILABLE_IN_ALL gboolean g_volume_mount_finish (GVolume *volume, GAsyncResult *result, GError **error); GLIB_DEPRECATED_FOR(g_volume_eject_with_operation) void g_volume_eject (GVolume *volume, GMountUnmountFlags flags, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); GLIB_DEPRECATED_FOR(g_volume_eject_with_operation_finish) gboolean g_volume_eject_finish (GVolume *volume, GAsyncResult *result, GError **error); GLIB_AVAILABLE_IN_ALL char * g_volume_get_identifier (GVolume *volume, const char *kind); GLIB_AVAILABLE_IN_ALL char ** g_volume_enumerate_identifiers (GVolume *volume); GLIB_AVAILABLE_IN_ALL GFile * g_volume_get_activation_root (GVolume *volume); GLIB_AVAILABLE_IN_ALL void g_volume_eject_with_operation (GVolume *volume, GMountUnmountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); GLIB_AVAILABLE_IN_ALL gboolean g_volume_eject_with_operation_finish (GVolume *volume, GAsyncResult *result, GError **error); GLIB_AVAILABLE_IN_2_32 const gchar *g_volume_get_sort_key (GVolume *volume); G_END_DECLS #endif /* __G_VOLUME_H__ */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
gaction.h | File | 4.5 KB | 0644 |
|
gactiongroup.h | File | 8.95 KB | 0644 |
|
gactiongroupexporter.h | File | 1.73 KB | 0644 |
|
gactionmap.h | File | 3.9 KB | 0644 |
|
gappinfo.h | File | 16.99 KB | 0644 |
|
gapplication.h | File | 14.12 KB | 0644 |
|
gapplicationcommandline.h | File | 6.02 KB | 0644 |
|
gasyncinitable.h | File | 4.25 KB | 0644 |
|
gasyncresult.h | File | 2.75 KB | 0644 |
|
gbufferedinputstream.h | File | 5.11 KB | 0644 |
|
gbufferedoutputstream.h | File | 3.26 KB | 0644 |
|
gbytesicon.h | File | 1.61 KB | 0644 |
|
gcancellable.h | File | 3.96 KB | 0644 |
|
gcharsetconverter.h | File | 2.46 KB | 0644 |
|
gcontenttype.h | File | 2.65 KB | 0644 |
|
gconverter.h | File | 2.82 KB | 0644 |
|
gconverterinputstream.h | File | 2.94 KB | 0644 |
|
gconverteroutputstream.h | File | 2.98 KB | 0644 |
|
gcredentials.h | File | 3.33 KB | 0644 |
|
gdatagrambased.h | File | 6.5 KB | 0644 |
|
gdatainputstream.h | File | 10.88 KB | 0644 |
|
gdataoutputstream.h | File | 4.81 KB | 0644 |
|
gdbusactiongroup.h | File | 2.67 KB | 0644 |
|
gdbusaddress.h | File | 2.61 KB | 0644 |
|
gdbusauthobserver.h | File | 2.08 KB | 0644 |
|
gdbusconnection.h | File | 37.86 KB | 0644 |
|
gdbuserror.h | File | 4.21 KB | 0644 |
|
gdbusinterface.h | File | 3 KB | 0644 |
|
gdbusinterfaceskeleton.h | File | 5.91 KB | 0644 |
|
gdbusintrospection.h | File | 12.1 KB | 0644 |
|
gdbusmenumodel.h | File | 1.69 KB | 0644 |
|
gdbusmessage.h | File | 11.12 KB | 0644 |
|
gdbusmethodinvocation.h | File | 5.67 KB | 0644 |
|
gdbusnameowning.h | File | 4.76 KB | 0644 |
|
gdbusnamewatching.h | File | 4.41 KB | 0644 |
|
gdbusobject.h | File | 2.87 KB | 0644 |
|
gdbusobjectmanager.h | File | 4.37 KB | 0644 |
|
gdbusobjectmanagerclient.h | File | 9.57 KB | 0644 |
|
gdbusobjectmanagerserver.h | File | 4.02 KB | 0644 |
|
gdbusobjectproxy.h | File | 2.57 KB | 0644 |
|
gdbusobjectskeleton.h | File | 3.86 KB | 0644 |
|
gdbusproxy.h | File | 11.8 KB | 0644 |
|
gdbusserver.h | File | 2.47 KB | 0644 |
|
gdbusutils.h | File | 1.74 KB | 0644 |
|
gdrive.h | File | 13.96 KB | 0644 |
|
gdtlsclientconnection.h | File | 3.12 KB | 0644 |
|
gdtlsconnection.h | File | 10.44 KB | 0644 |
|
gdtlsserverconnection.h | File | 2.39 KB | 0644 |
|
gemblem.h | File | 2.1 KB | 0644 |
|
gemblemedicon.h | File | 2.72 KB | 0644 |
|
gfile.h | File | 77.08 KB | 0644 |
|
gfileattribute.h | File | 2.74 KB | 0644 |
|
gfileenumerator.h | File | 6.24 KB | 0644 |
|
gfileicon.h | File | 1.91 KB | 0644 |
|
gfileinfo.h | File | 41.46 KB | 0644 |
|
gfileinputstream.h | File | 4.55 KB | 0644 |
|
gfileiostream.h | File | 4.92 KB | 0644 |
|
gfilemonitor.h | File | 3.2 KB | 0644 |
|
gfilenamecompleter.h | File | 3.02 KB | 0644 |
|
gfileoutputstream.h | File | 5.21 KB | 0644 |
|
gfilterinputstream.h | File | 2.77 KB | 0644 |
|
gfilteroutputstream.h | File | 2.81 KB | 0644 |
|
gicon.h | File | 3.35 KB | 0644 |
|
ginetaddress.h | File | 4.42 KB | 0644 |
|
ginetaddressmask.h | File | 3.05 KB | 0644 |
|
ginetsocketaddress.h | File | 3.04 KB | 0644 |
|
ginitable.h | File | 2.84 KB | 0644 |
|
ginputstream.h | File | 8.97 KB | 0644 |
|
gio-autocleanups.h | File | 8.64 KB | 0644 |
|
gio.h | File | 5.45 KB | 0644 |
|
gioenums.h | File | 70.63 KB | 0644 |
|
gioenumtypes.h | File | 11.71 KB | 0644 |
|
gioerror.h | File | 1.52 KB | 0644 |
|
giomodule.h | File | 7.88 KB | 0644 |
|
gioscheduler.h | File | 1.95 KB | 0644 |
|
giostream.h | File | 4.75 KB | 0644 |
|
giotypes.h | File | 24.11 KB | 0644 |
|
glistmodel.h | File | 2.52 KB | 0644 |
|
gliststore.h | File | 3.39 KB | 0644 |
|
gloadableicon.h | File | 3.58 KB | 0644 |
|
gmemoryinputstream.h | File | 3.35 KB | 0644 |
|
gmemoryoutputstream.h | File | 3.84 KB | 0644 |
|
gmenu.h | File | 8.73 KB | 0644 |
|
gmenuexporter.h | File | 1.57 KB | 0644 |
|
gmenumodel.h | File | 14 KB | 0644 |
|
gmount.h | File | 15.42 KB | 0644 |
|
gmountoperation.h | File | 5.35 KB | 0644 |
|
gnativevolumemonitor.h | File | 2.22 KB | 0644 |
|
gnetworkaddress.h | File | 2.89 KB | 0644 |
|
gnetworking.h | File | 1.95 KB | 0644 |
|
gnetworkmonitor.h | File | 4.14 KB | 0644 |
|
gnetworkservice.h | File | 2.69 KB | 0644 |
|
gnotification.h | File | 4.78 KB | 0644 |
|
goutputstream.h | File | 12.25 KB | 0644 |
|
gpermission.h | File | 5.72 KB | 0644 |
|
gpollableinputstream.h | File | 3.74 KB | 0644 |
|
gpollableoutputstream.h | File | 3.81 KB | 0644 |
|
gpollableutils.h | File | 2.08 KB | 0644 |
|
gpropertyaction.h | File | 1.95 KB | 0644 |
|
gproxy.h | File | 3.97 KB | 0644 |
|
gproxyaddress.h | File | 3.09 KB | 0644 |
|
gproxyaddressenumerator.h | File | 2.74 KB | 0644 |
|
gproxyresolver.h | File | 3.31 KB | 0644 |
|
gremoteactiongroup.h | File | 3.55 KB | 0644 |
|
gresolver.h | File | 8.61 KB | 0644 |
|
gresource.h | File | 4.54 KB | 0644 |
|
gseekable.h | File | 3.2 KB | 0644 |
|
gsettings.h | File | 20.65 KB | 0644 |
|
gsettingsbackend.h | File | 8.31 KB | 0644 |
|
gsettingsschema.h | File | 5.79 KB | 0644 |
|
gsimpleaction.h | File | 2.85 KB | 0644 |
|
gsimpleactiongroup.h | File | 4.25 KB | 0644 |
|
gsimpleasyncresult.h | File | 7.63 KB | 0644 |
|
gsimpleiostream.h | File | 1.68 KB | 0644 |
|
gsimplepermission.h | File | 1.65 KB | 0644 |
|
gsimpleproxyresolver.h | File | 3.45 KB | 0644 |
|
gsocket.h | File | 15.25 KB | 0644 |
|
gsocketaddress.h | File | 3.01 KB | 0644 |
|
gsocketaddressenumerator.h | File | 3.45 KB | 0644 |
|
gsocketclient.h | File | 10.95 KB | 0644 |
|
gsocketconnectable.h | File | 2.82 KB | 0644 |
|
gsocketconnection.h | File | 4.94 KB | 0644 |
|
gsocketcontrolmessage.h | File | 4.77 KB | 0644 |
|
gsocketlistener.h | File | 7.5 KB | 0644 |
|
gsocketservice.h | File | 3.54 KB | 0644 |
|
gsrvtarget.h | File | 1.89 KB | 0644 |
|
gsubprocess.h | File | 8.4 KB | 0644 |
|
gsubprocesslauncher.h | File | 6.25 KB | 0644 |
|
gtask.h | File | 7.43 KB | 0644 |
|
gtcpconnection.h | File | 2.89 KB | 0644 |
|
gtcpwrapperconnection.h | File | 2.9 KB | 0644 |
|
gtestdbus.h | File | 2.25 KB | 0644 |
|
gthemedicon.h | File | 2.58 KB | 0644 |
|
gthreadedsocketservice.h | File | 3.58 KB | 0644 |
|
gtlsbackend.h | File | 4.3 KB | 0644 |
|
gtlscertificate.h | File | 3.42 KB | 0644 |
|
gtlsclientconnection.h | File | 3.6 KB | 0644 |
|
gtlsconnection.h | File | 6.02 KB | 0644 |
|
gtlsdatabase.h | File | 16.87 KB | 0644 |
|
gtlsfiledatabase.h | File | 1.86 KB | 0644 |
|
gtlsinteraction.h | File | 8.14 KB | 0644 |
|
gtlspassword.h | File | 4.71 KB | 0644 |
|
gtlsserverconnection.h | File | 2.29 KB | 0644 |
|
gvfs.h | File | 6.46 KB | 0644 |
|
gvolume.h | File | 11.37 KB | 0644 |
|
gvolumemonitor.h | File | 5.86 KB | 0644 |
|
gzlibcompressor.h | File | 2.29 KB | 0644 |
|
gzlibdecompressor.h | File | 2.16 KB | 0644 |
|