接口

GioMount

描述 [源码]

interface Gio.Mount : GObject.Object

GMount 接口表示一个用户可见的挂载点,例如挂载的文件系统。

GMount 是一个您可以访问的“已挂载”的文件系统。已挂载加引号,因为它与 UNIX 挂载不同,它可能是一个 GVFS 挂载,但您仍然可以使用 GIO 访问他上的文件。

一个 GMount 可能与一个 GVolume(例如 USB 闪存驱动器)相关联,它承载它。

卸载一个 GMount 实例是一个异步操作。有关异步操作的信息,请参阅 GAsyncResultGTask。要卸载 GMount 实例,首先调用(至少要有)g_mount_unmount_with_operation() 并带有 GMount 实例和一个 GAsyncReadyCallback。当操作已解决(无论成功或失败)时,回调将被触发,并将一个 GAsyncResult 结构传递给回调。然后,该回调应调用 g_mount_unmount_with_operation_finish() 并带有 GMountGAsyncResult 数据以查看操作是否成功完成。如果在对 g_mount_unmount_with_operation_finish() 调用时存在 error,则它将被填充以包含任何错误信息。

注意,在从 GnomeVFS 进行迁移时,GMountGnomeVFSVolume 的道德等价物。

先决条件

要实现 Mount,您的类型必须继承自GObject

实例方法

g_mount_can_eject

检查 mount 是否可以弹出。

g_mount_can_unmount

检查 mount 是否可以卸载。

g_mount_eject

弹出挂载。这是一个异步操作,由调用 g_mount_eject_finish() 并带有在回调中返回的 mountGAsyncResult 数据来完成。

已弃用:2.22 

g_mount_eject_finish

完成弹出挂载。如果操作期间发生任何错误,则 error 将设置为包含错误并返回 FALSE

已弃用:2.22 

g_mount_eject_with_operation

弹出挂载。这是一个异步操作,由调用 g_mount_eject_with_operation_finish() 并带有在回调中返回的 mountGAsyncResult 数据来完成。

自 2.22 以来

g_mount_eject_with_operation_finish

完成弹出挂载。如果操作期间发生任何错误,则 error 将设置为包含错误并返回 FALSE

自 2.22 以来

g_mount_get_default_location

获取 mount 的默认位置。给定 mount 的默认位置是表示用户主要入口点的路径(例如,家目录或卷的根)。

g_mount_get_drive

获取 mount 的驱动器。

g_mount_get_icon

获取 mount 的图标。

g_mount_get_name

获取 mount 的名称。

g_mount_get_root

获取 mount 上的根目录。

g_mount_get_sort_key

获取 mount 的排序键(如果有的话)。

自 2.32 以来

g_mount_get_symbolic_icon

获取 mount 的符号图标。

自 2.34 以来

g_mount_get_uuid

获取 mountUUID。该引用通常是针对挂载的文件系统 UUID,应被视为一个不定长字符串。如果没有可用的 UUID,则返回 NULL

g_mount_get_volume

获取 mount 的卷。

g_mount_guess_content_type

尝试猜测 mount 上存储的内容类型。返回一个或多个已知内容类型的文本标识符(通常以“x-content/”为前缀),例如 x-content/image-dcf 用于相机存储卡。有关 x-content 类型的更多信息,请参阅 shared-mime-info 规范。

自 2.18 以来

g_mount_guess_content_type_finish

完成猜测mount的内容类型。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE。特别是,如果挂载不支持内容猜测,可能会得到G_IO_ERROR_NOT_SUPPORTED

自 2.18 以来

g_mount_guess_content_type_sync

尝试猜测 mount 上存储的内容类型。返回一个或多个已知内容类型的文本标识符(通常以“x-content/”为前缀),例如 x-content/image-dcf 用于相机存储卡。有关 x-content 类型的更多信息,请参阅 shared-mime-info 规范。

自 2.18 以来

g_mount_is_shadowed

