cleanup
[platform/upstream/glib.git] / gio / gdatainputstream.h
index 355752d..8304156 100644 (file)
@@ -1,5 +1,5 @@
 /* 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
@@ -13,9 +13,7 @@
  * 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 <http://www.gnu.org/licenses/>.
  *
  * Author: Alexander Larsson <alexl@redhat.com>
  */
 #ifndef __G_DATA_INPUT_STREAM_H__
 #define __G_DATA_INPUT_STREAM_H__
 
-#include <glib-object.h>
+#if !defined (__GIO_GIO_H_INSIDE__) && !defined (GIO_COMPILATION)
+#error "Only <gio/gio.h> can be included directly."
+#endif
+
 #include <gio/gbufferedinputstream.h>
 
 G_BEGIN_DECLS
@@ -37,12 +38,10 @@ G_BEGIN_DECLS
 
 /**
  * GDataInputStream:
- * @parent: a #GBufferedInputStream.
  *
- * An implementation of #GBufferedInputStream that allows for high-level 
+ * An implementation of #GBufferedInputStream that allows for high-level
  * data manipulation of arbitrary data (including binary operations).
  **/
-typedef struct _GDataInputStream         GDataInputStream;
 typedef struct _GDataInputStreamClass    GDataInputStreamClass;
 typedef struct _GDataInputStreamPrivate  GDataInputStreamPrivate;
 
@@ -56,7 +55,8 @@ struct _GDataInputStream
 
 struct _GDataInputStreamClass
 {
- GBufferedInputStreamClass parent_class;
+  GBufferedInputStreamClass parent_class;
+
   /*< private >*/
   /* Padding for future expansion */
   void (*_g_reserved1) (void);
@@ -66,77 +66,114 @@ struct _GDataInputStreamClass
   void (*_g_reserved5) (void);
 };
 
-/**
- * GDataStreamByteOrder:
- * @G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN: Selects Big Endian byte order. 
- * @G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN: Selects Little Endian byte order.
- * @G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN: Selects endianness based on host machine's architecture.
- *
- * #GDataStreamByteOrder is used to ensure proper endianness of streaming data sources
- * across various machine architectures.
- *
- **/
-typedef enum  {
-  G_DATA_STREAM_BYTE_ORDER_BIG_ENDIAN,
-  G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN,
-  G_DATA_STREAM_BYTE_ORDER_HOST_ENDIAN
-} GDataStreamByteOrder;
-
-/** 
- * GDataStreamNewlineType:
- * @G_DATA_STREAM_NEWLINE_TYPE_LF: Selects "LF" line endings, common on most modern UNIX platforms.
- * @G_DATA_STREAM_NEWLINE_TYPE_CR: Selects "CR" line endings.
- * @G_DATA_STREAM_NEWLINE_TYPE_CR_LF: Selects "CR, LF" line ending, common on Microsoft Windows.
- * @G_DATA_STREAM_NEWLINE_TYPE_ANY: Automatically try to handle any line ending type.
- *
- * #GDataStreamNewlineType is used when checking for or setting the line endings for a given file.
- **/
-typedef enum  {
-  G_DATA_STREAM_NEWLINE_TYPE_LF,
-  G_DATA_STREAM_NEWLINE_TYPE_CR,
-  G_DATA_STREAM_NEWLINE_TYPE_CR_LF,
-  G_DATA_STREAM_NEWLINE_TYPE_ANY
-} GDataStreamNewlineType;
+GLIB_AVAILABLE_IN_ALL
+GType                  g_data_input_stream_get_type             (void) G_GNUC_CONST;
+GLIB_AVAILABLE_IN_ALL
+GDataInputStream *     g_data_input_stream_new                  (GInputStream            *base_stream);
 
