IInMemoryDataStorage::GetPtr: различия между версиями
Перейти к навигации
Перейти к поиску
Строка 2: | Строка 2: | ||
{{function_paramlist begin}} | {{function_paramlist begin}} | ||
{{function_paramlist add|ppBuffer|В результате успешного выполнения функции получает адрес буфера памяти, управляемого накопителем.|paramdir=[out]}} | {{function_paramlist add|ppBuffer|В результате успешного выполнения функции получает адрес буфера памяти, управляемого накопителем.|paramdir=[out]}} | ||
{{function_paramlist add|pcbBuffer| | {{function_paramlist add|pcbBuffer|Опциональный указатель, который принимает байтовый размер буфера {{param|*ppBuffer}}. Клиенту разрешено адресовать и осуществлять чтение и запись в буфер <tt>[(uint8_t) *ppBuffer, (uint8_t) *ppBuffer + *pcbBuffer)</tt> при условии соблюдения им ограничений, налагаемых реализацией на совместный ввод-вывод, если он осуществляется клиентом. Выходное значение параметра {{param|pcbBuffer}} не является длиной фактически имеющихся данных в буфере, часть буфера может быть неинициализирована. Для получения размера данных в накопителе требуется использовать методы [[IContiguousDataStorage::GetByteSize|GetByteSize]] и [[IContiguousDataStorage::GetElementCount|GetElementCount]], наследуемые у интерфейса [[IContiguousDataStorage]].|paramdir=[out]}} | ||
{{function_paramlist end}} | {{function_paramlist end}} | ||
{{function_return_value|32-битовый беззнаковый целый код ошибки, который в случае успешного выполнения неотрицателен.}} | {{function_return_value|32-битовый беззнаковый целый код ошибки, который в случае успешного выполнения неотрицателен.}} | ||
{{function_end}} | {{function_end}} |
Текущая версия на 23:31, 16 августа 2019
return_code_t PLATFORM_NATIVE_CALLING_CONVENTION GetPtr(void** ppBuffer, std::size_t* pcbBuffer) noexcept;
Возвращает адрес управляемого накопителем буфера данных в памяти.
- Параметры
[out] ppBuffer В результате успешного выполнения функции получает адрес буфера памяти, управляемого накопителем. [out] pcbBuffer Опциональный указатель, который принимает байтовый размер буфера *ppBuffer. Клиенту разрешено адресовать и осуществлять чтение и запись в буфер [(uint8_t) *ppBuffer, (uint8_t) *ppBuffer + *pcbBuffer) при условии соблюдения им ограничений, налагаемых реализацией на совместный ввод-вывод, если он осуществляется клиентом. Выходное значение параметра pcbBuffer не является длиной фактически имеющихся данных в буфере, часть буфера может быть неинициализирована. Для получения размера данных в накопителе требуется использовать методы GetByteSize и GetElementCount, наследуемые у интерфейса IContiguousDataStorage. - Возвращаемое значение:
- 32-битовый беззнаковый целый код ошибки, который в случае успешного выполнения неотрицателен.