Class

GioBufferedOutputStream

Description [src]

class Gio.BufferedOutputStream : Gio.FilterOutputStream {
  parent_instance: GFilterOutputStream,
  priv: GBufferedOutputStreamPrivate*
}

Buffered output stream implements GFilterOutputStream and provides for buffered writes.

By default, GBufferedOutputStreams 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.

Hierarchy

hierarchy this GBufferedOutputStream implements_0 GSeekable this--implements_0 ancestor_0 GFilterOutputStream ancestor_0--this ancestor_1 GOutputStream ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

Implements

Constructors

g_buffered_output_stream_new

Creates a new buffered output stream for a base stream.

g_buffered_output_stream_new_sized

Creates a new buffered output stream with a given buffer size.

Instance methods

g_buffered_output_stream_get_auto_grow

Checks if the buffer automatically grows as data is added.

g_buffered_output_stream_get_buffer_size

Gets the size of the buffer in the stream.

g_buffered_output_stream_set_auto_grow

Sets whether or not the streams 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.

g_buffered_output_stream_set_buffer_size

Sets the size of the internal buffer to size.

Methods inherited from GFilterOutputStream (3)
g_filter_output_stream_get_base_stream

Gets the base stream for the filter stream.

g_filter_output_stream_get_close_base_stream

Returns whether the base stream will be closed when stream is closed.

g_filter_output_stream_set_close_base_stream

Sets whether the base stream will be closed when stream is closed.

Methods inherited from GOutputStream (31)
g_output_stream_clear_pending

Clears the pending flag on stream.

g_output_stream_close

Closes the stream, releasing resources related to it.

g_output_stream_close_async

Requests an asynchronous close of the stream, releasing resources related to it. When the operation is finished callback will be called. You can then call g_output_stream_close_finish() to get the result of the operation.

g_output_stream_close_finish

Closes an output stream.

g_output_stream_flush

Forces a write of all user-space buffered data for the given stream. Will block during the operation. Closing the stream will implicitly cause a flush.

g_output_stream_flush_async

Forces an asynchronous write of all user-space buffered data for the given stream. For behaviour details see g_output_stream_flush().

g_output_stream_flush_finish

Finishes flushing an output stream.

g_output_stream_has_pending

Checks if an output stream has pending actions.

g_output_stream_is_closed

Checks if an output stream has already been closed.

g_output_stream_is_closing

Checks if an output stream is being closed. This can be used inside e.g. a flush implementation to see if the flush (or other i/o operation) is called from within the closing operation.

Available since: 2.24

g_output_stream_printf

This is a utility function around g_output_stream_write_all(). It uses g_strdup_vprintf() to turn format and @… into a string that is then written to stream.

Available since: 2.40

g_output_stream_set_pending

Sets stream to have actions pending. If the pending flag is already set or stream is closed, it will return FALSE and set error.

g_output_stream_splice

Splices an input stream into an output stream.

g_output_stream_splice_async

Splices a stream asynchronously. When the operation is finished callback will be called. You can then call g_output_stream_splice_finish() to get the result of the operation.

g_output_stream_splice_finish

Finishes an asynchronous stream splice operation.

g_output_stream_vprintf

This is a utility function around g_output_stream_write_all(). It uses g_strdup_vprintf() to turn format and args into a string that is then written to stream.

Available since: 2.40

g_output_stream_write

Tries to write count bytes from buffer into the stream. Will block during the operation.

g_output_stream_write_all

Tries to write count bytes from buffer into the stream. Will block during the operation.

g_output_stream_write_all_async

Request an asynchronous write of count bytes from buffer into the stream. When the operation is finished callback will be called. You can then call g_output_stream_write_all_finish() to get the result of the operation.

Available since: 2.44

g_output_stream_write_all_finish

Finishes an asynchronous stream write operation started with g_output_stream_write_all_async().

Available since: 2.44

g_output_stream_write_async

Request an asynchronous write of count bytes from buffer into the stream. When the operation is finished callback will be called. You can then call g_output_stream_write_finish() to get the result of the operation.

g_output_stream_write_bytes

A wrapper function for g_output_stream_write() which takes a GBytes as input. This can be more convenient for use by language bindings or in other cases where the refcounted nature of GBytes is helpful over a bare pointer interface.

g_output_stream_write_bytes_async

This function is similar to g_output_stream_write_async(), but takes a GBytes as input. Due to the refcounted nature of GBytes, this allows the stream to avoid taking a copy of the data.

Methods inherited from GObject (43)
Methods inherited from GSeekable (5)
g_seekable_can_seek

Tests if the stream supports the GSeekableIface.

g_seekable_can_truncate

Tests if the length of the stream can be adjusted with g_seekable_truncate().

g_seekable_seek

Seeks in the stream by the given offset, modified by type.

g_seekable_tell

Tells the current position within the stream.

g_seekable_truncate

Sets the length of the stream to offset. If the stream was previously larger than offset, the extra data is discarded. If the stream was previously shorter than offset, it is extended with NUL (‘\0’) bytes.

Properties

Gio.BufferedOutputStream:auto-grow
No description available.
Gio.BufferedOutputStream:buffer-size
No description available.
Properties inherited from GFilterOutputStream (2)
Gio.FilterOutputStream:base-stream
No description available.
Gio.FilterOutputStream:close-base-stream
No description available.

Signals

Signals inherited from GObject (1)

Class structure

struct GioBufferedOutputStreamClass {
  GFilterOutputStreamClass parent_class;
  void (* _g_reserved1) (
void
  );
  void (* _g_reserved2) (
void
  );
  
}
Class members
parent_class
GFilterOutputStreamClass
  No description available.
_g_reserved1
void (* _g_reserved1) (
void
  )
  No description available.
_g_reserved2
void (* _g_reserved2) (
void
  )
  No description available.