MemBufInputByteStreamRef::get buffer: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
(Новая страница: «{{function_begin | Chusov::Memory::iterator_range<Chusov::Memory::raw_pointer_iterator<const std::uint8_t*>> GetBuffer() const; |{{MemBufInputByteStreamRef::GetBu…»)
 
Строка 1: Строка 1:
{{function_begin | Chusov::Memory::iterator_range<Chusov::Memory::raw_pointer_iterator<const std::uint8_t*>> GetBuffer() const; |{{MemBufInputByteStreamRef::GetBuffer brief}}}}
{{function_begin | Chusov::Memory::iterator_range<Chusov::Memory::raw_pointer_iterator<const std::uint8_t*>> GetBuffer() const; |{{MemBufInputByteStreamRef::GetBuffer brief}}}}
{{function_return_value|Объект типа [https://www.chusov.org/doxygen/struct_chusov_1_1_memory_1_1iterator__range.html iterator_range], задающий буфер. Гарантируется, что для объекта <tt>rng</tt>, возвращенного методом, указателя <source lang='cpp' inline>const void* ptr</source>, размера <source lang='cpp' inline>size_t cb</source> и указателя на реализацию [[IMemBufInputByteStream]] <source lang='cpp' inline>IMemBufInputByteStream* pAdaptee</source>, над которой задан текущий объект [[MemBufInputByteStreamRef]] <source lang='cpp' inline>MemBufInputByteStreamRef adapter = pAdaptee</source>, так, что <source lang='cpp' inline>pAdaptee->GetPtr(&ptr, &cb)</source> и <source lang='cpp' inline>rng = adapter.GetBuffer()</source>, справледливо следующее: <source lang='cpp' inline>(ptr == &*rng.begin()) && (cb == rng.end() - rng.end()) == true</source>.}}
{{function_return_value|Объект типа [https://www.chusov.org/doxygen/struct_chusov_1_1_memory_1_1iterator__range.html iterator_range], задающий буфер. Гарантируется, что для объекта <tt>rng</tt>, возвращенного методом, указателя <source lang='cpp' inline>const void* ptr</source>, размера <source lang='cpp' inline>size_t cb</source> и указателя на реализацию [[IMemBufInputByteStream]] <source lang='cpp' inline>IMemBufInputByteStream* pAdaptee</source>, над которой задан текущий объект [[MemBufInputByteStreamRef]] <source lang='cpp' inline>MemBufInputByteStreamRef adapter = pAdaptee</source>, так, что <source lang='cpp' inline>pAdaptee->GetPtr(&ptr, &cb)</source> и <source lang='cpp' inline>rng = adapter.GetBuffer()</source>, справледливо следующее: <source lang='cpp' inline>(ptr == &*rng.begin()) && (cb == rng.end() - rng.begin()) == true</source>.}}
{{function_end}}
{{function_end}}

Версия 21:09, 19 апреля 2017

 Chusov::Memory::iterator_range<Chusov::Memory::raw_pointer_iterator<const std::uint8_t*>> GetBuffer() const;

Возвращает диапазон iterator_range в виде пары итераторов с произвольным доступом над буфером памяти, над которым определен входной поток.

Возвращаемое значение:
Объект типа iterator_range, задающий буфер. Гарантируется, что для объекта rng, возвращенного методом, указателя const void* ptr, размера size_t cb и указателя на реализацию IMemBufInputByteStream IMemBufInputByteStream* pAdaptee, над которой задан текущий объект MemBufInputByteStreamRef MemBufInputByteStreamRef adapter = pAdaptee, так, что pAdaptee->GetPtr(&ptr, &cb) и rng = adapter.GetBuffer(), справледливо следующее: (ptr == &*rng.begin()) && (cb == rng.end() - rng.begin()) == true.