IOChannel
Object Hierarchy:
Description:
[ Compact ]
public class IOChannel
A data structure representing an IO Channel.
The fields should be considered private and should only be accessed with the following functions.
Content:
Creation methods:
Methods:
- public int unix_get_fd ()
Returns the file descriptor of the IOChannel
.
- public void init ()
Initializes a IOChannel struct.
- public IOStatus read_chars (char[] buf, out size_t bytes_read) throws ConvertError, IOChannelError
Replacement for g_io_channel_read
with the new API.
- public IOStatus read_unichar (out unichar thechar) throws ConvertError, IOChannelError
Reads a Unicode character from this.
- public IOStatus read_line (out string str_return, out size_t length, out size_t terminator_pos) throws ConvertError, IOChannelError
Reads a line, including the terminating character(s), from a
IOChannel into a newly-allocated string.
- public IOStatus read_line_string (StringBuilder buffer, out size_t terminator_pos) throws ConvertError, IOChannelError
Reads a line from a IOChannel, using a
StringBuilder as a buffer.
- public IOStatus read_to_end (out string str_return, out size_t length) throws ConvertError, IOChannelError
Reads all the remaining data from the file.
- public IOStatus write_chars (char[] buf, out size_t bytes_written) throws ConvertError, IOChannelError
Replacement for g_io_channel_write
with the new API.
- public IOStatus write_unichar (unichar thechar) throws ConvertError, IOChannelError
Writes a Unicode character to this.
- public IOStatus flush () throws IOChannelError
Flushes the write buffer for the GIOChannel.
- public IOStatus seek_position (int64 offset, SeekType type) throws IOChannelError
Replacement for g_io_channel_seek
with the new API.
- public IOStatus shutdown (bool flush) throws IOChannelError
Close an IO channel.
- public IOSource create_watch (IOCondition condition)
- public uint add_watch (IOCondition condition, IOFunc func)
Adds the IOChannel into the default main
loop context with the default priority.
- public uint add_watch_full (int priority, IOCondition condition, owned IOFunc func)
Adds the IOChannel into the default main
loop context with the given priority.
- public size_t get_buffer_size ()
Gets the buffer size.
- public void set_buffer_size (size_t size)
Sets the buffer size.
- public IOCondition get_buffer_condition ()
This function returns a
IOCondition depending on whether there is data to be read/space to write data in the internal buffers in the
IOChannel.
- public IOFlags get_flags ()
Gets the current flags for a IOChannel,
including read-only flags such as g_io_flag_is_readable.
- public IOStatus set_flags (IOFlags flags) throws IOChannelError
Sets the (writeable) flags in this
to (flags
& g_io_flag_set_mask).
- public unowned string get_line_term (out int length)
This returns the string that IOChannel uses
to determine where in the file a line break occurs.
- public void set_line_term (string line_term, int length)
This sets the string that IOChannel uses to
determine where in the file a line break occurs.
- public bool get_buffered ()
Returns whether this is buffered.
- public void set_buffered (bool buffered)
The buffering state can only be set if the channel's encoding is
null.
- public unowned string get_encoding ()
Gets the encoding for the input/output of the channel.
- public IOStatus set_encoding (string? encoding) throws IOChannelError
Sets the encoding for the input/output of the channel.
- public bool get_close_on_unref ()
Returns whether the file/socket/whatever associated with
this will be closed when this receives its final unref and is
destroyed.
- public void set_close_on_unref (bool do_close)
Setting this flag to true
for a channel you have already closed can cause problems.