File indexing completed on 2025-01-18 09:59:56
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #ifndef __G_FILE_OUTPUT_STREAM_H__
0024 #define __G_FILE_OUTPUT_STREAM_H__
0025
0026 #if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
0027 #error "Only <gio/gio.h> can be included directly."
0028 #endif
0029
0030 #include <gio/goutputstream.h>
0031
0032 G_BEGIN_DECLS
0033
0034 #define G_TYPE_FILE_OUTPUT_STREAM (g_file_output_stream_get_type ())
0035 #define G_FILE_OUTPUT_STREAM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_FILE_OUTPUT_STREAM, GFileOutputStream))
0036 #define G_FILE_OUTPUT_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_FILE_OUTPUT_STREAM, GFileOutputStreamClass))
0037 #define G_IS_FILE_OUTPUT_STREAM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_FILE_OUTPUT_STREAM))
0038 #define G_IS_FILE_OUTPUT_STREAM_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_FILE_OUTPUT_STREAM))
0039 #define G_FILE_OUTPUT_STREAM_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), G_TYPE_FILE_OUTPUT_STREAM, GFileOutputStreamClass))
0040
0041 typedef struct _GFileOutputStreamClass GFileOutputStreamClass;
0042 typedef struct _GFileOutputStreamPrivate GFileOutputStreamPrivate;
0043
0044 struct _GFileOutputStream
0045 {
0046 GOutputStream parent_instance;
0047
0048
0049 GFileOutputStreamPrivate *priv;
0050 };
0051
0052 struct _GFileOutputStreamClass
0053 {
0054 GOutputStreamClass parent_class;
0055
0056 goffset (* tell) (GFileOutputStream *stream);
0057 gboolean (* can_seek) (GFileOutputStream *stream);
0058 gboolean (* seek) (GFileOutputStream *stream,
0059 goffset offset,
0060 GSeekType type,
0061 GCancellable *cancellable,
0062 GError **error);
0063 gboolean (* can_truncate) (GFileOutputStream *stream);
0064 gboolean (* truncate_fn) (GFileOutputStream *stream,
0065 goffset size,
0066 GCancellable *cancellable,
0067 GError **error);
0068 GFileInfo * (* query_info) (GFileOutputStream *stream,
0069 const char *attributes,
0070 GCancellable *cancellable,
0071 GError **error);
0072 void (* query_info_async) (GFileOutputStream *stream,
0073 const char *attributes,
0074 int io_priority,
0075 GCancellable *cancellable,
0076 GAsyncReadyCallback callback,
0077 gpointer user_data);
0078 GFileInfo * (* query_info_finish) (GFileOutputStream *stream,
0079 GAsyncResult *result,
0080 GError **error);
0081 char * (* get_etag) (GFileOutputStream *stream);
0082
0083
0084 void (*_g_reserved1) (void);
0085 void (*_g_reserved2) (void);
0086 void (*_g_reserved3) (void);
0087 void (*_g_reserved4) (void);
0088 void (*_g_reserved5) (void);
0089 };
0090
0091 GIO_AVAILABLE_IN_ALL
0092 GType g_file_output_stream_get_type (void) G_GNUC_CONST;
0093
0094
0095 GIO_AVAILABLE_IN_ALL
0096 GFileInfo *g_file_output_stream_query_info (GFileOutputStream *stream,
0097 const char *attributes,
0098 GCancellable *cancellable,
0099 GError **error);
0100 GIO_AVAILABLE_IN_ALL
0101 void g_file_output_stream_query_info_async (GFileOutputStream *stream,
0102 const char *attributes,
0103 int io_priority,
0104 GCancellable *cancellable,
0105 GAsyncReadyCallback callback,
0106 gpointer user_data);
0107 GIO_AVAILABLE_IN_ALL
0108 GFileInfo *g_file_output_stream_query_info_finish (GFileOutputStream *stream,
0109 GAsyncResult *result,
0110 GError **error);
0111 GIO_AVAILABLE_IN_ALL
0112 char * g_file_output_stream_get_etag (GFileOutputStream *stream);
0113
0114 G_END_DECLS
0115
0116 #endif