IInputStream::Read

Материал из CAMaaS preliminary wiki
Версия от 18:24, 25 августа 2019; Андрей Чусов (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску
return_code_t PLATFORM_NATIVE_CALLING_CONVENTION Read( void* pElement) noexcept;

Считывает из потока один элемент.

Параметры
[out]pElementВыходной указатель на один элемент, приведенный к общему виду. Предполагается осведомленность клиента о типе элемента - это либо скалярный тип, либо интерфейс. Если элементом является скалярный тип, метод принимает указатель на неинициализированное значение. Если элементом является интерфейс, то в качестве параметра задается указатель, значению которого методом присваивается адрес реализации интерфейса, которую нужно закрывать с помощью ее метода Release.
Возвращаемое значение:
32-битовый беззнаковый целый код ошибки, который в случае успешного выполнения неотрицателен. Если элемент успешно считан возвращается CHSVERROR_SUCCESS (0x20000000). Если элемент считать не удалось по причине отсутствия в потоке элементов, возвращается CHSVERROR_SUCCESS_FALSE (0x20000001). Также реализация может определять дополнительные коды успешного завершения, при которых данные будут считаны не полностью. В случае, если возвращается код успешного завершения операции, отличный от CHSVERROR_SUCCESS (0x20000000), результат последующих попыток считывания из потока на уровне абстракции IInputStream не определен.