确定是否mount被遮挡。如果mount被遮挡,应用程序或库应避免在用户界面中显示mount

since: 2.20

g_mount_remount

重新挂载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResults数据的g_mount_remount_finish()来完成。

g_mount_remount_finish

完成挂载的重新挂载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

g_mount_shadow

增加mount的遮挡计数。通常由GVolumeMonitor实现用于为mount创建遮挡挂载时使用,更多请参考g_mount_is_shadowed()。调用者需要手动在mount上发出GMount::changed信号。

since: 2.20

g_mount_unmount

卸载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResult数据的g_mount_unmount_finish()来完成。

已弃用:2.22 

g_mount_unmount_finish

完成挂载的卸载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

已弃用:2.22 

g_mount_unmount_with_operation

卸载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResult数据的g_mount_unmount_with_operation_finish()来完成。

自 2.22 以来

g_mount_unmount_with_operation_finish

完成挂载的卸载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

自 2.22 以来

g_mount_unshadow

减少mount的遮挡计数。通常由GVolumeMonitor实现用于销毁mount的遮挡挂载时使用,更多请参考g_mount_is_shadowed()。调用者需要手动在mount上发出GMount::changed信号。

since: 2.20

信号

Gio.Mount::changed

当挂载已被修改时发出。

Gio.Mount::pre-unmount

此信号可能在GMount即将被卸载时发出。

自 2.22 以来

Gio.Mount::unmounted

此信号在GMount已卸载时发出。如果接收方持有对对象的引用,他们应释放它们以便对象可以被终止。

接口结构

