Class
GioInputStream
Description [src]
abstract class Gio.InputStream : GObject.Object
{
/* No available fields */
}
GInputStream
is a base class for implementing streaming input.
It has functions to read from a stream (g_input_stream_read()
),
to close a stream (g_input_stream_close()
) and to skip some content
(g_input_stream_skip()
).
To copy the content of an input stream to an output stream without
manually handling the reads and writes, use g_output_stream_splice()
.
See the documentation for GIOStream
for details of thread safety
of streaming APIs.
All of these functions have async variants too.
Instance methods
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_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
.
since: 2.44
g_input_stream_read_all_finish
Finishes an asynchronous stream read operation started with
g_input_stream_read_all_async()
.
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.
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.
since: 2.34
g_input_stream_read_bytes_finish
Finishes an asynchronous stream read-into-GBytes
operation.
since: 2.34
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_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.
Signals
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.
Class structure
struct GioInputStreamClass {
GObjectClass parent_class;
gssize (* read_fn) (
GInputStream* stream,
void* buffer,
gsize count,
GCancellable* cancellable,
GError** error
);
gssize (* skip) (
GInputStream* stream,
gsize count,
GCancellable* cancellable,
GError** error
);
gboolean (* close_fn) (
GInputStream* stream,
GCancellable* cancellable,
GError** error
);
void (* read_async) (
GInputStream* stream,
void* buffer,
gsize count,
int io_priority,
GCancellable* cancellable,
GAsyncReadyCallback callback,
gpointer user_data
);
gssize (* read_finish) (
GInputStream* stream,
GAsyncResult* result,
GError** error
);
void (* skip_async) (
GInputStream* stream,
gsize count,
int io_priority,
GCancellable* cancellable,
GAsyncReadyCallback callback,
gpointer user_data
);
gssize (* skip_finish) (
GInputStream* stream,
GAsyncResult* result,
GError** error
);
void (* close_async) (
GInputStream* stream,
int io_priority,
GCancellable* cancellable,
GAsyncReadyCallback callback,
gpointer user_data
);
gboolean (* close_finish) (
GInputStream* 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
);
}
No description available.
Class members
parent_class: GObjectClass
No description available.
read_fn: gssize (* read_fn) ( GInputStream* stream, void* buffer, gsize count, GCancellable* cancellable, GError** error )
No description available.
skip: gssize (* skip) ( GInputStream* stream, gsize count, GCancellable* cancellable, GError** error )
No description available.
close_fn: gboolean (* close_fn) ( GInputStream* stream, GCancellable* cancellable, GError** error )
No description available.
read_async: void (* read_async) ( GInputStream* stream, void* buffer, gsize count, int io_priority, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )
No description available.
read_finish: gssize (* read_finish) ( GInputStream* stream, GAsyncResult* result, GError** error )
No description available.
skip_async: void (* skip_async) ( GInputStream* stream, gsize count, int io_priority, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )
No description available.
skip_finish: gssize (* skip_finish) ( GInputStream* stream, GAsyncResult* result, GError** error )
No description available.
close_async: void (* close_async) ( GInputStream* stream, int io_priority, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )
No description available.
close_finish: gboolean (* close_finish) ( GInputStream* 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.InputStreamClass.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.
Gio.InputStreamClass.close_finish
Finishes closing a stream asynchronously, started from g_input_stream_close_async().
Gio.InputStreamClass.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.
Gio.InputStreamClass.skip
Tries to skip count
bytes from the stream. Will block during the operation.
Gio.InputStreamClass.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.