Class

GioBufferedInputStream

Description [src]

class Gio.BufferedInputStream : Gio.FilterInputStream {
  parent_instance: GFilterInputStream
}

Buffered input stream implements GFilterInputStream and provides for buffered reads.

By default, GBufferedInputStreams buffer size is set at 4 kilobytes.

To create a buffered input stream, use g_buffered_input_stream_new(), or g_buffered_input_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_input_stream_get_buffer_size(). To change the size of a buffered input stream’s buffer, use g_buffered_input_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 GBufferedInputStream implements_0 GSeekable this--implements_0 ancestor_0 GFilterInputStream ancestor_0--this ancestor_1 GInputStream ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

Implements

Constructors

g_buffered_input_stream_new

Creates a new GInputStream from the given base_stream, with a buffer set to the default size (4 kilobytes).

g_buffered_input_stream_new_sized

Creates a new GBufferedInputStream from the given base_stream, with a buffer set to size.

Instance methods

g_buffered_input_stream_fill

Tries to read count bytes from the stream into the buffer. Will block during this read.

g_buffered_input_stream_fill_async

Reads data into streams buffer asynchronously, up to count size. io_priority can be used to prioritize reads. For the synchronous version of this function, see g_buffered_input_stream_fill().

g_buffered_input_stream_fill_finish

Finishes an asynchronous read.

g_buffered_input_stream_get_available

Gets the size of the available data within the stream.

g_buffered_input_stream_get_buffer_size

Gets the size of the input buffer.

g_buffered_input_stream_peek

Peeks in the buffer, copying data of size count into buffer, offset offset bytes.

g_buffered_input_stream_peek_buffer

Returns the buffer with the currently available bytes. The returned buffer must not be modified and will become invalid when reading from the stream or filling the buffer.

g_buffered_input_stream_read_byte

Tries to read a single byte from the stream or the buffer. Will block during this read.

g_buffered_input_stream_set_buffer_size

Sets the size of the internal buffer of stream to size, or to the size of the contents of the buffer. The buffer can never be resized smaller than its current contents.

Methods inherited from GFilterInputStream (3)
g_filter_input_stream_get_base_stream

Gets the base stream for the filter stream.

g_filter_input_stream_get_close_base_stream

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

g_filter_input_stream_set_close_base_stream

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

Methods inherited from GInputStream (19)
g_input_stream_clear_pending

Clears the pending flag on stream.

g_input_stream_close

Closes the stream, releasing resources related to it.

g_input_stream_close_async

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

g_input_stream_close_finish

Finishes closing a stream asynchronously, started from g_input_stream_close_async().

g_input_stream_has_pending

Checks if an input stream has pending actions.

g_input_stream_is_closed

Checks if an input stream is closed.

g_input_stream_read

Tries to read count bytes from the stream into the buffer starting at buffer. Will block during this read.

g_input_stream_read_all

Tries to read count bytes from the stream into the buffer starting at buffer. Will block during this read.

g_input_stream_read_all_async

Request an asynchronous read of count bytes from the stream into the buffer starting at buffer.

Available since: 2.44

g_input_stream_read_all_finish

Finishes an asynchronous stream read operation started with g_input_stream_read_all_async().

Available since: 2.44

g_input_stream_read_async

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

g_input_stream_read_bytes

Like g_input_stream_read(), this tries to read count bytes from the stream in a blocking fashion. However, rather than reading into a user-supplied buffer, this will create a new GBytes containing the data that was read. This may be easier to use from language bindings.

Available since: 2.34

g_input_stream_read_bytes_async

Request an asynchronous read of count bytes from the stream into a new GBytes. When the operation is finished callback will be called. You can then call g_input_stream_read_bytes_finish() to get the result of the operation.

Available since: 2.34

g_input_stream_read_bytes_finish

Finishes an asynchronous stream read-into-GBytes operation.

Available since: 2.34

g_input_stream_read_finish

Finishes an asynchronous stream read operation.

g_input_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_input_stream_skip

Tries to skip count bytes from the stream. Will block during the operation.

g_input_stream_skip_async

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

g_input_stream_skip_finish

Finishes a stream skip operation.

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.BufferedInputStream:buffer-size
No description available.
Properties inherited from GFilterInputStream (2)
Gio.FilterInputStream:base-stream
No description available.
Gio.FilterInputStream:close-base-stream
No description available.

Signals

Signals inherited from GObject (1)

Class structure

struct GioBufferedInputStreamClass {
  GFilterInputStreamClass parent_class;
  gssize (* fill) (
    GBufferedInputStream* stream,
    gssize count,
    GCancellable* cancellable,
    GError** error
  );
  void (* fill_async) (
    GBufferedInputStream* stream,
    gssize count,
    int io_priority,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  );
  gssize (* fill_finish) (
    GBufferedInputStream* stream,
    GAsyncResult* result,
    GError** error
  );
  void (* _g_reserved1) (
void
  );
  void (* _g_reserved2) (
void
  );
  void (* _g_reserved3) (
void
  );
  void (* _g_reserved4) (
void
  );
  void (* _g_reserved5) (
void
  );
  
}
Class members
parent_class
GFilterInputStreamClass
  No description available.
fill
gssize (* fill) (
    GBufferedInputStream* stream,
    gssize count,
    GCancellable* cancellable,
    GError** error
  )
  No description available.
fill_async
void (* fill_async) (
    GBufferedInputStream* stream,
    gssize count,
    int io_priority,
    GCancellable* cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data
  )
  No description available.
fill_finish
gssize (* fill_finish) (
    GBufferedInputStream* stream,
    GAsyncResult* result,
    GError** error
  )
  No description available.
_g_reserved1
void (* _g_reserved1) (
void
  )
  No description available.
_g_reserved2
void (* _g_reserved2) (
void
  )
  No description available.
_g_reserved3
void (* _g_reserved3) (
void
  )
  No description available.
_g_reserved4
void (* _g_reserved4) (
void
  )
  No description available.
_g_reserved5
void (* _g_reserved5) (
void
  )
  No description available.

Virtual methods

Gio.BufferedInputStreamClass.fill

Tries to read count bytes from the stream into the buffer. Will block during this read.

Gio.BufferedInputStreamClass.fill_async

Reads data into streams buffer asynchronously, up to count size. io_priority can be used to prioritize reads. For the synchronous version of this function, see g_buffered_input_stream_fill().

Gio.BufferedInputStreamClass.fill_finish

Finishes an asynchronous read.