struct GioMountIface {
  GTypeInterface g_iface;
  void (* changed) (
    GMount* mount
  );
  void (* unmounted) (
    GMount* mount
  );
  GFile* (* get_root) (
    GMount* mount
  );
  char* (* get_name) (
    GMount* mount
  );
  GIcon* (* get_icon) (
    GMount* mount
  );
  char* (* get_uuid) (
    GMount* mount
  );
  GVolume* (* get_volume) (
    GMount* mount
  );
  GDrive* (* get_drive) (
    GMount* mount
  );
  gboolean (* can_unmount) (
    GMount* mount
  );
  gboolean (* can_eject) (
    GMount* mount
  );
  void (* unmount) (
    GMount* mount,
    GMountUnmountFlags flags,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gboolean (* unmount_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  void (* eject) (
    GMount* mount,
    GMountUnmountFlags flags,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gboolean (* eject_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  void (* remount) (
    GMount* mount,
    GMountMountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gboolean (* remount_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  void (* guess_content_type) (
    GMount* mount,
    gboolean force_rescan,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gchar** (* guess_content_type_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  gchar** (* guess_content_type_sync) (
    GMount* mount,
    gboolean force_rescan,
    GCancellable* cancellable,
    GError** error
  );
  void (* pre_unmount) (
    GMount* mount
  );
  void (* unmount_with_operation) (
    GMount* mount,
    GMountUnmountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gboolean (* unmount_with_operation_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  void (* eject_with_operation) (
    GMount* mount,
    GMountUnmountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gboolean (* eject_with_operation_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  );
  GFile* (* get_default_location) (
    GMount* mount
  );
  const gchar* (* get_sort_key) (
    GMount* mount
  );
  GIcon* (* get_symbolic_icon) (
    GMount* mount
  );
  
}

实现挂载操作接口。

接口成员
g_iface
GTypeInterface
 

父接口。

changed
void (* changed) (
    GMount* mount
  )
 

当挂载的状态已更改时发出的更改信号。

unmounted
void (* unmounted) (
    GMount* mount
  )
 

GMount已卸载时发出的卸载信号。如果接收方持有对对象的引用,他们应释放它们以便对象可以被终止。

get_root
GFile* (* get_root) (
    GMount* mount
  )
 

获取GFileGMount的根目录。

get_name
char* (* get_name) (
    GMount* mount
  )
 

获取包含GMount名称的字符串。

get_icon
GIcon* (* get_icon) (
    GMount* mount
  )
 

获取GMountGIcon

get_uuid
char* (* get_uuid) (
    GMount* mount
  )
 

获取 GMountUUID。这个引用通常是基于挂载的文件系统 UUID 的,并应视为不可见字符串。如果没有可用的 UUID,则返回 NULL

get_volume
GVolume* (* get_volume) (
    GMount* mount
  )
 

获取挂载所在的 GVolume。如果 GMount 没有与 GVolume 关联,则返回 NULL

get_drive
GDrive* (* get_drive) (
    GMount* mount
  )
 

获取挂载卷所在 GDrive。如果 GMount 没有与 GDriveGVolume 关联,则返回 NULL。这是获取 GVolume 并使用它来获取 GDrive 的便捷方法。

can_unmount
gboolean (* can_unmount) (
    GMount* mount
  )
 

检查是否可以卸载 GMount

can_eject
gboolean (* can_eject) (
    GMount* mount
  )
 

检查是否可以弹出 GMount

unmount
void (* unmount) (
    GMount* mount,
    GMountUnmountFlags flags,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

开始卸载 GMount

unmount_finish
gboolean (* unmount_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

完成卸载操作。

eject
void (* eject) (
    GMount* mount,
    GMountUnmountFlags flags,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

开始弹出 GMount

eject_finish
gboolean (* eject_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

完成弹出操作。

remount
void (* remount) (
    GMount* mount,
    GMountMountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

开始重新挂载 GMount

remount_finish
gboolean (* remount_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

完成重新挂载操作。

guess_content_type
void (* guess_content_type) (
    GMount* mount,
    gboolean force_rescan,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

开始猜测 GMount 内容的类型。有关内容类型推断的更多信息,请参阅 g_mount_guess_content_type()。此操作从 2.18 版本开始。

guess_content_type_finish
gchar** (* guess_content_type_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

完成内容类型推断操作。从 2.18 版本开始。

guess_content_type_sync
gchar** (* guess_content_type_sync) (
    GMount* mount,
    gboolean force_rescan,
    GCancellable* cancellable,
    GError** error
  )
 

guess_content_type 的同步版本。从 2.18 版本开始。

pre_unmount
void (* pre_unmount) (
    GMount* mount
  )
 

GMount 即将发射 ::pre-unmount 信号时发出。如果接收者以某种方式通过在它上面保持打开文件来保持挂载打开,则应关闭该文件。

unmount_with_operation
void (* unmount_with_operation) (
    GMount* mount,
    GMountUnmountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

使用 GMountOperation 开始卸载 GMount。自 2.22 版本以来。

unmount_with_operation_finish
gboolean (* unmount_with_operation_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

使用 GMountOperation 完成卸载操作。自 2.22 版本以来。

eject_with_operation
void (* eject_with_operation) (
    GMount* mount,
    GMountUnmountFlags flags,
    GMountOperation* mount_operation,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
 

使用 GMountOperation 开始弹出 GMount。自 2.22 版本以来。

eject_with_operation_finish
gboolean (* eject_with_operation_finish) (
    GMount* mount,
    GAsyncResult* result,
    GError** error
  )
 

使用 GMountOperation 完成弹出操作。自 2.22 版本以来。

get_default_location
GFile* (* get_default_location) (
    GMount* mount
  )
 

获取表示可用于作为此挂载入口点的起始位置的 GFile。自 2.24 版本以来。

get_sort_key
const gchar* (* get_sort_key) (
    GMount* mount
  )
 

获取用于排序 GMount 实例的键或 NULL,如果没有这样的键。自 2.32 版本以来。

get_symbolic_icon
GIcon* (* get_symbolic_icon) (
    GMount* mount
  )
 

获取 GMount 的符号 GIcon。自 2.34 版本以来。

虚拟方法

Gio.Mount.can_eject

检查 mount 是否可以弹出。

Gio.Mount.can_unmount

检查 mount 是否可以卸载。

Gio.Mount.changed

当挂载的状态已更改时发出的更改信号。

Gio.Mount.eject

弹出挂载。这是一个异步操作,由调用 g_mount_eject_finish() 并带有在回调中返回的 mountGAsyncResult 数据来完成。

已弃用:2.22 

Gio.Mount.eject_finish

完成弹出挂载。如果操作期间发生任何错误,则 error 将设置为包含错误并返回 FALSE

已弃用:2.22 

Gio.Mount.eject_with_operation

弹出挂载。这是一个异步操作,由调用 g_mount_eject_with_operation_finish() 并带有在回调中返回的 mountGAsyncResult 数据来完成。

自 2.22 以来

Gio.Mount.eject_with_operation_finish

完成弹出挂载。如果操作期间发生任何错误,则 error 将设置为包含错误并返回 FALSE

自 2.22 以来

Gio.Mount.get_default_location

获取 mount 的默认位置。给定 mount 的默认位置是表示用户主要入口点的路径(例如,家目录或卷的根)。

Gio.Mount.get_drive

获取 mount 的驱动器。

Gio.Mount.get_icon

获取 mount 的图标。

Gio.Mount.get_name

获取 mount 的名称。

Gio.Mount.get_root

获取 mount 上的根目录。

Gio.Mount.get_sort_key

获取 mount 的排序键(如果有的话)。

自 2.32 以来

Gio.Mount.get_symbolic_icon

获取 mount 的符号图标。

自 2.34 以来

Gio.Mount.get_uuid

获取 mountUUID。该引用通常是针对挂载的文件系统 UUID,应被视为一个不定长字符串。如果没有可用的 UUID,则返回 NULL

Gio.Mount.get_volume

获取 mount 的卷。

Gio.Mount.guess_content_type

尝试猜测 mount 上存储的内容类型。返回一个或多个已知内容类型的文本标识符(通常以“x-content/”为前缀),例如 x-content/image-dcf 用于相机存储卡。有关 x-content 类型的更多信息,请参阅 shared-mime-info 规范。

自 2.18 以来

Gio.Mount.guess_content_type_finish

完成猜测mount的内容类型。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE。特别是,如果挂载不支持内容猜测,可能会得到G_IO_ERROR_NOT_SUPPORTED

自 2.18 以来

Gio.Mount.guess_content_type_sync

尝试猜测 mount 上存储的内容类型。返回一个或多个已知内容类型的文本标识符(通常以“x-content/”为前缀),例如 x-content/image-dcf 用于相机存储卡。有关 x-content 类型的更多信息,请参阅 shared-mime-info 规范。

自 2.18 以来

Gio.Mount.pre_unmount

GMount 即将发射 ::pre-unmount 信号时发出。如果接收者以某种方式通过在它上面保持打开文件来保持挂载打开,则应关闭该文件。

Gio.Mount.remount

重新挂载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResults数据的g_mount_remount_finish()来完成。

Gio.Mount.remount_finish

完成挂载的重新挂载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

Gio.Mount.unmount

卸载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResult数据的g_mount_unmount_finish()来完成。

已弃用:2.22 

Gio.Mount.unmount_finish

完成挂载的卸载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

已弃用:2.22 

Gio.Mount.unmount_with_operation

卸载挂载。这是一个异步操作,通过调用带有mountcallback返回的GAsyncResult数据的g_mount_unmount_with_operation_finish()来完成。

自 2.22 以来

Gio.Mount.unmount_with_operation_finish

完成挂载的卸载。如果在操作过程中发生任何错误,error将设置为包含错误,并返回FALSE

自 2.22 以来

Gio.Mount.unmounted

GMount已卸载时发出的卸载信号。如果接收方持有对对象的引用,他们应释放它们以便对象可以被终止。