/* 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
* 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: Christian Kellner <gicmo@gnome.org>
+ * Author: Christian Kellner <gicmo@gnome.org>
*/
#ifndef __G_FILTER_INPUT_STREAM_H__
#define __G_FILTER_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/ginputstream.h>
G_BEGIN_DECLS
/**
* GFilterInputStream:
- *
- * Filtered input streams. Implements #GInputStream.
+ *
+ * A base class for all input streams that work on an underlying stream.
**/
-typedef struct _GFilterInputStream GFilterInputStream;
typedef struct _GFilterInputStreamClass GFilterInputStreamClass;
-typedef struct _GFilterInputStreamPrivate GFilterInputStreamPrivate;
struct _GFilterInputStream
{
- GInputStream parent;
+ GInputStream parent_instance;
/*<protected >*/
GInputStream *base_stream;
{
GInputStreamClass parent_class;
- /*< private >*/
+ /*< private >*/
/* Padding for future expansion */
void (*_g_reserved1) (void);
void (*_g_reserved2) (void);
};
-GType g_filter_input_stream_get_type (void) G_GNUC_CONST;
-GInputStream *g_filter_input_stream_get_base_stream (GFilterInputStream *stream);
+GLIB_AVAILABLE_IN_ALL
+GType g_filter_input_stream_get_type (void) G_GNUC_CONST;
+GLIB_AVAILABLE_IN_ALL
+GInputStream * g_filter_input_stream_get_base_stream (GFilterInputStream *stream);
+GLIB_AVAILABLE_IN_ALL
+gboolean g_filter_input_stream_get_close_base_stream (GFilterInputStream *stream);
+GLIB_AVAILABLE_IN_ALL
+void g_filter_input_stream_set_close_base_stream (GFilterInputStream *stream,
+ gboolean close_base);
+
G_END_DECLS
#endif /* __G_FILTER_INPUT_STREAM_H__ */