X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fgfile.h;h=60a8d7028fdfea5b2e7382e21f9cb371348918f1;hb=9da85c7262325478e8730ae9f3e76bd0528a9a8c;hp=918f26a55ee6a75f4f70a01c52826e16e684ea18;hpb=d8ca6404229e5b64d2bf2e1a3660ad9fe7feefdd;p=platform%2Fupstream%2Fglib.git diff --git a/gio/gfile.h b/gio/gfile.h index 918f26a..60a8d70 100644 --- a/gio/gfile.h +++ b/gio/gfile.h @@ -13,20 +13,18 @@ * 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, write to the - * Free Software Foundation, Inc., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. + * Public License along with this library; if not, see . * * Author: Alexander Larsson */ +#ifndef __G_FILE_H__ +#define __G_FILE_H__ + #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION) #error "Only can be included directly." #endif -#ifndef __G_FILE_H__ -#define __G_FILE_H__ - #include G_BEGIN_DECLS @@ -54,7 +52,7 @@ typedef struct _GFileIface GFileIface; * @g_iface: The parent interface. * @dup: Duplicates a #GFile. * @hash: Creates a hash of a #GFile. - * @equal: Checks equality of two given #GFiles. + * @equal: Checks equality of two given #GFiles. * @is_native: Checks to see if a file is native to the system. * @has_uri_scheme: Checks to see if a #GFile has a given URI scheme. * @get_uri_scheme: Gets the URI scheme for a #GFile. @@ -82,8 +80,8 @@ typedef struct _GFileIface GFileIface; * @set_display_name: Sets the display name for a #GFile. * @set_display_name_async: Asynchronously sets a #GFile's display name. * @set_display_name_finish: Finishes asynchronously setting a #GFile's display name. - * @query_settable_attributes: Returns a list of #GFileAttributes that can be set. - * @_query_settable_attributes_async: Asynchronously gets a list of #GFileAttributes that can be set. + * @query_settable_attributes: Returns a list of #GFileAttributes that can be set. + * @_query_settable_attributes_async: Asynchronously gets a list of #GFileAttributes that can be set. * @_query_settable_attributes_finish: Finishes asynchronously querying settable attributes. * @query_writable_namespaces: Returns a list of #GFileAttribute namespaces that are writable. * @_query_writable_namespaces_async: Asynchronously gets a list of #GFileAttribute namespaces that are writable. @@ -105,14 +103,14 @@ typedef struct _GFileIface GFileIface; * @replace_async: Asynchronously replaces the contents of a file. * @replace_finish: Finishes asynchronously replacing a file. * @delete_file: Deletes a file. - * @_delete_file_async: Asynchronously deletes a file. - * @_delete_file_finish: Finishes an asynchronous delete. + * @delete_file_async: Asynchronously deletes a file. + * @delete_file_finish: Finishes an asynchronous delete. * @trash: Sends a #GFile to the Trash location. - * @_trash_async: Asynchronously sends a #GFile to the Trash location. - * @_trash_finish: Finishes an asynchronous file trashing operation. + * @trash_async: Asynchronously sends a #GFile to the Trash location. + * @trash_finish: Finishes an asynchronous file trashing operation. * @make_directory: Makes a directory. - * @_make_directory_async: Asynchronously makes a directory. - * @_make_directory_finish: Finishes making a directory asynchronously. + * @make_directory_async: Asynchronously makes a directory. + * @make_directory_finish: Finishes making a directory asynchronously. * @make_symbolic_link: Makes a symbolic link. * @_make_symbolic_link_async: Asynchronously makes a symbolic link * @_make_symbolic_link_finish: Finishes making a symbolic link asynchronously. @@ -353,20 +351,38 @@ struct _GFileIface gboolean (* delete_file) (GFile *file, GCancellable *cancellable, GError **error); - void (* _delete_file_async) (void); - void (* _delete_file_finish) (void); + void (* delete_file_async) (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + gboolean (* delete_file_finish) (GFile *file, + GAsyncResult *result, + GError **error); gboolean (* trash) (GFile *file, GCancellable *cancellable, GError **error); - void (* _trash_async) (void); - void (* _trash_finish) (void); + void (* trash_async) (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + gboolean (* trash_finish) (GFile *file, + GAsyncResult *result, + GError **error); gboolean (* make_directory) (GFile *file, GCancellable *cancellable, GError **error); - void (* _make_directory_async) (void); - void (* _make_directory_finish) (void); + void (* make_directory_async) (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + gboolean (* make_directory_finish) (GFile *file, + GAsyncResult *result, + GError **error); gboolean (* make_symbolic_link) (GFile *file, const char *symlink_value, @@ -543,83 +559,147 @@ struct _GFileIface gboolean (* poll_mountable_finish) (GFile *file, GAsyncResult *result, GError **error); + + gboolean (* measure_disk_usage) (GFile *file, + GFileMeasureFlags flags, + GCancellable *cancellable, + GFileMeasureProgressCallback progress_callback, + gpointer progress_data, + guint64 *disk_usage, + guint64 *num_dirs, + guint64 *num_files, + GError **error); + void (* measure_disk_usage_async) (GFile *file, + GFileMeasureFlags flags, + gint io_priority, + GCancellable *cancellable, + GFileMeasureProgressCallback progress_callback, + gpointer progress_data, + GAsyncReadyCallback callback, + gpointer user_data); + gboolean (* measure_disk_usage_finish) (GFile *file, + GAsyncResult *result, + guint64 *disk_usage, + guint64 *num_dirs, + guint64 *num_files, + GError **error); }; +GLIB_AVAILABLE_IN_ALL GType g_file_get_type (void) G_GNUC_CONST; +GLIB_AVAILABLE_IN_ALL GFile * g_file_new_for_path (const char *path); +GLIB_AVAILABLE_IN_ALL GFile * g_file_new_for_uri (const char *uri); +GLIB_AVAILABLE_IN_ALL GFile * g_file_new_for_commandline_arg (const char *arg); +GLIB_AVAILABLE_IN_2_36 +GFile * g_file_new_for_commandline_arg_and_cwd (const gchar *arg, + const gchar *cwd); +GLIB_AVAILABLE_IN_2_32 +GFile * g_file_new_tmp (const char *tmpl, + GFileIOStream **iostream, + GError **error); +GLIB_AVAILABLE_IN_ALL GFile * g_file_parse_name (const char *parse_name); +GLIB_AVAILABLE_IN_ALL GFile * g_file_dup (GFile *file); +GLIB_AVAILABLE_IN_ALL guint g_file_hash (gconstpointer file); +GLIB_AVAILABLE_IN_ALL gboolean g_file_equal (GFile *file1, GFile *file2); +GLIB_AVAILABLE_IN_ALL char * g_file_get_basename (GFile *file); +GLIB_AVAILABLE_IN_ALL char * g_file_get_path (GFile *file); +GLIB_AVAILABLE_IN_ALL char * g_file_get_uri (GFile *file); +GLIB_AVAILABLE_IN_ALL char * g_file_get_parse_name (GFile *file); +GLIB_AVAILABLE_IN_ALL GFile * g_file_get_parent (GFile *file); +GLIB_AVAILABLE_IN_ALL gboolean g_file_has_parent (GFile *file, GFile *parent); +GLIB_AVAILABLE_IN_ALL GFile * g_file_get_child (GFile *file, const char *name); +GLIB_AVAILABLE_IN_ALL GFile * g_file_get_child_for_display_name (GFile *file, const char *display_name, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_has_prefix (GFile *file, GFile *prefix); +GLIB_AVAILABLE_IN_ALL char * g_file_get_relative_path (GFile *parent, GFile *descendant); +GLIB_AVAILABLE_IN_ALL GFile * g_file_resolve_relative_path (GFile *file, const char *relative_path); +GLIB_AVAILABLE_IN_ALL gboolean g_file_is_native (GFile *file); +GLIB_AVAILABLE_IN_ALL gboolean g_file_has_uri_scheme (GFile *file, const char *uri_scheme); +GLIB_AVAILABLE_IN_ALL char * g_file_get_uri_scheme (GFile *file); +GLIB_AVAILABLE_IN_ALL GFileInputStream * g_file_read (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_read_async (GFile *file, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileInputStream * g_file_read_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_append_to (GFile *file, GFileCreateFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_create (GFile *file, GFileCreateFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_replace (GFile *file, const char *etag, gboolean make_backup, GFileCreateFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_append_to_async (GFile *file, GFileCreateFlags flags, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_append_to_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_create_async (GFile *file, GFileCreateFlags flags, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_create_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_replace_async (GFile *file, const char *etag, gboolean make_backup, @@ -628,39 +708,48 @@ void g_file_replace_async (GFile GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileOutputStream * g_file_replace_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_open_readwrite (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_open_readwrite_async (GFile *file, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_open_readwrite_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_create_readwrite (GFile *file, GFileCreateFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_create_readwrite_async (GFile *file, GFileCreateFlags flags, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_create_readwrite_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_replace_readwrite (GFile *file, const char *etag, gboolean make_backup, GFileCreateFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_replace_readwrite_async (GFile *file, const char *etag, gboolean make_backup, @@ -669,19 +758,24 @@ void g_file_replace_readwrite_async (GFile GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileIOStream * g_file_replace_readwrite_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_query_exists (GFile *file, GCancellable *cancellable); +GLIB_AVAILABLE_IN_ALL GFileType g_file_query_file_type (GFile *file, GFileQueryInfoFlags flags, GCancellable *cancellable); +GLIB_AVAILABLE_IN_ALL GFileInfo * g_file_query_info (GFile *file, const char *attributes, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_query_info_async (GFile *file, const char *attributes, GFileQueryInfoFlags flags, @@ -689,38 +783,47 @@ void g_file_query_info_async (GFile GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileInfo * g_file_query_info_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileInfo * g_file_query_filesystem_info (GFile *file, const char *attributes, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_query_filesystem_info_async (GFile *file, const char *attributes, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileInfo * g_file_query_filesystem_info_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GMount * g_file_find_enclosing_mount (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_find_enclosing_mount_async (GFile *file, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GMount * g_file_find_enclosing_mount_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFileEnumerator * g_file_enumerate_children (GFile *file, const char *attributes, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_enumerate_children_async (GFile *file, const char *attributes, GFileQueryInfoFlags flags, @@ -728,28 +831,61 @@ void g_file_enumerate_children_async (GFile GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFileEnumerator * g_file_enumerate_children_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL GFile * g_file_set_display_name (GFile *file, const char *display_name, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_set_display_name_async (GFile *file, const char *display_name, int io_priority, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFile * g_file_set_display_name_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_delete (GFile *file, GCancellable *cancellable, GError **error); + +GLIB_AVAILABLE_IN_2_34 +void g_file_delete_async (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +GLIB_AVAILABLE_IN_2_34 +gboolean g_file_delete_finish (GFile *file, + GAsyncResult *result, + GError **error); + +GLIB_AVAILABLE_IN_ALL gboolean g_file_trash (GFile *file, GCancellable *cancellable, GError **error); + +GLIB_AVAILABLE_IN_2_38 +void g_file_trash_async (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +GLIB_AVAILABLE_IN_2_38 +gboolean g_file_trash_finish (GFile *file, + GAsyncResult *result, + GError **error); + +GLIB_AVAILABLE_IN_ALL gboolean g_file_copy (GFile *source, GFile *destination, GFileCopyFlags flags, @@ -757,6 +893,7 @@ gboolean g_file_copy (GFile GFileProgressCallback progress_callback, gpointer progress_callback_data, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_copy_async (GFile *source, GFile *destination, GFileCopyFlags flags, @@ -766,9 +903,11 @@ void g_file_copy_async (GFile gpointer progress_callback_data, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_copy_finish (GFile *file, GAsyncResult *res, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_move (GFile *source, GFile *destination, GFileCopyFlags flags, @@ -776,22 +915,39 @@ gboolean g_file_move (GFile GFileProgressCallback progress_callback, gpointer progress_callback_data, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_make_directory (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_2_38 +void g_file_make_directory_async (GFile *file, + int io_priority, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +GLIB_AVAILABLE_IN_2_38 +gboolean g_file_make_directory_finish (GFile *file, + GAsyncResult *result, + GError **error); + +GLIB_AVAILABLE_IN_ALL gboolean g_file_make_directory_with_parents (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_make_symbolic_link (GFile *file, const char *symlink_value, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileAttributeInfoList *g_file_query_settable_attributes (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileAttributeInfoList *g_file_query_writable_namespaces (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute (GFile *file, const char *attribute, GFileAttributeType type, @@ -799,11 +955,13 @@ gboolean g_file_set_attribute (GFile GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attributes_from_info (GFile *file, GFileInfo *info, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_set_attributes_async (GFile *file, GFileInfo *info, GFileQueryInfoFlags flags, @@ -811,103 +969,121 @@ void g_file_set_attributes_async (GFile GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attributes_finish (GFile *file, GAsyncResult *result, GFileInfo **info, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_string (GFile *file, const char *attribute, const char *value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_byte_string (GFile *file, const char *attribute, const char *value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_uint32 (GFile *file, const char *attribute, guint32 value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_int32 (GFile *file, const char *attribute, gint32 value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_uint64 (GFile *file, const char *attribute, guint64 value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_set_attribute_int64 (GFile *file, const char *attribute, gint64 value, GFileQueryInfoFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_mount_enclosing_volume (GFile *location, GMountMountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_mount_enclosing_volume_finish (GFile *location, GAsyncResult *result, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_mount_mountable (GFile *file, GMountMountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL GFile * g_file_mount_mountable_finish (GFile *file, GAsyncResult *result, GError **error); -#ifndef G_DISABLE_DEPRECATED +GLIB_DEPRECATED_FOR(g_file_unmount_mountable_with_operation) void g_file_unmount_mountable (GFile *file, - GMountUnmountFlags flags, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); + GMountUnmountFlags flags, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +GLIB_DEPRECATED_FOR(g_file_unmount_mountable_with_operation_finish) gboolean g_file_unmount_mountable_finish (GFile *file, - GAsyncResult *result, - GError **error); -#endif + GAsyncResult *result, + GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_unmount_mountable_with_operation (GFile *file, GMountUnmountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_unmount_mountable_with_operation_finish (GFile *file, GAsyncResult *result, GError **error); -#ifndef G_DISABLE_DEPRECATED +GLIB_DEPRECATED_FOR(g_file_eject_mountable_with_operation) void g_file_eject_mountable (GFile *file, - GMountUnmountFlags flags, - GCancellable *cancellable, - GAsyncReadyCallback callback, - gpointer user_data); + GMountUnmountFlags flags, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); + +GLIB_DEPRECATED_FOR(g_file_eject_mountable_with_operation_finish) gboolean g_file_eject_mountable_finish (GFile *file, - GAsyncResult *result, - GError **error); -#endif + GAsyncResult *result, + GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_eject_mountable_with_operation (GFile *file, GMountUnmountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_eject_mountable_with_operation_finish (GFile *file, GAsyncResult *result, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_copy_attributes (GFile *source, GFile *destination, GFileCopyFlags flags, @@ -915,78 +1091,123 @@ gboolean g_file_copy_attributes (GFile GError **error); +GLIB_AVAILABLE_IN_ALL GFileMonitor* g_file_monitor_directory (GFile *file, GFileMonitorFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileMonitor* g_file_monitor_file (GFile *file, GFileMonitorFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL GFileMonitor* g_file_monitor (GFile *file, GFileMonitorFlags flags, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_2_38 +gboolean g_file_measure_disk_usage (GFile *file, + GFileMeasureFlags flags, + GCancellable *cancellable, + GFileMeasureProgressCallback progress_callback, + gpointer progress_data, + guint64 *disk_usage, + guint64 *num_dirs, + guint64 *num_files, + GError **error); + +GLIB_AVAILABLE_IN_2_38 +void g_file_measure_disk_usage_async (GFile *file, + GFileMeasureFlags flags, + gint io_priority, + GCancellable *cancellable, + GFileMeasureProgressCallback progress_callback, + gpointer progress_data, + GAsyncReadyCallback callback, + gpointer user_data); + +GLIB_AVAILABLE_IN_2_38 +gboolean g_file_measure_disk_usage_finish (GFile *file, + GAsyncResult *result, + guint64 *disk_usage, + guint64 *num_dirs, + guint64 *num_files, + GError **error); + +GLIB_AVAILABLE_IN_ALL void g_file_start_mountable (GFile *file, GDriveStartFlags flags, GMountOperation *start_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_start_mountable_finish (GFile *file, GAsyncResult *result, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_stop_mountable (GFile *file, GMountUnmountFlags flags, GMountOperation *mount_operation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_stop_mountable_finish (GFile *file, GAsyncResult *result, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_poll_mountable (GFile *file, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_poll_mountable_finish (GFile *file, GAsyncResult *result, GError **error); /* Utilities */ +GLIB_AVAILABLE_IN_ALL GAppInfo *g_file_query_default_handler (GFile *file, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_load_contents (GFile *file, GCancellable *cancellable, char **contents, gsize *length, char **etag_out, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_load_contents_async (GFile *file, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_load_contents_finish (GFile *file, GAsyncResult *res, char **contents, gsize *length, char **etag_out, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_load_partial_contents_async (GFile *file, GCancellable *cancellable, GFileReadMoreCallback read_more_callback, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_load_partial_contents_finish (GFile *file, GAsyncResult *res, char **contents, gsize *length, char **etag_out, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_replace_contents (GFile *file, const char *contents, gsize length, @@ -996,6 +1217,7 @@ gboolean g_file_replace_contents (GFile *file, char **new_etag, GCancellable *cancellable, GError **error); +GLIB_AVAILABLE_IN_ALL void g_file_replace_contents_async (GFile *file, const char *contents, gsize length, @@ -1005,11 +1227,22 @@ void g_file_replace_contents_async (GFile *file, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); +GLIB_AVAILABLE_IN_2_40 +void g_file_replace_contents_bytes_async (GFile *file, + GBytes *contents, + const char *etag, + gboolean make_backup, + GFileCreateFlags flags, + GCancellable *cancellable, + GAsyncReadyCallback callback, + gpointer user_data); +GLIB_AVAILABLE_IN_ALL gboolean g_file_replace_contents_finish (GFile *file, GAsyncResult *res, char **new_etag, GError **error); +GLIB_AVAILABLE_IN_ALL gboolean g_file_supports_thread_contexts (GFile *file); G_END_DECLS