BufferedInputStream

open class BufferedInputStream(pointer: <Error class: unknown class><<Error class: unknown class>>) : FilterInputStream, Seekable

Buffered input stream implements #GFilterInputStream and provides for buffered reads.

By default, #GBufferedInputStream's 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.

Skipped during bindings generation

  • parameter buffer: guint8

  • parameter count: count: Out parameter is not supported

Inheritors

Constructors

Link copied to clipboard
constructor(baseStream: InputStream)

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

constructor(baseStream: InputStream, size: <Error class: unknown class>)

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

constructor(pointer: <Error class: unknown class><<Error class: unknown class>>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
Link copied to clipboard
open var bufferSize: <Error class: unknown class>
Link copied to clipboard
Link copied to clipboard
val gioBufferedInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
val gioFilterInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
val gioInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gioSeekablePointer: <Error class: unknown class><<Error class: unknown class>>

Functions

Link copied to clipboard
open fun canSeek(): Boolean

Tests if the stream supports the #GSeekableIface.

Link copied to clipboard
open fun canTruncate(): Boolean

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

Link copied to clipboard
open fun clearPending()

Clears the pending flag on @stream.

Link copied to clipboard
open fun close(cancellable: Cancellable? = null): <Error class: unknown class><Boolean>

Closes the stream, releasing resources related to it.

Link copied to clipboard
open fun closeAsync(ioPriority: Int, cancellable: Cancellable? = null, callback: AsyncReadyCallback)

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.

Link copied to clipboard
open fun closeFinish(result: AsyncResult): <Error class: unknown class><Boolean>

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

Link copied to clipboard
open fun fill(count: Long, cancellable: Cancellable? = null): <Error class: unknown class><Long>

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

Link copied to clipboard
open fun fillAsync(count: Long, ioPriority: Int, cancellable: Cancellable? = null, callback: AsyncReadyCallback)

Reads data into @stream's buffer asynchronously, up to @count size.

Link copied to clipboard
open fun fillFinish(result: AsyncResult): <Error class: unknown class><Long>

Finishes an asynchronous read.

Link copied to clipboard
open fun getAvailable(): <Error class: unknown class>

Gets the size of the available data within the stream.

Link copied to clipboard

Gets the base stream for the filter stream.

Link copied to clipboard
open fun getBufferSize(): <Error class: unknown class>

Gets the size of the input buffer.

Link copied to clipboard

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

Link copied to clipboard
open fun hasPending(): Boolean

Checks if an input stream has pending actions.

Link copied to clipboard
open fun isClosed(): Boolean

Checks if an input stream is closed.

Link copied to clipboard
open fun readByte(cancellable: Cancellable? = null): <Error class: unknown class><Int>

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

Link copied to clipboard
open fun readBytes(count: <Error class: unknown class>, cancellable: Cancellable? = null): <Error class: unknown class><<Error class: unknown class>>

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.

Link copied to clipboard
open fun readBytesAsync(count: <Error class: unknown class>, ioPriority: Int, cancellable: Cancellable? = null, callback: AsyncReadyCallback)

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.

Link copied to clipboard
open fun readBytesFinish(result: AsyncResult): <Error class: unknown class><<Error class: unknown class>>

Finishes an asynchronous stream read-into-#GBytes operation.

Link copied to clipboard
open fun readFinish(result: AsyncResult): <Error class: unknown class><Long>

Finishes an asynchronous stream read operation.

Link copied to clipboard
open fun seek(offset: Long, type: <Error class: unknown class>, cancellable: Cancellable? = null): <Error class: unknown class><Boolean>

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

Link copied to clipboard
open fun setBufferSize(size: <Error class: unknown class>)

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.

Link copied to clipboard
open fun setCloseBaseStream(closeBase: Boolean)

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

Link copied to clipboard
open fun setPending(): <Error class: unknown class><Boolean>

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

Link copied to clipboard
open fun skip(count: <Error class: unknown class>, cancellable: Cancellable? = null): <Error class: unknown class><Long>

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

Link copied to clipboard
open fun skipAsync(count: <Error class: unknown class>, ioPriority: Int, cancellable: Cancellable? = null, callback: AsyncReadyCallback)

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.

Link copied to clipboard
open fun skipFinish(result: AsyncResult): <Error class: unknown class><Long>

Finishes a stream skip operation.

Link copied to clipboard
open fun tell(): Long

Tells the current position within the stream.

Link copied to clipboard
open fun truncate(offset: Long, cancellable: Cancellable? = null): <Error class: unknown class><Boolean>

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.