-GType          g_data_input_stream_get_type   (void) G_GNUC_CONST;
-GDataInputStream*  g_data_input_stream_new        (GInputStream *base_stream);
+GLIB_AVAILABLE_IN_ALL
+void                   g_data_input_stream_set_byte_order       (GDataInputStream        *stream,
+                                                                 GDataStreamByteOrder     order);
+GLIB_AVAILABLE_IN_ALL
+GDataStreamByteOrder   g_data_input_stream_get_byte_order       (GDataInputStream        *stream);
+GLIB_AVAILABLE_IN_ALL
+void                   g_data_input_stream_set_newline_type     (GDataInputStream        *stream,
+                                                                 GDataStreamNewlineType   type);
+GLIB_AVAILABLE_IN_ALL
+GDataStreamNewlineType g_data_input_stream_get_newline_type     (GDataInputStream        *stream);
+GLIB_AVAILABLE_IN_ALL
+guchar                 g_data_input_stream_read_byte            (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+gint16                 g_data_input_stream_read_int16           (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+guint16                g_data_input_stream_read_uint16          (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+gint32                 g_data_input_stream_read_int32           (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+guint32                g_data_input_stream_read_uint32          (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+gint64                 g_data_input_stream_read_int64           (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+guint64                g_data_input_stream_read_uint64          (GDataInputStream        *stream,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_line            (GDataInputStream        *stream,
+                                                                 gsize                   *length,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_2_30
+char *                 g_data_input_stream_read_line_utf8       (GDataInputStream        *stream,
+                                                                gsize                   *length,
+                                                                GCancellable            *cancellable,
+                                                                GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+void                   g_data_input_stream_read_line_async      (GDataInputStream        *stream,
+                                                                 gint                     io_priority,
+                                                                 GCancellable            *cancellable,
+                                                                 GAsyncReadyCallback      callback,
+                                                                 gpointer                 user_data);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_line_finish     (GDataInputStream        *stream,
+                                                                 GAsyncResult            *result,
+                                                                 gsize                   *length,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_2_30
+char *                 g_data_input_stream_read_line_finish_utf8(GDataInputStream        *stream,
+                                                                 GAsyncResult            *result,
+                                                                 gsize                   *length,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_until           (GDataInputStream        *stream,
+                                                                 const gchar             *stop_chars,
+                                                                 gsize                   *length,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+void                   g_data_input_stream_read_until_async     (GDataInputStream        *stream,
+                                                                 const gchar             *stop_chars,
+                                                                 gint                     io_priority,
+                                                                 GCancellable            *cancellable,
+                                                                 GAsyncReadyCallback      callback,
+                                                                 gpointer                 user_data);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_until_finish    (GDataInputStream        *stream,
+                                                                 GAsyncResult            *result,
+                                                                 gsize                   *length,
+                                                                 GError                 **error);
 
-void                   g_data_input_stream_set_byte_order   (GDataInputStream        *stream,
-                                                            GDataStreamByteOrder     order);
-GDataStreamByteOrder   g_data_input_stream_get_byte_order   (GDataInputStream        *stream);
-void                   g_data_input_stream_set_newline_type (GDataInputStream        *stream,
-                                                            GDataStreamNewlineType   type);
-GDataStreamNewlineType g_data_input_stream_get_newline_type (GDataInputStream        *stream);
-guchar                 g_data_input_stream_read_byte        (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-gint16                 g_data_input_stream_read_int16       (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-guint16                g_data_input_stream_read_uint16      (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-gint32                 g_data_input_stream_read_int32       (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-guint32                g_data_input_stream_read_uint32      (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-gint64                 g_data_input_stream_read_int64       (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-guint64                g_data_input_stream_read_uint64      (GDataInputStream        *stream,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-char *                 g_data_input_stream_read_line        (GDataInputStream        *stream,
-                                                            gsize                   *length,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
-char *                 g_data_input_stream_read_until       (GDataInputStream        *stream,
-                                                            const gchar             *stop_chars,
-                                                            gsize                   *length,
-                                                            GCancellable            *cancellable,
-                                                            GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_upto            (GDataInputStream        *stream,
+                                                                 const gchar             *stop_chars,
+                                                                 gssize                   stop_chars_len,
+                                                                 gsize                   *length,
+                                                                 GCancellable            *cancellable,
+                                                                 GError                 **error);
+GLIB_AVAILABLE_IN_ALL
+void                   g_data_input_stream_read_upto_async      (GDataInputStream        *stream,
+                                                                 const gchar             *stop_chars,
+                                                                 gssize                   stop_chars_len,
+                                                                 gint                     io_priority,
+                                                                 GCancellable            *cancellable,
+                                                                 GAsyncReadyCallback      callback,
+                                                                 gpointer                 user_data);
+GLIB_AVAILABLE_IN_ALL
+char *                 g_data_input_stream_read_upto_finish     (GDataInputStream        *stream,
+                                                                 GAsyncResult            *result,
+                                                                 gsize                   *length,
+                                                                 GError                 **error);
 
 G_END_DECLS