io_open()

Инициализирует поток ввода/вывода

Прототип:

#include <img.h>
io_stream_t * io_open( io_open_f *open_f,
io_mode_t mode,
... );

Аргументы:

open_f
Указатель на функцию, создающую поток. Библиотека предоставляет две функции IO_FD (для чтения/записи на основе файловых дескрипторов) and IO_MEM (для чтения/записи на основе буфера памяти). Представлены ниже.
mode
Режим открытия: IO_READ или IO_WRITE.
...
Дополнительные параметры в зависимости от указанного open_f.

Библиотека:

img

Описание:

Функция инициализирует входной поток. Поток может быть основан на файловых дескрипторах или на буфере памяти, в зависимости от указанного open_f:

IO_FD
Потоковая передача с использованием буфера на основе UNIX-совместимых файловых дескрипторов. Требуется дополнительный параметр: int - определяет (ранее открытый файловый дескриптор), готовый для чтения/записи.
IO_MEM
Потоковая передача из буфера памяти. Обязательны дополнительные параметры (по порядку):
  1. unsigned - указывает размер буфера памяти. Он должен быть ненулевым.
  2. указатель void* на адрес буфера.

По завершению работы с потоком необходимо вызвать io_close() для его осовобождения.

Возвращаемые значения:

Указатель на объект потока или NULL в случае ошибки (см. список errno).

Коды ошибок:

ENOMEM
Недостаточно памяти для размещения структур.
EINVAL
Неверное значение open_f или режим.
ENOTSUP
Режим не поддерживается для потока.

Классификация:

Графическая подсистема ЗОСРВ «Нейтрино», Библиотека Image

Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Тематические ссылки:

io_close()




Предыдущий раздел: Image API