|  |  |  | GIO Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | ||||
#include <gio/gio.h>
                    GBufferedOutputStream;
GOutputStream *     g_buffered_output_stream_new        (GOutputStream *base_stream);
GOutputStream *     g_buffered_output_stream_new_sized  (GOutputStream *base_stream,
                                                         gsize size);
gsize               g_buffered_output_stream_get_buffer_size
                                                        (GBufferedOutputStream *stream);
void                g_buffered_output_stream_set_buffer_size
                                                        (GBufferedOutputStream *stream,
                                                         gsize size);
gboolean            g_buffered_output_stream_get_auto_grow
                                                        (GBufferedOutputStream *stream);
void                g_buffered_output_stream_set_auto_grow
                                                        (GBufferedOutputStream *stream,
                                                         gboolean auto_grow);
Buffered output stream implements GFilterOutputStream and provides for buffered writes.
By default, GBufferedOutputStream's buffer size is set at 4 kilobytes.
To create a buffered output stream, use g_buffered_output_stream_new(), 
or g_buffered_output_stream_new_sized() to specify the buffer's size 
at construction.
To get the size of a buffer within a buffered input stream, use 
g_buffered_output_stream_get_buffer_size(). To change the size of a 
buffered output stream's buffer, use 
g_buffered_output_stream_set_buffer_size(). Note that the buffer's 
size cannot be reduced below the size of the data within the buffer.
typedef struct _GBufferedOutputStream GBufferedOutputStream;
An implementation of GFilterOutputStream with a sized buffer.
GOutputStream *     g_buffered_output_stream_new        (GOutputStream *base_stream);
Creates a new buffered output stream for a base stream.
| 
 | a GOutputStream. | 
| Returns : | a GOutputStream for the given base_stream. | 
GOutputStream * g_buffered_output_stream_new_sized (GOutputStream *base_stream,gsize size);
Creates a new buffered output stream with a given buffer size.
| 
 | a GOutputStream. | 
| 
 | a gsize. | 
| Returns : | a GOutputStream with an internal buffer set to size. | 
gsize               g_buffered_output_stream_get_buffer_size
                                                        (GBufferedOutputStream *stream);
Gets the size of the buffer in the stream.
| 
 | a GBufferedOutputStream. | 
| Returns : | the current size of the buffer. | 
void g_buffered_output_stream_set_buffer_size (GBufferedOutputStream *stream,gsize size);
Sets the size of the internal buffer to size.
| 
 | a GBufferedOutputStream. | 
| 
 | a gsize. | 
gboolean            g_buffered_output_stream_get_auto_grow
                                                        (GBufferedOutputStream *stream);
Checks if the buffer automatically grows as data is added.
| 
 | a GBufferedOutputStream. | 
| Returns : | TRUEif thestream's buffer automatically grows,FALSEotherwise. | 
void g_buffered_output_stream_set_auto_grow (GBufferedOutputStream *stream,gboolean auto_grow);
Sets whether or not the stream's buffer should automatically grow.
If auto_grow is true, then each write will just make the buffer
larger, and you must manually flush the buffer to actually write out
the data to the underlying stream.
| 
 | a GBufferedOutputStream. | 
| 
 | a gboolean. |